:root{color-scheme:light;--p-font: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", sans-serif;--p-text-12: 12px;--p-text-13: 13px;--p-text-14: 14px;--p-text-15: 15px;--p-text-16: 16px;--p-text-18: 18px;--p-text-20: 20px;--p-text-24: 24px;--p-text-28: 28px;--p-weight-regular: 400;--p-weight-medium: 500;--p-weight-strong: 600;--p-weight-bold: 700;--p-radius-s: 6px;--p-radius-m: 10px;--p-radius-l: 14px;--p-radius-pill: 999px;--p-gutter: 20px;--p-column-max: 720px;--p-touch: 44px;--p-bg: #ffffff;--p-surface: #ffffff;--p-subtle: #f3f5f7;--p-subtle-strong: #e8ecf0;--p-ink: #111922;--p-ink-2: #424d58;--p-ink-3: #66717d;--p-line: #e3e7ec;--p-line-strong: #c9d0d7;--p-accent: #1a5fa8;--p-accent-hover: #154e8b;--p-accent-soft: #e8f1fa;--p-on-accent: #ffffff;--p-success: #127a4a;--p-warning: #9a5b00;--p-danger: #b42318;--p-video: #1a5fa8;--p-thumb: #1c252e;--p-thumb-ink: #f2f5f8;--p-focus: #2a7dd6;--p-shadow: 0 1px 2px rgb(17 25 34 / 6%), 0 6px 20px rgb(17 25 34 / 8%);--p-scrim: rgb(17 25 34 / 45%);--p-toast-bg: #17212b;--p-toast-ink: #f4f7fa}@media(prefers-color-scheme:dark){:root{color-scheme:dark;--p-bg: #11171d;--p-surface: #161e26;--p-subtle: #1c252f;--p-subtle-strong: #26313c;--p-ink: #e8edf2;--p-ink-2: #b5c0ca;--p-ink-3: #8d99a5;--p-line: #26313b;--p-line-strong: #3a4753;--p-accent: #6fb2f2;--p-accent-hover: #93c5f6;--p-accent-soft: #1a3550;--p-on-accent: #0c1620;--p-success: #6dd3a0;--p-warning: #f1b85c;--p-danger: #ff8a80;--p-video: #6fb2f2;--p-thumb: #0b1015;--p-thumb-ink: #e8edf2;--p-focus: #8cc3f7;--p-shadow: 0 1px 2px rgb(0 0 0 / 30%), 0 8px 24px rgb(0 0 0 / 35%);--p-scrim: rgb(0 0 0 / 60%);--p-toast-bg: #e8edf2;--p-toast-ink: #11171d}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;color:var(--p-ink);background:var(--p-bg);font-family:var(--p-font);font-size:var(--p-text-15);line-height:1.5;word-break:keep-all;overflow-wrap:anywhere}h1,h2,h3,p,ul,dl,dd{margin:0}h1,h2,h3,.center,.small-print,.state,.transient{text-wrap:balance}ul{padding:0;list-style:none}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--p-focus);outline-offset:2px}svg{flex:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.muted{color:var(--p-ink-3)}.center{text-align:center}.small-print{padding:16px var(--p-gutter) 0;font-size:var(--p-text-13)}.screen{display:flex;min-height:100dvh;max-width:var(--p-column-max);flex-direction:column;margin:0 auto;padding-bottom:env(safe-area-inset-bottom);background:var(--p-bg)}.screen.login,.screen.onboarding{max-width:480px}.screen.has-bottom-tabs{padding-bottom:calc(68px + env(safe-area-inset-bottom))}.brand-bar{display:flex;min-height:56px;align-items:center;justify-content:space-between;gap:12px;padding:10px var(--p-gutter)}.brand{display:inline-flex;align-items:center;gap:6px;color:var(--p-ink-2);font-size:var(--p-text-14)}.brand b{color:var(--p-ink);font-weight:var(--p-weight-bold)}.brand small{margin-left:4px;color:var(--p-ink-3);font-size:var(--p-text-12)}.preview-chip{margin-left:6px;padding:1px 8px;border:1px solid var(--p-line-strong);border-radius:var(--p-radius-pill);color:var(--p-ink-2);font-size:var(--p-text-12);font-style:normal}.page-title{padding:20px var(--p-gutter) 20px;border-bottom:1px solid var(--p-line)}.page-title h1{font-size:var(--p-text-24);font-weight:var(--p-weight-bold);line-height:1.35;letter-spacing:-.02em}.page-title p{margin-top:6px;color:var(--p-ink-3);font-size:var(--p-text-14)}.primary-button,.secondary-button{display:inline-flex;width:100%;min-height:54px;align-items:center;justify-content:center;gap:8px;padding:0 20px;border:0;border-radius:var(--p-radius-l);font-size:var(--p-text-16);font-weight:var(--p-weight-strong);cursor:pointer;transition:background-color .12s ease,transform .12s ease}.primary-button{color:var(--p-on-accent);background:var(--p-accent)}.primary-button:hover:not(:disabled){background:var(--p-accent-hover)}.primary-button:active:not(:disabled){transform:scale(.99)}.primary-button:disabled{opacity:.45;cursor:default}.secondary-button{color:var(--p-ink);background:var(--p-subtle)}.secondary-button:hover{background:var(--p-subtle-strong)}.primary-button svg,.secondary-button svg{width:20px;height:20px}.text-button{min-height:var(--p-touch);padding:0 8px;border:0;color:var(--p-ink-2);background:transparent;font-size:var(--p-text-15);cursor:pointer}.text-button:hover{color:var(--p-accent)}.text-button.small{min-height:36px;font-size:var(--p-text-14)}a.text-button{display:inline-flex;align-items:center;color:var(--p-accent);font-weight:var(--p-weight-medium)}.icon-button{display:inline-grid;width:var(--p-touch);height:var(--p-touch);flex:none;place-items:center;border:0;border-radius:var(--p-radius-m);color:var(--p-ink-3);background:transparent;cursor:pointer}.icon-button:hover{color:var(--p-ink);background:var(--p-subtle)}.icon-button.is-soft{color:var(--p-ink-2);background:var(--p-subtle)}.icon-button.is-soft:hover{background:var(--p-subtle-strong)}.icon-button svg{width:20px;height:20px}.login-form,.onboarding-form{display:flex;flex-direction:column;gap:22px;padding:20px var(--p-gutter) 24px}.login-form h1,.onboarding-form h1{margin-bottom:4px;font-size:var(--p-text-24);font-weight:var(--p-weight-bold);line-height:1.4;letter-spacing:-.02em}.lead{margin-top:-14px;color:var(--p-ink-2);font-size:var(--p-text-15)}.line-field{display:grid;gap:4px}.line-field>label{color:var(--p-ink-3);font-size:var(--p-text-13)}.line-field input,.line-input{width:100%;min-height:52px;padding:0 2px;border:0;border-bottom:1.5px solid var(--p-line-strong);border-radius:0;background:transparent;font-size:var(--p-text-20)}.line-input{display:flex;align-items:center}.line-input input{min-height:50px;flex:1;border:0;outline:none;background:transparent;font-size:var(--p-text-20)}.line-field input:focus,.line-input:focus-within{border-bottom-color:var(--p-accent);outline:none}.line-field input[aria-invalid=true],.line-input:has(input[aria-invalid=true]){border-bottom-color:var(--p-danger)}.line-field small{color:var(--p-ink-3);font-size:var(--p-text-13)}.field-error{color:var(--p-danger)!important}.login-bottom{display:grid;gap:10px}.help-box{padding:14px 16px;border-radius:var(--p-radius-m);color:var(--p-ink-2);background:var(--p-subtle);font-size:var(--p-text-14)}.consent{display:flex;align-items:center;justify-content:space-between;gap:8px}.check-line{display:inline-flex;min-height:var(--p-touch);align-items:center;gap:10px;cursor:pointer}.check-line input{position:absolute;opacity:0}.check-box{display:inline-grid;width:24px;height:24px;place-items:center;border:1.5px solid var(--p-line-strong);border-radius:var(--p-radius-s);color:transparent}.check-box svg{width:16px;height:16px;stroke-width:3}.check-line input:checked+.check-box{border-color:var(--p-accent);color:var(--p-on-accent);background:var(--p-accent)}.check-line input:focus-visible+.check-box{outline:2px solid var(--p-focus);outline-offset:2px}.consent-summary{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 12px;padding:16px;border-radius:var(--p-radius-m);color:var(--p-ink-2);background:var(--p-subtle);font-size:var(--p-text-14)}.consent-summary dt{color:var(--p-ink-3)}.consent-body{max-height:240px;padding:14px 16px;overflow:auto;border:1px solid var(--p-line);border-radius:var(--p-radius-m);color:var(--p-ink-2);font-size:var(--p-text-13);white-space:pre-wrap}.choice-rows>li{border-bottom:1px solid var(--p-line)}.choice-row{display:flex;width:100%;min-height:72px;align-items:center;justify-content:space-between;gap:12px;padding:12px var(--p-gutter);border:0;background:transparent;text-align:left;cursor:pointer}.choice-row:hover{background:var(--p-subtle)}.choice-row>span{display:grid;min-width:0;gap:3px;flex:1}.choice-row strong{font-size:var(--p-text-16);font-weight:var(--p-weight-strong)}.choice-row small{color:var(--p-ink-3);font-size:var(--p-text-13)}.choice-row>svg{width:20px;height:20px;color:var(--p-ink-3)}.choice-row.has-avatar{justify-content:flex-start}.choice-row>.avatar,.avatar{display:grid;width:48px;height:48px;flex:none;place-items:center;border-radius:50%;color:var(--p-accent);background:var(--p-accent-soft);font-weight:var(--p-weight-bold)}.landing{justify-content:center}.landing-body{display:grid;width:100%;max-width:420px;gap:28px;margin:0 auto;padding:56px var(--p-gutter) 40px}.landing-head{display:flex;align-items:center;gap:12px}.landing-head img{flex:none;border-radius:11px}.landing-head h1{color:var(--p-ink-2);font-size:var(--p-text-20);font-weight:var(--p-weight-medium);letter-spacing:-.01em}.landing-head h1 b{color:var(--p-ink);font-weight:var(--p-weight-bold)}.landing-entries{display:grid;gap:10px}.landing-entry{display:flex;min-height:76px;align-items:center;gap:12px;padding:14px 16px 14px 20px;border:1px solid var(--p-line);border-radius:var(--p-radius-l);background:var(--p-surface);transition:border-color .12s ease,background-color .12s ease}.landing-entry:hover{border-color:var(--p-line-strong);background:var(--p-subtle)}.landing-entry:active{background:var(--p-subtle-strong)}.landing-entry>span{display:grid;min-width:0;gap:4px;flex:1}.landing-entry strong{font-size:var(--p-text-18);font-weight:var(--p-weight-bold)}.landing-entry small{color:var(--p-ink-3);font-size:var(--p-text-13)}.landing-entry>svg{width:20px;height:20px;flex:none;color:var(--p-ink-3)}.landing-foot{color:var(--p-ink-3);font-size:var(--p-text-13)}@media(min-height:640px){.landing-body{padding-bottom:12vh}}.course-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px var(--p-gutter) 6px}.course-head small{display:flex;align-items:center;color:var(--p-ink-3);font-size:var(--p-text-12)}.course-head h1{margin-top:2px;font-size:var(--p-text-18);font-weight:var(--p-weight-bold);letter-spacing:-.01em}.top-tabs{position:sticky;z-index:2;top:0;display:flex;overflow-x:auto;border-bottom:1px solid var(--p-line);background:var(--p-bg);scrollbar-width:none}.top-tabs button{display:flex;min-width:56px;min-height:48px;flex:1;justify-content:center;padding:0 10px;border:0;color:var(--p-ink-3);background:transparent;font-size:var(--p-text-15);white-space:nowrap;cursor:pointer}.top-tabs button:hover{color:var(--p-ink)}.top-tabs button[aria-selected=true]{color:var(--p-ink);font-weight:var(--p-weight-bold)}.top-tabs .tab-label{position:relative;display:flex;align-items:center}.top-tabs button[aria-selected=true] .tab-label:after{position:absolute;right:0;bottom:-1px;left:0;height:2px;border-radius:2px;background:var(--p-ink);content:""}.bottom-tabs{position:fixed;z-index:5;right:0;bottom:0;left:0;display:flex;max-width:var(--p-column-max);margin:0 auto;padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--p-line);background:var(--p-bg)}.bottom-tabs button{display:flex;min-height:64px;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:0;color:var(--p-ink-3);background:transparent;font-size:var(--p-text-12);cursor:pointer}.bottom-tabs button svg{width:24px;height:24px}.bottom-tabs button:hover,.bottom-tabs button[aria-selected=true]{color:var(--p-ink)}.bottom-tabs button[aria-selected=true]{font-weight:var(--p-weight-bold)}.child-switch{display:flex;gap:4px;margin:4px var(--p-gutter) 8px;padding:4px;border-radius:var(--p-radius-m);background:var(--p-subtle)}.child-switch button{min-height:40px;flex:1;border:0;border-radius:var(--p-radius-s);color:var(--p-ink-2);background:transparent;font-size:var(--p-text-15);cursor:pointer}.child-switch button:hover{color:var(--p-ink)}.child-switch button[aria-pressed=true]{color:var(--p-ink);background:var(--p-surface);box-shadow:var(--p-shadow);font-weight:var(--p-weight-strong)}.tab-panel{flex:1}.section-head{padding:20px var(--p-gutter) 12px}.section-head h2{font-size:var(--p-text-24);font-weight:var(--p-weight-bold)}.section-head p{margin-top:4px;color:var(--p-ink-3);font-size:var(--p-text-14)}.feed-lesson{padding:22px var(--p-gutter);border-bottom:8px solid var(--p-subtle);outline:none;scroll-margin-top:56px}.feed-lesson.is-focused{background:var(--p-accent-soft)}.feed-date{display:flex;gap:6px;color:var(--p-ink-3);font-size:var(--p-text-13)}.feed-date b{color:var(--p-accent)}.feed-lesson h2{margin:4px 0 10px;font-size:var(--p-text-20);font-weight:var(--p-weight-bold);letter-spacing:-.01em}.kind-tag{margin-right:6px;color:var(--p-accent);font-size:var(--p-text-15)}.feed-cancelled{padding:14px var(--p-gutter);border-bottom:1px solid var(--p-line);color:var(--p-ink-3);font-size:var(--p-text-14)}.file-row{display:flex;width:100%;min-height:60px;align-items:center;gap:8px;padding:0;border:0;background:transparent;text-align:left;cursor:pointer}.file-open{display:flex;min-width:0;min-height:60px;flex:1;align-items:center;gap:12px;border-radius:var(--p-radius-s)}.file-open:hover strong,.file-row.is-video:hover strong{color:var(--p-accent)}.file-row svg,.file-open>svg{width:22px;height:22px;color:var(--p-ink-3)}.file-row.is-video>svg{color:var(--p-video)}.file-row span,.file-open span{display:grid;min-width:0;gap:1px}.file-row strong{font-size:var(--p-text-16);font-weight:var(--p-weight-medium)}.file-row small{color:var(--p-ink-3);font-size:var(--p-text-13)}.file-row.is-video{gap:12px}.homework{margin-top:12px;padding:14px 16px;border-radius:var(--p-radius-m);background:var(--p-subtle)}.homework b{display:block;margin-bottom:4px;color:var(--p-ink-2);font-size:var(--p-text-13)}.homework li{position:relative;padding-left:12px;font-size:var(--p-text-15)}.homework li:before{position:absolute;top:.7em;left:0;width:4px;height:4px;border-radius:50%;background:currentColor;content:""}.report-link{display:block;width:calc(100% - 2 * var(--p-gutter));min-height:var(--p-touch);margin:16px var(--p-gutter) 24px;border:1px dashed var(--p-line-strong);border-radius:var(--p-radius-m);color:var(--p-ink-2);background:transparent;font-size:var(--p-text-14);cursor:pointer}.report-link:hover{border-color:var(--p-accent);color:var(--p-accent)}.video-list{padding-top:16px}.video-row{display:flex;width:100%;min-height:76px;align-items:center;gap:14px;margin-bottom:12px;padding:0 var(--p-gutter);border:0;background:transparent;text-align:left;cursor:pointer}.video-row:hover strong{color:var(--p-accent)}.video-thumb{position:relative;display:block;width:112px;height:64px;flex:none;padding:7px 8px;border-radius:var(--p-radius-s);color:var(--p-thumb-ink);background:var(--p-thumb)}.video-thumb small{font-size:11px;font-weight:var(--p-weight-strong)}.video-thumb i{position:absolute;bottom:8px;left:8px;display:grid;width:26px;height:26px;place-items:center;border-radius:50%;color:var(--p-thumb);background:var(--p-thumb-ink)}.video-thumb i svg{width:12px;height:12px;fill:currentColor}.video-text{display:grid;min-width:0;gap:2px}.video-text strong{font-size:var(--p-text-16);font-weight:var(--p-weight-medium)}.video-text small{color:var(--p-ink-3);font-size:var(--p-text-13)}.notice-list>li{padding:18px var(--p-gutter);border-bottom:1px solid var(--p-line)}.notice-list h3{font-size:var(--p-text-16);font-weight:var(--p-weight-strong)}.notice-list p{margin-top:4px;color:var(--p-ink-2);font-size:var(--p-text-14);white-space:pre-wrap}.notice-list small{display:block;margin-top:6px;color:var(--p-ink-3);font-size:var(--p-text-12)}.syllabus{display:grid;justify-items:center;gap:10px;padding:28px var(--p-gutter);text-align:center}.syllabus-paper{position:relative;display:grid;width:200px;height:270px;align-content:start;gap:9px;padding:24px 18px;border:1px solid var(--p-line);border-radius:var(--p-radius-s);background:var(--p-surface);box-shadow:var(--p-shadow)}.syllabus-paper i{display:block;height:6px;border-radius:3px;background:var(--p-subtle-strong)}.syllabus-paper i:first-child{width:60%;height:9px}.syllabus-paper small{position:absolute;right:12px;bottom:10px;color:var(--p-ink-3);font-size:10px}.syllabus h2{margin-top:10px;font-size:var(--p-text-18);font-weight:var(--p-weight-bold)}.syllabus .primary-button{margin-top:10px}.grade-card{padding:18px var(--p-gutter) 20px;border-bottom:1px solid var(--p-line)}.grade-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.grade-card h3{font-size:var(--p-text-16);font-weight:var(--p-weight-bold)}.grade-card header p{margin-top:2px;color:var(--p-ink-3);font-size:var(--p-text-13)}.grade-score{font-size:var(--p-text-28);font-weight:var(--p-weight-bold);font-variant-numeric:tabular-nums;line-height:1}.grade-score small{margin-left:2px;color:var(--p-ink-3);font-size:var(--p-text-14);font-weight:var(--p-weight-medium)}.grade-track{position:relative;height:4px;margin:22px 6px 26px;border-radius:2px;background:var(--p-subtle-strong)}.grade-average{position:absolute;top:-8px;display:grid;justify-items:center;transform:translate(-50%);color:var(--p-ink-3);font-size:11px}.grade-average i{display:block;width:1.5px;height:18px;margin-bottom:2px;background:var(--p-ink-2)}.grade-mine{position:absolute;top:50%;width:14px;height:14px;border:2px solid var(--p-bg);border-radius:50%;background:var(--p-accent);transform:translate(-50%,-50%)}.grade-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.grade-stats dt{color:var(--p-ink-3);font-size:var(--p-text-12)}.grade-stats dd{font-size:var(--p-text-16);font-weight:var(--p-weight-strong);font-variant-numeric:tabular-nums}.attendance-summary{display:flex;flex-wrap:wrap;gap:6px 18px;padding:16px var(--p-gutter);border-bottom:8px solid var(--p-subtle)}.attendance-summary div{display:flex;align-items:baseline;gap:6px}.attendance-summary dt{color:var(--p-ink-2);font-size:var(--p-text-14)}.attendance-summary dd{font-size:var(--p-text-16);font-weight:var(--p-weight-bold);font-variant-numeric:tabular-nums}.attendance-group{padding:14px var(--p-gutter) 6px}.attendance-group h3{margin-bottom:4px;color:var(--p-ink-2);font-size:var(--p-text-13);font-weight:var(--p-weight-strong)}.attendance-group li{border-bottom:1px solid var(--p-line)}.attendance-row{display:grid;min-height:50px;grid-template-columns:96px minmax(0,1fr) auto;align-items:center;gap:8px;font-variant-numeric:tabular-nums}.attendance-row .muted{font-size:var(--p-text-13)}.attendance-time{font-weight:var(--p-weight-medium)}.attendance-time.is-missed{color:var(--p-danger)}.attendance-status{display:inline-flex;align-items:center;gap:6px;font-size:var(--p-text-14);font-weight:var(--p-weight-medium)}.attendance-status:before{width:6px;height:6px;border-radius:50%;background:currentColor;content:""}.attendance-status.is-present{color:var(--p-success)}.attendance-status.is-late{color:var(--p-warning)}.attendance-status.is-absent{color:var(--p-danger)}.attendance-status.is-video{color:var(--p-video)}.attendance-status.is-neutral{color:var(--p-ink-3)}.clinic-journal{margin:0 0 12px;padding:12px 14px;border-radius:var(--p-radius-m);color:var(--p-ink-2);background:var(--p-subtle);font-size:var(--p-text-14);white-space:pre-wrap}.clinic-journal b{display:block;margin-bottom:2px;color:var(--p-ink-3);font-size:var(--p-text-12)}.notice-doc header{padding:16px var(--p-gutter) 18px;border-bottom:1px solid var(--p-line)}.notice-doc h1{font-size:var(--p-text-24);font-weight:var(--p-weight-bold);letter-spacing:-.02em}.notice-doc header p{margin-top:4px;color:var(--p-ink-2);font-size:var(--p-text-14)}.notice-published{display:flex;align-items:center;gap:6px;color:var(--p-ink-3)!important;font-size:var(--p-text-13)!important}.notice-published span{width:6px;height:6px;border-radius:50%;background:var(--p-success)}.notice-doc section{padding:16px var(--p-gutter);border-bottom:1px solid var(--p-line)}.notice-doc h2{margin-bottom:6px;color:var(--p-ink-3);font-size:var(--p-text-13);font-weight:var(--p-weight-strong)}.notice-doc p{font-size:var(--p-text-15);white-space:pre-wrap}.notice-doc .notice-strong{font-weight:var(--p-weight-strong)}.notice-doc li{position:relative;padding-left:12px}.notice-doc li:before{position:absolute;top:.7em;left:0;width:4px;height:4px;border-radius:50%;background:currentColor;content:""}.notice-comment{padding:16px 18px;border-radius:var(--p-radius-l);background:var(--p-accent-soft);line-height:1.7}.notice-others{padding:18px 0 0}.notice-others h2{padding:0 var(--p-gutter) 4px;color:var(--p-ink-3);font-size:var(--p-text-13)}.notice-others li{border-bottom:1px solid var(--p-line)}.notice-others .choice-row{min-height:56px}.screen>.secondary-button{width:calc(100% - 2 * var(--p-gutter));margin:20px var(--p-gutter)}.state{display:grid;justify-items:center;gap:8px;padding:64px var(--p-gutter);color:var(--p-ink-2);text-align:center}.state>svg{width:30px;height:30px;color:var(--p-ink-3);stroke-width:1.6}.state strong{color:var(--p-ink);font-size:var(--p-text-16);font-weight:var(--p-weight-bold)}.state p{color:var(--p-ink-2);font-size:var(--p-text-14)}.state-spinner{width:26px;height:26px;border:3px solid var(--p-subtle-strong);border-top-color:var(--p-accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.sheet{width:100%;max-width:var(--p-column-max);max-height:90dvh;margin:auto auto 0;padding:0;border:0;border-radius:18px 18px 0 0;color:var(--p-ink);background:var(--p-surface)}.sheet::backdrop{background:var(--p-scrim)}.sheet form{display:grid;gap:16px;padding:8px var(--p-gutter) calc(20px + env(safe-area-inset-bottom))}.sheet header{display:flex;align-items:center;justify-content:space-between}.sheet h2{font-size:var(--p-text-18);font-weight:var(--p-weight-bold)}.choice-list{display:grid;gap:6px;margin:0;padding:0;border:0}.choice{display:flex;min-height:48px;align-items:center;gap:10px;padding:0 14px;border:1px solid var(--p-line);border-radius:var(--p-radius-m);cursor:pointer}.choice:hover{border-color:var(--p-line-strong)}.choice:has(input:checked){border-color:var(--p-accent);background:var(--p-accent-soft)}.choice input{width:18px;height:18px;margin:0;accent-color:var(--p-accent)}.box-field{display:grid;gap:6px}.box-field span{color:var(--p-ink-3);font-size:var(--p-text-13)}.box-field select,.box-field textarea{width:100%;min-height:48px;padding:10px 12px;border:1px solid var(--p-line-strong);border-radius:var(--p-radius-m);background:var(--p-surface);font-size:var(--p-text-15)}.box-field textarea{resize:vertical}.transient{position:fixed;inset:50% auto auto 50%;width:max-content;max-width:min(var(--p-column-max),calc(100vw - 2 * var(--p-gutter)));margin:0;padding:14px 20px;border:0;border-radius:var(--p-radius-l);color:var(--p-toast-ink);background:var(--p-toast-bg);box-shadow:var(--p-shadow);font-size:var(--p-text-15);text-align:center;transform:translate(-50%,-50%);animation:toast-in .18s ease-out both}.transient.is-error{font-weight:var(--p-weight-medium)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,-46%)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
