@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Outfit:wght@400;500;600;700;800&display=swap";
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-canvas:#fcfbf9;--color-surface:#fff;--color-surface-subtle:#f8f6f0;--color-ink:#1b1e25;--color-muted:#5e6675;--color-line:#e6e2d9;--color-mint:#e5f5ee;--color-mint-strong:#307e59;--color-sky:#e2ecf8;--color-sky-strong:#305e91;--color-peach:#f8e6dd;--color-peach-strong:#995333;--color-lavender:#ede8f7;--color-lavender-strong:#6244a7;--color-danger:#f9e2e5;--color-danger-strong:#a13644;--shadow-soft:0 12px 30px -10px #322d230d, 0 2px 8px -2px #322d2305;--shadow-premium:0 20px 48px -12px #1b1e2514, 0 4px 16px -4px #1b1e2508;--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--focus-ring:0 0 0 3px #1b1e2514;--font-display:"Outfit", "Pretendard", sans-serif;--font-body:"Inter", "Pretendard", sans-serif}body{background:radial-gradient(at 0% 0%, #d9f3e766 0px, transparent 50%), radial-gradient(at 100% 100%, #ffe1d266 0px, transparent 50%), var(--color-canvas);color:var(--color-ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;min-height:100vh;margin:0;font-size:.95rem;line-height:1.6}*{box-sizing:border-box}button,input,textarea,select{font-family:inherit;font-size:inherit}button{cursor:pointer;background:0 0;border:none}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none;transition:color .2s}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.home-page{width:min(1180px,100% - 48px);margin:0 auto;padding:56px 0 96px}.home-page__summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:36px;display:grid}.home-page__worklist{margin-top:36px}.page-header{border-bottom:1px solid #e6e2d999;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px;padding:48px 0 16px;display:flex}.page-header__copy{max-width:800px}.page-header__eyebrow{color:var(--color-mint-strong);font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px;font-size:.8rem;font-weight:800}.page-header__title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-ink);margin:0;font-size:clamp(2rem,3.5vw,3.25rem);font-weight:700;line-height:1.1}.page-header__description{color:var(--color-muted);margin:12px 0 0;font-size:1rem;line-height:1.6}.page-header__actions{flex-wrap:wrap;justify-content:flex-end;gap:12px;display:flex}.summary-panel{border:1px solid var(--color-line);border-radius:var(--radius-md);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-height:160px;box-shadow:var(--shadow-soft);background:#ffffffb3;padding:24px;transition:transform .2s,box-shadow .2s}.summary-panel:hover{box-shadow:var(--shadow-premium);transform:translateY(-2px)}.summary-panel h2{font-family:var(--font-display);margin:24px 0 8px;font-size:1.15rem;font-weight:600}.summary-panel p{color:var(--color-muted);margin:0;font-size:.9rem;line-height:1.55}.summary-panel--mint{background:linear-gradient(135deg,#d9f3e780,#ffffffb3 60%);border-color:#d9f3e7cc}.summary-panel--sky{background:linear-gradient(135deg,#ddecff80,#ffffffb3 60%);border-color:#ddecffcc}.summary-panel--peach{background:linear-gradient(135deg,#ffe1d280,#ffffffb3 60%);border-color:#ffe1d2cc}.section-title{font-family:var(--font-display);margin:0;font-size:1.25rem;font-weight:600}.section-description{color:var(--color-muted);margin:6px 0 0;font-size:.9rem}.ui-button{border-radius:var(--radius-sm);-webkit-user-select:none;user-select:none;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;font-size:.9rem;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.ui-button:hover{transform:translateY(-1px)}.ui-button:active{transform:translateY(0)}.ui-button:focus-visible,.field__control:focus-visible{box-shadow:var(--focus-ring);outline:none}.ui-button:disabled{opacity:.45;transform:none}.ui-button--md{height:40px;padding:0 18px}.ui-button--sm{height:32px;padding:0 12px;font-size:.85rem}.ui-button--icon{width:36px;height:36px;padding:0}.ui-button--primary{background:var(--color-ink);color:#fff;box-shadow:0 4px 12px #1b1e2526}.ui-button--primary:hover{background:#2b313e;box-shadow:0 6px 16px #1b1e2540}.ui-button--secondary{border-color:var(--color-line);color:var(--color-ink);background:#fffc;box-shadow:0 1px 3px #00000005}.ui-button--secondary:hover{background:#fbfbf9;border-color:#cac5b9}.ui-button--ghost{color:var(--color-ink);background:0 0}.ui-button--ghost:hover{background:#1b1e250a}.ui-button--danger{background:var(--color-danger);color:var(--color-danger-strong);border-color:#ffe0e066}.ui-button--danger:hover{background:#ffd2d2}.ui-button__icon{align-items:center;display:inline-flex}.field{gap:6px;display:grid}.field__label{color:var(--color-ink);font-size:.85rem;font-weight:600}.field__control{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-surface);width:100%;height:40px;color:var(--color-ink);padding:0 14px;transition:border-color .2s,box-shadow .2s}.field__control:focus{box-shadow:var(--focus-ring);border-color:#9c9587;outline:none}.field__control--textarea{resize:vertical;height:auto;min-height:100px;padding:12px 14px}.field__control--compact{height:32px;min-height:32px;padding:0 10px;font-size:.85rem}.field__control[aria-invalid=true]{border-color:var(--color-danger-strong)}.field__error{color:var(--color-danger-strong);font-size:.8rem;font-weight:500}.badge{width:fit-content;height:22px;font-family:var(--font-display);letter-spacing:.02em;text-transform:uppercase;border-radius:9999px;justify-content:center;align-items:center;padding:0 10px;font-size:.72rem;font-weight:700;display:inline-flex}.badge--neutral{background:var(--color-surface-subtle);color:var(--color-muted)}.badge--mint{background:var(--color-mint);color:var(--color-mint-strong)}.badge--sky{background:var(--color-sky);color:var(--color-sky-strong)}.badge--peach{background:var(--color-peach);color:var(--color-peach-strong)}.badge--lavender{background:var(--color-lavender);color:var(--color-lavender-strong)}.badge--danger{background:var(--color-danger);color:var(--color-danger-strong)}.toolbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.filter-toolbar{justify-content:flex-start;align-items:flex-end}.filter-toolbar .field{min-width:min(240px,100%)}.question-bank-toolbar{justify-content:space-between;align-items:flex-end}.question-bank-toolbar__actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.table-frame{border:1px solid var(--color-line);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);background:#fffc;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;min-width:720px}.data-table th,.data-table td{text-align:left;vertical-align:middle;border-bottom:1px solid #e6e2d980;padding:14px 18px}.data-table th{color:var(--color-muted);font-family:var(--font-display);letter-spacing:.05em;text-transform:uppercase;background:#fbfbf9;font-size:.78rem;font-weight:700}.data-table tr:hover td{background:#1b1e2503}.data-table tr:last-child td{border-bottom:0}.table-muted-text{color:var(--color-muted);font-size:.88rem}.state-block{border:1.5px dashed var(--color-line);border-radius:var(--radius-md);background:#ffffff80;align-items:center;gap:16px;margin-top:24px;padding:24px;transition:all .2s;display:flex}.state-block--loading{color:var(--color-muted);border-style:solid;justify-content:center}.state-block--error{background:#ffe0e040;border-color:#b94d554d}.state-block__icon{color:var(--color-muted);flex:none}.state-block__icon--spin{animation:1s linear infinite spin}.state-block__title{font-family:var(--font-display);margin:0;font-size:1.05rem;font-weight:600}.state-block__description{color:var(--color-muted);margin:6px 0 0;font-size:.88rem;line-height:1.5}.auth-shell{place-items:center stretch;width:min(440px,100% - 40px);min-height:100vh;margin:0 auto;padding:40px 0;display:grid}.auth-shell__panel{border:1px solid var(--color-line);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:var(--shadow-premium);background:#ffffffd9;padding:36px}.auth-panel-copy{margin-bottom:24px}.auth-panel-copy__eyebrow{color:var(--color-mint-strong);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.05em;margin:0 0 6px;font-size:.8rem;font-weight:800}.auth-panel-copy h2{font-family:var(--font-display);margin:0;font-size:1.4rem;font-weight:700}.auth-panel-copy p{color:var(--color-muted);margin:8px 0 0;font-size:.9rem;line-height:1.5}.auth-form,.auth-form__section{gap:16px;display:grid}.auth-mode-tabs{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:#ffffff9e;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;display:grid}.auth-mode-tabs__button{border-radius:calc(var(--radius-sm) - 4px);min-width:0;height:36px;color:var(--color-muted);font-family:var(--font-display);background:0 0;border:0;font-size:.9rem;font-weight:700}.auth-mode-tabs__button[aria-pressed=true]{background:var(--color-ink);color:#fff;box-shadow:0 3px 10px #1b1e251f}.auth-dialog__overlay{z-index:50;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#1b1e256b;position:fixed;inset:0}.auth-dialog__content{z-index:51;border:1px solid var(--color-line);border-radius:var(--radius-lg);width:min(380px,100% - 40px);box-shadow:var(--shadow-premium);background:#fffffff5;gap:16px;padding:28px;display:grid;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.auth-dialog__icon{border-radius:var(--radius-sm);width:52px;height:52px;color:var(--color-mint-strong);background:#e2faefe6;place-items:center;display:inline-grid}.auth-dialog__title{font-family:var(--font-display);color:var(--color-ink);margin:0;font-size:1.2rem;font-weight:800}.auth-dialog__description{color:var(--color-muted);overflow-wrap:anywhere;margin:0;font-size:.92rem;line-height:1.6}.workspace-dialog__overlay{z-index:50;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#1b1e256b;position:fixed;inset:0}.workspace-dialog__content{z-index:51;border:1px solid var(--color-line);border-radius:var(--radius-lg);width:min(860px,100% - 40px);max-height:min(86vh,880px);box-shadow:var(--shadow-premium);background:#fffffff7;gap:18px;padding:24px;display:grid;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}.workspace-dialog__content--compact{width:min(480px,100% - 40px)}.workspace-dialog__content--wide{width:min(1080px,100% - 40px)}.workspace-dialog__header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.workspace-dialog__title{color:var(--color-ink);font-family:var(--font-display);margin:0;font-size:1.25rem;font-weight:800}.workspace-dialog__description{color:var(--color-muted);margin:6px 0 0;font-size:.9rem;line-height:1.5}.workspace-dialog__content .workspace-card{box-shadow:none;background:0 0;border:0;padding:0}.centered-page{place-items:center;min-height:100vh;padding:24px;display:grid}.role-entry-page{width:min(1040px,100% - 40px);min-height:100vh;margin:0 auto;padding:56px 0 96px}.app-shell{grid-template-columns:240px minmax(0,1fr);min-height:100vh;display:grid}.app-shell__sidebar{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);z-index:10;background:#ffffffa6;border-right:1px solid #e6e2d9cc;height:100vh;padding:28px 18px;position:sticky;top:0}.app-shell__brand{align-items:center;gap:12px;margin-bottom:12px;padding:8px 8px 24px;display:flex}.app-shell__brand-mark{border-radius:var(--radius-sm);background:var(--color-ink);color:#fff;width:36px;height:36px;font-family:var(--font-display);place-items:center;font-size:1.25rem;font-weight:900;display:inline-grid}.app-shell__brand strong{font-family:var(--font-display);color:var(--color-ink);font-size:1rem;font-weight:700;display:block}.app-shell__brand small{color:var(--color-muted);margin-top:1px;font-size:.72rem;font-weight:500;display:block}.app-shell__nav{gap:4px;max-height:calc(100vh - 120px);padding-right:4px;display:grid;overflow-y:auto}.app-shell__nav::-webkit-scrollbar{width:4px}.app-shell__nav::-webkit-scrollbar-thumb{background:#1b1e2514;border-radius:99px}.app-shell__nav-link{border-radius:var(--radius-sm);height:38px;color:var(--color-muted);align-items:center;gap:12px;padding:0 12px;font-size:.9rem;font-weight:500;transition:all .2s;display:flex}.app-shell__nav-link:hover{color:var(--color-ink);background:#1b1e2508}.app-shell__nav-link.is-active{background:var(--color-mint);color:var(--color-mint-strong);font-weight:600}.app-shell__body{flex-direction:column;min-width:0;display:flex}.app-shell__topbar{z-index:5;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fcfbf9cc;border-bottom:1px solid #e6e2d999;justify-content:space-between;align-items:center;gap:18px;height:72px;padding:0 36px;display:flex;position:sticky;top:0}.app-shell__topbar-title{color:var(--color-muted);margin:4px 0 0;font-size:.85rem}.app-shell__account{align-items:center;gap:12px;display:flex}.app-shell__avatar{background:var(--color-sky);width:32px;height:32px;color:var(--color-sky-strong);font-family:var(--font-display);border-radius:50%;place-items:center;font-size:.9rem;font-weight:700;display:inline-grid}.app-shell__email{max-width:200px;color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;overflow:hidden}.app-shell__content{flex:1;width:min(1180px,100% - 72px);margin:0 auto;padding:40px 0 96px}.context-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0;display:grid}.context-metric{border:1px solid var(--color-line);border-radius:var(--radius-md);height:80px;box-shadow:var(--shadow-soft);justify-content:space-between;align-items:center;padding:16px 20px;transition:transform .2s;display:flex}.context-metric span{color:var(--color-muted);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.02em;font-size:.82rem;font-weight:700}.context-metric strong{font-family:var(--font-display);font-size:1.8rem;font-weight:800;line-height:1}.context-metric--mint{background:linear-gradient(135deg, var(--color-mint), #fff9 80%);border-color:#d9f3e7b3}.context-metric--sky{background:linear-gradient(135deg, var(--color-sky), #fff9 80%);border-color:#ddecffb3}.context-metric--peach{background:linear-gradient(135deg, var(--color-peach), #fff9 80%);border-color:#ffe1d2b3}.workspace-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px;display:grid}.workspace-card,.context-panel{border:1px solid var(--color-line);border-radius:var(--radius-md);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-soft);background:#ffffffbf;gap:20px;padding:24px;display:grid}.workspace-card--wide{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;margin-top:20px}.workspace-card--link{color:inherit;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;transition:transform .2s,box-shadow .2s}.workspace-card--link:hover{box-shadow:var(--shadow-premium);background:#ffffffd9;transform:translateY(-2px)}.workspace-card__icon{border-radius:var(--radius-sm);place-items:center;width:44px;height:44px;display:inline-grid}.workspace-card__icon--mint{background:var(--color-mint);color:var(--color-mint-strong)}.workspace-card__icon--sky{background:var(--color-sky);color:var(--color-sky-strong)}.workspace-card__icon--peach{background:var(--color-peach);color:var(--color-peach-strong)}.workspace-card__copy h2,.context-panel__header h2{font-family:var(--font-display);letter-spacing:-.01em;margin:0;font-size:1.15rem;font-weight:600}.workspace-card__copy p{color:var(--color-muted);margin:6px 0 0;font-size:.9rem;line-height:1.55}.workspace-card__copy small{color:var(--color-muted);margin-top:10px;font-size:.78rem;font-weight:700;display:block}.workspace-card__actions{justify-content:flex-end;display:flex}.student-provider-summary{gap:10px;margin-top:14px;display:grid}.student-provider-summary__item{border-radius:var(--radius-sm);background:#ffffff9e;border:1px solid #e6e2d9b3;gap:4px;padding:14px 16px;display:grid}.student-provider-summary__item strong{overflow-wrap:anywhere;font-size:.95rem;line-height:1.25}.released-grading-view{gap:18px;display:grid}.released-solution{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:#f8f6f06b;gap:14px;padding:16px;display:grid}.released-solution__summary,.released-solution__reference{gap:6px;display:grid}.released-solution__summary{border-radius:var(--radius-sm);background:#ffffffa8;border:1px solid #e6e2d9d9;padding:12px 14px}.released-solution__summary p,.released-solution__reference p{color:var(--color-text);margin:0;font-size:.88rem;line-height:1.5}.context-panel__header{justify-content:space-between;align-items:center;gap:14px;display:flex}.text-link{color:var(--color-mint-strong);align-items:center;gap:4px;font-size:.85rem;font-weight:600;display:inline-flex}.text-link:hover{text-decoration:underline}.compact-list,.context-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.compact-list li,.context-list__item{border-radius:var(--radius-sm);background:#fff9;border:1px solid #e6e2d9b3;justify-content:space-between;align-items:center;gap:14px;height:52px;padding:0 16px;transition:background .2s,border-color .2s;display:flex}.compact-list li:hover,.context-list__item:hover{background:#ffffffe6;border-color:#cac5b9}.compact-list strong,.compact-list small,.context-list__item strong,.context-list__item small{line-height:1.2;display:block}.compact-list strong,.context-list__item strong{font-size:.92rem}.compact-list small,.context-list__item small{color:var(--color-muted);margin-top:3px;font-size:.78rem}.security-note{border-radius:var(--radius-md);color:var(--color-mint-strong);background:#d9f3e759;border:1px solid #4a9b7833;align-items:center;gap:10px;margin-top:24px;padding:12px 16px;display:flex}.security-note p{color:var(--color-ink);margin:0;font-size:.85rem}.management-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:24px;margin-top:24px;display:grid}.question-bank-main{min-width:0}.inline-form{gap:14px;display:grid}.inline-form--two{grid-template-columns:1fr 1fr}.inline-form--two button{grid-column:1/-1}.inline-form--two .field:has(textarea){grid-column:1/-1}.table-action-row{align-items:center;gap:8px;display:flex}.grading-action-stack{gap:8px;min-width:230px;display:grid}.grading-question-cell{gap:8px;min-width:220px;display:grid}.grading-question-detail{border-radius:var(--radius-sm);background:#ffffffad;border:1px solid #e6e2d9d9;gap:8px;max-width:460px;padding:12px;display:grid}.grading-question-detail p{color:var(--color-text);margin:0;font-size:.88rem;line-height:1.5}.grading-choice-list{flex-wrap:wrap;gap:6px;display:flex}.grading-choice{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:#f8f6f0b3;align-items:center;gap:6px;min-height:30px;padding:5px 9px;font-size:.82rem;display:inline-flex}.grading-choice--correct{background:var(--color-mint);color:var(--color-mint-strong);border-color:#44846f59;font-weight:700}.grading-choice small{color:inherit;font-size:.7rem;font-weight:800}.grading-action-row{grid-template-columns:minmax(110px,1fr) 88px;gap:8px;display:grid}.grading-action-row__score{min-width:88px}.grading-action-stack__textarea{min-width:240px;min-height:72px;padding:10px;font-size:.88rem}.section-divider{background:var(--color-line);height:1px}.invitation-create{gap:14px;display:grid}.invitation-result{border-radius:var(--radius-md);background:#d9f3e740;border:1px solid #4a9b7833;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:14px;display:grid}.invitation-result p{color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;margin:6px 0 0;font-size:.82rem;overflow:hidden}.invitation-accept-card{gap:20px;display:grid}.invitation-accept-card__header{flex-wrap:wrap;gap:8px;display:flex}.invitation-accept-card h2{font-family:var(--font-display);letter-spacing:-.01em;margin:0;font-size:1.4rem;font-weight:700}.detail-list{gap:8px;margin:0;display:grid}.detail-list div{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:#ffffff80;gap:4px;padding:12px 14px;display:grid}.detail-list dt{color:var(--color-muted);font-family:var(--font-display);text-transform:uppercase;font-size:.76rem;font-weight:700}.detail-list dd{overflow-wrap:anywhere;margin:0;font-size:.9rem;font-weight:500}.authoring-panel{gap:24px;display:grid}.choice-builder{gap:10px;display:grid}.choice-builder__header{justify-content:space-between;align-items:center;gap:12px;display:flex}.choice-list{gap:10px;display:grid}.choice-row{grid-template-columns:32px minmax(0,1fr) auto 36px;align-items:start;gap:10px;display:grid}.choice-row__marker{border:1px solid var(--color-line);border-radius:var(--radius-sm);width:32px;height:40px;color:var(--color-muted);font-family:var(--font-display);background:#ffffff8c;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;display:inline-flex}.choice-row__answer{cursor:pointer;align-items:center;min-height:40px;display:inline-flex}.choice-row__answer input{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.choice-row__answer span{border:1px solid var(--color-line);border-radius:var(--radius-sm);height:32px;color:var(--color-muted);background:#ffffff73;align-items:center;gap:6px;padding:0 10px;font-size:.82rem;font-weight:700;transition:border-color .2s,background .2s,color .2s;display:inline-flex}.choice-row__answer input:checked+span{color:#2f7458;background:#d9f3e7b8;border-color:#4a9b7859}.choice-row__answer input:focus-visible+span{box-shadow:var(--focus-ring);outline:none}.category-picker{gap:8px;display:grid}.category-overview{border-top:1px solid var(--color-line);gap:10px;padding-top:14px;display:grid}.category-overview__header{justify-content:space-between;align-items:center;gap:12px;display:flex}.category-overview__list{gap:8px;display:grid}.category-overview__item{border:1px solid var(--color-line);border-radius:var(--radius-sm);min-height:36px;color:var(--color-ink);background:#ffffff73;align-items:center;padding:0 12px;font-size:.88rem;font-weight:600;display:flex}.category-overview__empty{color:var(--color-muted);margin:0;font-size:.85rem}.category-picker__list,.question-category-list{flex-wrap:wrap;gap:6px;display:flex}.category-chip{cursor:pointer}.category-chip input{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.category-chip span{border:1px solid var(--color-line);border-radius:var(--radius-sm);min-height:32px;color:var(--color-muted);background:#ffffff73;align-items:center;padding:0 10px;font-size:.82rem;font-weight:700;transition:border-color .2s,background .2s,color .2s;display:inline-flex}.category-chip input:checked+span{color:#375f88;background:#ddecffb8;border-color:#4f7fae59}.category-chip input:focus-visible+span{box-shadow:var(--focus-ring);outline:none}.question-title-cell{gap:8px;display:grid}.homework-list-toolbar{border:1px solid var(--color-line);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);background:#ffffffad;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding:18px 20px;display:flex}.homework-list-toolbar h2{font-family:var(--font-display);margin:8px 0 0;font-size:1.12rem;font-weight:700}.homework-list-toolbar p{color:var(--color-muted);margin:4px 0 0;font-size:.88rem}.homework-create-form{gap:22px;display:grid}.homework-create-form__section{border:1px solid var(--color-line);border-radius:var(--radius-md);background:#f8f6f08c;gap:14px;padding:18px;display:grid}.homework-create-form__section-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.homework-create-form__section-header h3{font-family:var(--font-display);margin:0;font-size:1rem;font-weight:700}.homework-create-form__empty{color:var(--color-muted);margin:0;padding:14px;font-size:.88rem}.homework-create-form__actions{justify-content:flex-end;display:flex}.homework-question-picker__filters{grid-template-columns:minmax(0,1fr) minmax(180px,260px);gap:12px;display:grid}.homework-question-picker{grid-template-columns:minmax(0,1fr) minmax(320px,.74fr);align-items:start;gap:14px;display:grid}.homework-question-picker__list,.homework-question-picker__selected{border:1px solid var(--color-line);border-radius:var(--radius-md);background:#ffffffb8;gap:10px;max-height:360px;padding:10px;display:grid;overflow:auto}.homework-question-option{border-radius:var(--radius-sm);width:100%;min-height:58px;color:var(--color-ink);text-align:left;background:#ffffffb3;border:1px solid #e6e2d9e6;grid-template-columns:minmax(0,1fr) minmax(140px,auto) 28px;align-items:center;gap:12px;padding:10px 12px;display:grid}.homework-question-option:hover:not(:disabled){background:#ddecff4d;border-color:#4f7fae59}.homework-question-option:disabled{color:var(--color-muted);cursor:default;opacity:.72}.homework-question-option strong,.selected-homework-question strong,.assignment-target-option strong{overflow-wrap:anywhere;font-size:.9rem;line-height:1.25;display:block}.homework-question-option small,.selected-homework-question small,.assignment-target-option small{color:var(--color-muted);margin-top:3px;font-size:.78rem;line-height:1.25;display:block}.selected-homework-question{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:#ffffffb3;grid-template-columns:32px minmax(0,1fr) 92px 36px;align-items:center;gap:10px;padding:10px;display:grid}.selected-homework-question .field{gap:4px}.selected-homework-question .field__label{font-size:.68rem}.selected-homework-question__order{border-radius:var(--radius-sm);background:var(--color-sky);width:32px;height:32px;color:var(--color-sky-strong);font-family:var(--font-display);justify-content:center;align-items:center;font-size:.82rem;font-weight:800;display:inline-flex}.segmented-control{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:#ffffff9e;grid-template-columns:repeat(2,1fr);width:min(280px,100%);padding:4px;display:inline-grid}.segmented-control button{min-height:34px;color:var(--color-muted);border-radius:6px;font-weight:700}.segmented-control button[aria-selected=true]{background:var(--color-mint);color:var(--color-mint-strong)}.assignment-target-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.assignment-target-option{border:1px solid var(--color-line);border-radius:var(--radius-sm);cursor:pointer;background:#ffffff94;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:10px;min-height:56px;padding:12px;display:grid}.assignment-target-option input{accent-color:var(--color-mint-strong);margin-top:3px}.homework-detail-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.homework-detail-summary div{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:#f8f6f099;gap:4px;padding:12px;display:grid}.homework-detail-summary span{color:var(--color-muted);font-size:.74rem;font-weight:700}.homework-detail-summary strong{overflow-wrap:anywhere;font-size:.9rem}.assigned-homework-list{gap:18px;display:grid}.assigned-homework-list__student{gap:12px;display:grid}.assigned-homework-list__header{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:#f8f6f08c;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.assigned-homework-list__header strong,.assigned-homework-list__header small{display:block}.assigned-homework-list__header strong{font-size:.95rem;line-height:1.25}.assigned-homework-list__header small{color:var(--color-muted);margin-top:3px;font-size:.8rem}.homework-submit-workbench{gap:18px;display:grid}.homework-answer-card{border:1px solid var(--color-line);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);background:#ffffffc2;gap:18px;padding:22px;display:grid}.homework-answer-card__header{grid-template-columns:42px minmax(0,1fr);align-items:start;gap:14px;display:grid}.homework-answer-card__order{border-radius:var(--radius-sm);background:var(--color-peach);width:42px;height:42px;color:var(--color-peach-strong);font-family:var(--font-display);justify-content:center;align-items:center;font-size:1rem;font-weight:800;display:inline-flex}.homework-answer-card h2{overflow-wrap:anywhere;font-family:var(--font-display);margin:0;font-size:1.12rem;font-weight:750;line-height:1.35}.homework-answer-card__meta{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.homework-answer-card__body{gap:14px;display:grid}.homework-answer-card__prompt{border:1px solid var(--color-line);border-radius:var(--radius-sm);white-space:pre-wrap;background:#f8f6f08c;margin:0;padding:16px;font-size:.96rem;line-height:1.7}.homework-choice-list{gap:10px;display:grid}.homework-choice-option{border:1px solid var(--color-line);border-radius:var(--radius-sm);cursor:pointer;background:#ffffffb3;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:12px;padding:13px 14px;transition:border-color .2s,background .2s;display:grid}.homework-choice-option:hover{background:#ddecff47;border-color:#4f7fae59}.homework-choice-option input{accent-color:var(--color-sky-strong);margin-top:4px}.homework-choice-option span{overflow-wrap:anywhere;line-height:1.45}.homework-submit-workbench__actions{z-index:5;border-radius:var(--radius-md);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--shadow-soft);background:#ffffffd6;border:1px solid #e6e2d9cc;justify-content:flex-end;padding:12px;display:flex;position:sticky;bottom:16px}.snapshot-note{border-radius:var(--radius-md);background:#ddecff40;border:1px solid #4f7fae33;margin:16px 0 0;padding:14px 16px}.snapshot-note .table-muted-text{font-size:.85rem;line-height:1.5}.lookup-form{grid-template-columns:repeat(2,minmax(180px,1fr));gap:12px;min-width:min(520px,100%);display:grid}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:820px){.home-page{width:min(100% - 32px,1180px);padding-top:32px}.page-header{align-items:start;padding-top:24px;display:grid}.page-header__actions{justify-content:flex-start}.home-page__summary{grid-template-columns:1fr}.summary-panel{min-height:auto}.toolbar{flex-direction:column;align-items:flex-start}.auth-shell{width:min(100% - 32px,440px);padding:24px 0}.app-shell{grid-template-columns:1fr}.app-shell__sidebar{border-right:0;border-bottom:1px solid var(--color-line);height:auto;padding:20px 16px;position:static}.app-shell__nav{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}.app-shell__topbar{flex-direction:column;align-items:flex-start;gap:12px;height:auto;padding:16px}.app-shell__account{flex-wrap:wrap;width:100%}.app-shell__content{width:min(100% - 32px,1180px);padding-top:24px}.context-metrics,.workspace-grid{grid-template-columns:1fr}.workspace-card--wide{grid-template-columns:1fr;gap:16px}.workspace-card--link,.management-layout,.inline-form--two,.invitation-result,.lookup-form,.choice-row,.homework-question-picker__filters,.homework-question-picker,.assignment-target-list,.homework-detail-summary{grid-template-columns:1fr}.homework-list-toolbar{flex-direction:column;align-items:flex-start}.homework-question-option,.selected-homework-question{grid-template-columns:1fr}.selected-homework-question__order{width:100%}.homework-answer-card__header{grid-template-columns:1fr}.homework-answer-card__order{width:100%}.homework-submit-workbench__actions{justify-content:stretch;position:static}.homework-submit-workbench__actions .ui-button,.choice-row__marker,.choice-row__answer{width:100%}.choice-row__answer span{justify-content:center;width:100%}.workspace-card__actions{justify-content:flex-start}}
