.opt-app{--opt-line:#dbe4ef;--opt-ink:#172c49;--opt-blue:#245ec7;max-width:980px;margin:auto;color:var(--ostadi-text,var(--opt-ink));font-family:inherit;line-height:1.7;padding:clamp(14px,3vw,32px)}.opt-app *{box-sizing:border-box}.opt-app [hidden]{display:none!important}.opt-app h1{font-size:clamp(25px,4vw,36px);margin:6px 0}.opt-app header p,.opt-note{color:#65758c}.opt-eyebrow{font-size:13px;color:var(--opt-blue)}.opt-app button,.opt-login{cursor:pointer;min-height:46px;border:1px solid var(--opt-line);border-radius:10px;background:#fff;color:var(--opt-ink);padding:9px 16px;font:inherit;text-decoration:none}.opt-app button:disabled{opacity:.5;cursor:default}.opt-app :focus-visible{outline:3px solid #6ca5ee;outline-offset:3px}.opt-toolbar{display:flex;align-items:end;flex-wrap:wrap;gap:12px;margin:18px 0}.opt-app label{display:flex;flex-direction:column;gap:5px;font-size:14px;min-width:0}.opt-app input,.opt-app select,.opt-app textarea{font:inherit;color:var(--opt-ink);background:#fff;border:1px solid var(--opt-line);border-radius:9px;min-height:46px;padding:9px 12px;max-width:100%}.opt-app select{min-width:180px}.opt-app textarea{width:100%;resize:vertical}.opt-status{font-size:13px;margin-inline-start:auto;align-self:center}.opt-status[data-state=pending]{color:#965d00}.opt-status[data-state=saved]{color:#207049}.opt-tabs{display:flex;gap:6px;border-bottom:1px solid var(--opt-line);padding-bottom:10px;margin:24px 0}.opt-tabs button{flex:1;padding:10px 5px;font-size:14px}.opt-tabs [aria-selected=true],.opt-app .opt-primary{background:var(--opt-blue);color:#fff;border-color:var(--opt-blue)}.opt-search{flex:1}.opt-search input{width:100%}.opt-row{display:flex;align-items:center;gap:12px;padding:13px 8px;border-bottom:1px solid var(--opt-line)}.opt-student{flex:1;overflow-wrap:anywhere;min-width:0;font-weight:600}.opt-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.opt-actions button{width:48px;padding:3px;font-size:24px}.opt-actions .opt-plus{background:var(--opt-blue);color:white;border-color:var(--opt-blue)}.opt-count{font-size:24px;font-variant-numeric:tabular-nums;min-width:40px;text-align:center;direction:ltr}.opt-app .opt-rename{font-size:12px;min-height:32px;padding:2px 7px;display:block;margin-top:4px;background:transparent}.opt-manage{margin-top:24px;border:1px solid var(--opt-line);border-radius:12px;padding:16px}.opt-manage summary{cursor:pointer;font-weight:600}.opt-manage button{margin-top:10px}.opt-error{color:#aa2638;background:#fff0f2;border-radius:10px;padding:12px}.opt-note{font-size:12px;margin-top:28px}.opt-date{font-size:14px}.opt-list[aria-busy=true]{opacity:.55;pointer-events:none}@media(max-width:480px){.opt-toolbar>label{width:100%}.opt-toolbar select{width:100%}.opt-row{gap:6px;padding:12px 0}.opt-actions{gap:5px}.opt-actions button{width:44px}.opt-count{min-width:28px;font-size:21px}.opt-tabs button{font-size:12px}.opt-status{margin-inline-start:0}}@media(prefers-color-scheme:dark){.opt-app{--opt-line:#465469}.opt-note,.opt-app header p{color:#899bb4}}

.opt-app{--opt-line:var(--os-line,#dbe4ef);--opt-ink:var(--os-ink,#172c49)}
.opt-app button,.opt-app input,.opt-app select,.opt-app textarea,.opt-login{background:var(--os-card,#fff)}
.opt-app .opt-plus,.opt-app .opt-primary,.opt-tabs [aria-selected=true]{background:var(--opt-blue);color:#fff}
.opt-app header p,.opt-note{color:var(--os-muted,#65758c)}
.opt-tool-page .orc-tools-launcher{display:none!important}
[data-ostadi-theme="dark"] .opt-status[data-state="saved"]{color:#7ed8a4}
[data-ostadi-theme="dark"] .opt-status[data-state="pending"]{color:#f5c471}

.opt-import{margin:18px 0;padding:18px;border:2px solid var(--opt-blue);border-radius:14px;background:var(--os-card,#fff);box-shadow:0 4px 16px #245ec70a}.opt-import-heading{display:flex;align-items:center;gap:12px;color:var(--opt-blue)}.opt-import-heading svg{flex-shrink:0}.opt-import h2,.opt-class-setup h2{font-size:18px;line-height:1.6;margin:0}.opt-import p{font-size:13px;line-height:1.8;margin:8px 0;color:var(--os-muted,#62748b)}.opt-import .opt-file-label{font-weight:700;margin-top:12px;padding:14px;border:1px dashed var(--opt-blue);border-radius:10px;background:var(--os-bg,#f6f9ff)}.opt-file-label>span{font-size:12px;font-weight:400;align-self:start}.opt-import input[type=file]{max-width:100%;width:100%;margin-top:6px}.opt-import input[type=file]::file-selector-button{font:inherit;font-weight:700;background:var(--opt-blue);color:#fff;border:0;border-radius:7px;padding:10px 14px;margin-inline-end:12px;cursor:pointer}.opt-import [data-import-message]{font-weight:700}.opt-import [data-import-options]{margin-top:12px}.opt-import .opt-toolbar>label{min-width:0;flex:1 1 150px}.opt-import select{max-width:100%}
.opt-class-setup{margin:16px 0;padding:18px;border:1px solid var(--opt-line);border-inline-start:4px solid #0d9488;border-radius:12px;background:var(--os-card,#fff)}.opt-class-setup p{font-size:13px;margin:6px 0 12px;color:var(--os-muted,#62748b)}.opt-class-fields{display:flex;gap:12px;align-items:end}.opt-class-fields label{flex:1}.opt-class-fields input{width:100%}.opt-class-setup .opt-class-help{font-size:12px;margin:10px 0 0}@media(max-width:540px){.opt-class-fields{flex-direction:column;align-items:stretch}.opt-import,.opt-class-setup{padding:14px}.opt-import h2,.opt-class-setup h2{font-size:16px}}
