.ip-page{padding:120px 0 96px}.ip-page.ip-narrow .gt-wrap{max-width:760px}.ip-kicker{display:inline-flex;gap:8px;align-items:center;font-size:14px;color:var(--color-ink-3);margin:0 0 14px}.ip-title{font-family:var(--font-display);font-weight:700;letter-spacing:-.02em;font-size:clamp(2.1rem,1.4rem + 2.4vw,3.2rem);line-height:1.05;margin:0 0 14px;color:var(--color-ink)}.ip-lede{font-size:18px;line-height:1.55;color:var(--color-ink-2);max-width:38em;margin:0 0 32px}.ip-grid{display:grid;gap:24px}@media (min-width:1000px){.ip-grid.two{grid-template-columns:1.35fr 1fr;align-items:start}}.ip-card{background:var(--gt-white,#fff);border-radius:var(--gt-r,24px);box-shadow:0 0 0 1px var(--color-rule),var(--gt-sh,0 18px 40px -24px rgb(95 73 183/.35));padding:28px}.ip-card h2{font-family:var(--font-display);font-weight:700;letter-spacing:-.02em;font-size:1.6rem;margin:0 0 6px;color:var(--color-ink)}.ip-card h3{font-size:1.05rem;margin:22px 0 8px;color:var(--color-ink)}.ip-card>p,.ip-help{color:var(--color-ink-3);font-size:15px;line-height:1.5;margin:0 0 18px}.ip-step{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:999px;background:var(--color-pen-soft);color:var(--color-pen);font-weight:700;font-size:14px;margin-right:10px}.ip-field{display:grid;gap:6px;margin:0 0 16px}.ip-field label,.ip-legend{font-weight:600;font-size:15px;color:var(--color-ink)}.ip-field .ip-hint{font-size:13px;color:var(--color-ink-3)}.ip-input,.ip-select,.ip-textarea{font:inherit;font-size:16px;color:var(--color-ink);background:var(--color-paper);border:1px solid var(--color-rule);border-radius:14px;padding:12px 14px;width:100%;box-sizing:border-box}.ip-textarea{min-height:110px;resize:vertical;line-height:1.5}.ip-check input:focus-visible,.ip-input:focus-visible,.ip-select:focus-visible,.ip-textarea:focus-visible{outline:3px solid var(--color-pen);outline-offset:2px}.ip-row{display:grid;gap:10px;grid-template-columns:1fr}@media (min-width:640px){.ip-row{grid-template-columns:1fr 1.6fr}.ip-row.three{grid-template-columns:1.2fr 1fr 1fr}}.ip-fieldset{border:0;padding:0;margin:0 0 8px}.ip-check{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:14px;background:var(--color-paper-2);margin:0 0 10px;font-size:15px;line-height:1.45}.ip-check input{width:22px;height:22px;margin:1px 0 0;accent-color:var(--color-pen);flex:none}.ip-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:8px}.ip-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 22px;border-radius:999px;border:0;font:inherit;font-weight:600;cursor:pointer;text-decoration:none;background:var(--color-pen);color:var(--color-paper)}.ip-btn:hover{background:var(--color-pen-hover,var(--color-pen))}.ip-btn.sec{background:transparent;color:var(--color-ink);box-shadow:0 0 0 1px var(--color-rule)}.ip-btn.small{min-height:40px;padding:0 16px;font-size:14px}.ip-btn.danger{background:transparent;color:#a4262c;box-shadow:0 0 0 1px #e7c3c5}.ip-btn:focus-visible{outline:3px solid var(--color-pen);outline-offset:2px}.ip-note{border-radius:16px;padding:14px 18px;margin:0 0 24px;font-size:15px;line-height:1.5;background:var(--color-pen-soft);color:var(--color-ink)}.ip-note.ok{background:var(--color-mint-soft,#e3f5ea)}.ip-note.warn{background:var(--color-apr-soft)}.ip-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.ip-list li{display:flex;gap:14px;justify-content:space-between;align-items:center;padding:14px 16px;border-radius:14px;background:var(--color-paper);box-shadow:0 0 0 1px var(--color-rule)}.ip-list .ip-meta{font-size:13px;color:var(--color-ink-3)}.ip-chip{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:0 12px;border-radius:999px;font-size:13px;font-weight:600;background:var(--color-pen-soft);color:var(--color-pen)}.ip-chip.apr{background:var(--color-apr-soft);color:var(--color-apr-deep)}.ip-chip.ok{background:var(--color-mint-soft,#e3f5ea);color:var(--color-mint-ink,#1d6b43)}.ip-chip.grey{color:var(--color-ink-3)}.ip-chip.grey,.ip-photo{background:var(--color-paper-2)}.ip-photo{border-radius:18px;overflow:hidden;margin:0 0 12px}.ip-photo img{display:block;width:100%;height:auto}.ip-honey{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.ip-diff{width:100%;border-collapse:collapse;font-size:14px}.ip-diff td,.ip-diff th{text-align:left;vertical-align:top;padding:10px;border-bottom:1px solid var(--color-rule);white-space:pre-wrap}.ip-diff del{background:#fde7e7;text-decoration:none}.ip-diff ins{background:#e3f5ea;text-decoration:none}.ip-sidebar{position:sticky;top:96px}.ip-school-result{display:flex;justify-content:space-between;gap:16px;align-items:center}.ip-mailbox{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:15px;background:var(--color-paper-2);padding:2px 8px;border-radius:8px}.ip-public{margin:40px 0}.ip-public .ip-card{padding:0;overflow:hidden}.ip-public-grid{display:grid}@media (min-width:900px){.ip-public-grid.has-photo{grid-template-columns:1.1fr 1fr}}.ip-public-photo{position:relative;margin:0;background:var(--color-paper-2)}.ip-public-photo img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:4/3}.ip-public-photo figcaption{position:absolute;left:12px;bottom:12px;font-size:12px;padding:4px 10px;border-radius:999px;background:rgb(31 27 51/.62);color:#fff}.ip-public-body{padding:28px}.ip-badge{display:inline-flex;align-items:center;gap:8px;min-height:32px;padding:0 14px;border-radius:999px;background:var(--color-mint-soft,#e3f5ea);color:var(--color-mint-ink,#1d6b43);font-size:14px;font-weight:600}.ip-badge svg{width:16px;height:16px}.ip-facts{display:grid;gap:14px;margin:18px 0 0}.ip-facts dt{font-weight:600;font-size:14px;color:var(--color-ink)}.ip-facts dd{margin:2px 0 0;color:var(--color-ink-2);line-height:1.5;white-space:pre-line}.ip-events{list-style:none;margin:0;padding:0;display:grid;gap:12px}.ip-event{display:grid;grid-template-columns:64px 1fr;gap:14px;align-items:start}.ip-date{text-align:center;border-radius:14px;background:var(--color-apr-soft);color:var(--color-apr-deep);padding:8px 0;line-height:1.1}.ip-date b{display:block;font-family:var(--font-figure,var(--font-display));font-size:24px;font-weight:400}.ip-date span{font-size:12px;text-transform:uppercase;letter-spacing:.04em}.ip-event h4{margin:0 0 4px;font-size:16px}.ip-event p{margin:0;color:var(--color-ink-2);font-size:15px;line-height:1.5;white-space:pre-line}.ip-suggest{font-size:14px;color:var(--color-ink-3);margin-top:18px}.ip-suggest a{color:var(--color-pen)}@media (max-width:640px){.ip-page{padding:96px 0 72px}.ip-card,.ip-public-body{padding:20px}.ip-list li{flex-direction:column;align-items:stretch}}