:root{color:#0f172a;--pastel-remember:#fde7f3;--pastel-understand:#fef3c7;--pastel-apply:#dcfce7;--pastel-analyze:#e0e7ff;--pastel-evaluate:#ffedd5;--pastel-create:#ccfbf1;--pastel-overall:#e0ecff;background:#f8fafc;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}body{background:radial-gradient(circle at 100% 0,#7dd3fc33,#0000 26%),linear-gradient(#f8fafc 0%,#eef4ff 100%);min-width:320px;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell,.login-shell{min-height:100vh}.topbar{justify-content:space-between;align-items:center;padding:24px 32px 8px;display:flex}.topbar h1,.hero-copy h1{margin:0;font-size:clamp(2rem,4vw,3.25rem);line-height:1.05}.topbar-actions{align-items:center;gap:12px;display:flex}.profile-pill{background:#ffffffb3;border:1px solid #94a3b840;border-radius:12px;flex-direction:column;padding:10px 14px;display:flex}.profile-pill small{color:#475569;text-transform:capitalize}.login-shell{place-items:center;padding:32px;display:grid}.hero-panel{grid-template-columns:1.3fr .9fr;gap:24px;width:min(1180px,100%);display:grid}.hero-copy,.login-card,.sidebar,.panel{background:#ffffffd1;border:1px solid #e2e8f0e6;border-radius:20px;box-shadow:0 16px 48px #0f172a14}.hero-copy{flex-direction:column;justify-content:center;gap:16px;padding:48px;display:flex}.body-copy{color:#334155;margin:0}.body-copy.compact{margin-top:0}.eyebrow{color:#2563eb;text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:.85rem;font-weight:700}.feature-strip{flex-wrap:wrap;gap:12px;display:flex}.feature-chip{color:#1d4ed8;background:#eff6ff;border-radius:999px;align-items:center;gap:8px;padding:10px 14px;display:inline-flex}.login-card{padding:28px}.section-heading h2,.panel-header h2{margin:0;font-size:1.15rem}.section-heading p,.panel-header p,.sidebar-copy p,.muted-line{color:#475569;margin:4px 0 0}.account-list,.stack-list,.assignment-list{gap:12px;display:grid}.account-card,.assignment-card,.ledger-card,.comment-card{background:#f8fbff;border:1px solid #dbe4f1;border-radius:14px;justify-content:space-between;align-items:flex-start;gap:12px;width:100%;padding:14px 16px;display:flex}.account-card span,.assignment-card small,.ledger-card small,.comment-card small{color:#475569;display:block}.workspace-grid{grid-template-columns:260px minmax(0,1fr);gap:24px;padding:16px 32px 32px;display:grid}.sidebar{align-self:start;gap:14px;padding:18px;display:grid;position:sticky;top:20px}.sidebar-block{background:#f8fbff;border:1px solid #dbe4f1;border-radius:14px;padding:12px}.sidebar-title{align-items:center;gap:8px;margin-bottom:8px;display:flex}.workspace-main{gap:18px;display:grid}.workspace-main-principal{padding:16px 32px 32px}.principal-menu{flex-wrap:wrap;gap:10px;display:flex}.principal-menu .ghost-button{background:#ffffffd9;border-radius:999px}.menu-active{color:#1d4ed8!important;background:#eff6ff!important;border-color:#93c5fd!important}.card-grid{gap:16px;display:grid}.cards-4{grid-template-columns:repeat(4,minmax(0,1fr))}.cards-3{grid-template-columns:repeat(3,minmax(0,1fr))}.cards-2{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-card,.panel{padding:20px}.metric-card{background:#ffffffd9;border:1px solid #dbe4f1f2;border-radius:18px;align-items:center;gap:14px;display:flex;box-shadow:0 12px 32px #0f172a0f}.metric-icon{color:#1d4ed8;background:#eff6ff;border-radius:14px;place-items:center;width:42px;height:42px;display:grid}.metric-card span{color:#475569;display:block}.metric-card strong{font-size:1.5rem}.dial-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.section-dial-grid{gap:14px;display:grid}.section-dial-panel{background:#f8fbff;border:1px solid #dbe4f1;border-radius:16px;gap:12px;padding:14px;display:grid}.section-dial-header h3{margin:0;font-size:1rem}.dial-card{background:#fff;border:1px solid #dbe4f1;border-radius:14px;justify-items:center;gap:8px;padding:12px;display:grid}.overall-dial-large{grid-column:span 2;padding:16px}.overall-dial-large .half-dial{width:168px;height:84px}.overall-dial-large .half-dial-inner{height:62px;left:16px;right:16px}.overall-dial-large .half-dial-inner strong{font-size:1.2rem}.half-dial{border-top-left-radius:120px;border-top-right-radius:120px;width:120px;height:60px;position:relative;overflow:hidden}.half-dial-inner{background:#fff;border-top-left-radius:100px;border-top-right-radius:100px;place-items:end center;height:46px;padding-bottom:8px;display:grid;position:absolute;bottom:0;left:14px;right:14px}.half-dial-inner strong{font-size:1rem}.panel{gap:16px;display:grid}.panel-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid #e2e8f0;padding:12px 14px}th{color:#475569;font-weight:600}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.assignment-grid{grid-template-columns:repeat(3,minmax(0,1fr))}label{color:#334155;gap:8px;font-size:.95rem;display:grid}input,select,textarea{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:12px;width:100%;padding:11px 12px}textarea{resize:vertical}.checkbox-row{align-items:center;gap:10px;min-height:44px;display:flex}.checkbox-row input{width:18px;height:18px}.full-span{grid-column:1/-1}.primary-button,.ghost-button{border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:11px 16px;display:inline-flex}.primary-button{color:#fff;background:linear-gradient(135deg,#2563eb,#1d4ed8)}.ghost-button{color:#0f172a;background:#fff;border-color:#cbd5e1}.banner{border-radius:14px;padding:12px 14px;font-size:.95rem}.banner-success{color:#166534;background:#ecfdf5;border:1px solid #a7f3d0}.banner-error,.error-line{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:14px;padding:12px 14px}.mini-columns{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.mini-list{gap:10px;display:grid}.mini-list h3{margin:0;font-size:1rem}.mini-list-row{background:#f8fbff;border:1px solid #dbe4f1;border-radius:14px;gap:4px;padding:12px;display:grid}.score-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.score-strip>div{background:linear-gradient(#fff 0%,#f8fbff 100%);border:1px solid #dbe4f1;border-radius:14px;padding:14px}.score-strip span{color:#475569;display:block}.score-strip strong{font-size:1.5rem}.status-pill{text-transform:capitalize;border-radius:999px;padding:6px 10px;font-size:.78rem;display:inline-flex}.status-in_progress{color:#1d4ed8;background:#eff6ff}.status-incomplete{color:#c2410c;background:#fff7ed}.status-complete,.status-revision{color:#15803d;background:#ecfdf5}.ledger-title{justify-content:space-between;gap:12px;display:flex}.inline-hint{color:#475569;margin:0}.compact-form{grid-template-columns:1fr auto}.field-action{align-self:end}.tag-row{flex-wrap:wrap;gap:8px;display:flex}.inline-actions{gap:8px;display:flex}.quick-actions-grid{grid-template-columns:1fr;gap:12px;display:grid}.quick-action{border:1px solid #0000;border-radius:14px;justify-content:flex-start;min-height:44px}.quick-action-pink{color:#9d174d;background:#fdf2f8;border-color:#fbcfe8}.quick-action-blue{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.quick-action-green{color:#166534;background:#ecfdf5;border-color:#bbf7d0}.quick-action-amber{color:#92400e;background:#fffbeb;border-color:#fde68a}.quick-action-indigo{color:#3730a3;background:#eef2ff;border-color:#c7d2fe}.quick-action-cyan{color:#0e7490;background:#ecfeff;border-color:#a5f3fc}.soft-panel{border-style:dashed}.assignment-card.task-overdue{background:#fff1f2;border-color:#fca5a5}.assignment-card.task-due-soon{background:#fffbeb;border-color:#fcd34d}.overlay-metric{background:#f8fbff;border:1px solid #dbe4f1;border-radius:14px;gap:4px;padding:14px;display:grid}.overlay-metric span{color:#475569}.overlay-metric strong{font-size:1.4rem}.tone-positive{color:#166534}.tone-negative{color:#b91c1c}.link-button{color:#1d4ed8;background:0 0;border:none;padding:0;font-weight:600}.status-pending_principal{color:#92400e;background:#fef3c7}.status-rejected{color:#b91c1c;background:#fee2e2}.cockpit-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.cockpit-card{background:linear-gradient(#fff 0%,#f8fbff 100%);border:1px solid #d7e5f8;border-radius:16px;min-height:210px;padding:14px}.cockpit-span-2{grid-column:span 2}.tag-toggle{border-radius:999px;padding:8px 12px}.tag-selected{color:#1e40af;background:#dbeafe;border-color:#93c5fd}.avatar-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.avatar-button{color:#1e3a8a;background:#e0ecff;border:1px solid #c7d9f8;border-radius:999px;width:44px;height:44px;font-weight:700}.dialog-overlay{z-index:40;background:#0f172a57;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.dialog-card{background:#fff;border:1px solid #dbe4f1;border-radius:18px;gap:14px;width:min(1060px,100%);max-height:88vh;padding:18px;display:grid;overflow:auto;box-shadow:0 24px 54px #0f172a33}.dialog-header,.dialog-actions{justify-content:space-between;align-items:center;gap:10px;display:flex}.timetable-matrix td{min-width:120px}.settings-launchpad{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.launchpad-tile{background:linear-gradient(#fff 0%,#f6faff 100%);border:1px solid #d7e5f8;border-radius:16px;align-content:center;justify-items:center;gap:8px;min-height:110px;display:grid}.launchpad-tile strong{text-align:center;font-size:.95rem}.settings-dialog-card{width:min(1100px,100%)}@media (width<=1200px){.cards-4,.cards-3,.cards-2,.mini-columns,.assignment-grid,.dial-grid,.cockpit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-launchpad{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=900px){.hero-panel,.workspace-grid,.cards-4,.cards-3,.cards-2,.mini-columns,.dial-grid,.form-grid,.assignment-grid,.score-strip,.cockpit-grid{grid-template-columns:1fr}.cockpit-span-2{grid-column:auto}.settings-launchpad{grid-template-columns:repeat(2,minmax(0,1fr))}.overall-dial-large{grid-column:auto}.workspace-grid,.workspace-main-principal{padding:16px}.topbar{flex-direction:column;align-items:flex-start;gap:16px;padding:20px 16px 8px}.sidebar{position:static}.hero-copy,.login-card{padding:24px}}
