:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f3ecdd;--bg-soft:#f8f2e7;--paper:#fffbf1e0;--paper-strong:#fffaf0;--paper-border:#ded0b7;--paper-border-strong:#c9b99d;--text:#27251f;--muted:#665f51;--muted-2:#8b806d;--accent:#6f5f3f;--accent-strong:#413b2f;--green:#6f7d55;--sand:#d9c69f;--shadow:#4c3f2a1f}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{color:var(--text);background:radial-gradient(circle at 0 0,#ddc58f61,#0000 32rem),radial-gradient(circle at 100% 100%,#b4a88857,#0000 30rem),linear-gradient(135deg,#f7f0e3 0%,#efe4d0 46%,#f8f2e7 100%);font-family:Arial,Helvetica,sans-serif}body:before{content:"";pointer-events:none;background-image:linear-gradient(#483d2a07 1px,#0000 1px),linear-gradient(90deg,#483d2a05 1px,#0000 1px);background-size:34px 34px;position:fixed;inset:0}a{color:inherit;text-decoration:none}.admin-shell{grid-template-columns:274px minmax(0,1fr);gap:32px;min-height:100vh;padding:28px;display:grid;position:relative}.sidebar{border:1px solid var(--paper-border);box-shadow:0 22px 70px var(--shadow);background:#fffaefc2;border-radius:32px;align-self:start;padding:20px;position:sticky;top:28px}.brand{align-items:center;gap:14px;margin-bottom:24px;display:flex}.brand-logo-wrap{background:radial-gradient(circle at 50% 42%,#ffffffe6,#0000 58%),#eadfc8;border:1px solid #d4c2a4;border-radius:22px;justify-content:center;align-items:center;width:66px;height:60px;display:inline-flex;overflow:hidden;box-shadow:inset 0 1px #ffffffa6,0 12px 30px #5241251f}.brand-logo{width:58px;height:auto;transform:scale(1.08)}.brand-text strong,.brand-text small{display:block}.brand-text strong{color:var(--accent-strong);letter-spacing:.02em;font-size:24px}.brand-text small{color:var(--muted-2);max-width:120px;margin-top:3px;line-height:1.25}.nav{gap:18px;display:grid}.nav-group{gap:8px;display:grid}.nav-group-title{color:var(--muted-2);letter-spacing:.12em;text-transform:uppercase;margin:0;padding:0 14px;font-size:11px;font-weight:700}.nav-group-links{gap:8px;display:grid}.nav a{color:var(--muted);border:1px solid #0000;border-radius:16px;padding:12px 14px}.nav a:hover{border-color:var(--paper-border);color:var(--text);background:#fffbf1f2}.content{min-width:0}.page-header{background:#fffbf175;border:1px solid #ded0b7b8;border-radius:36px;margin:0 0 28px;padding:34px;box-shadow:0 18px 60px #4c3f2a14}.eyebrow{color:var(--accent);letter-spacing:.28em;text-transform:uppercase;margin:0 0 18px;font-size:13px;font-weight:700}h1{color:var(--accent-strong);letter-spacing:-.055em;max-width:920px;margin:0;font-size:clamp(36px,5vw,64px);line-height:.95}.lead{color:var(--muted);max-width:900px;margin:22px 0 0;font-size:19px;line-height:1.7}.stats-grid,.module-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:22px;display:grid}.stat-card,.module-card,.table-wrap{background:var(--paper);border:1px solid var(--paper-border);box-shadow:0 18px 56px var(--shadow);border-radius:26px}.stat-card p{color:var(--muted-2);margin:0 0 10px}.stat-card strong{color:var(--accent-strong);letter-spacing:-.04em;margin-bottom:8px;font-size:34px;display:block}.stat-card span{color:var(--muted);font-size:14px}.module-card h2{color:var(--accent-strong);margin:0 0 10px;font-size:22px}.module-card p{color:var(--muted);margin:0;line-height:1.6}.table-wrap{margin-top:24px;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:900px}th,td{border-bottom:1px solid var(--paper-border);text-align:left;vertical-align:top;padding:16px}th{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;background:#f2e6cfdb;font-size:13px}td{color:var(--muted);line-height:1.45}tr:last-child td{border-bottom:0}@media (max-width:860px){.admin-shell{grid-template-columns:1fr;padding:18px}.sidebar{position:static}}.inline-link{color:#59482e;text-underline-offset:4px;font-weight:700;-webkit-text-decoration:underline #59482e47;text-decoration:underline #59482e47}.inline-link:hover{color:#2f281d;text-decoration-color:#2f281dbf}.back-row{margin:-10px 0 20px}.student-profile-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin-top:24px;display:grid}.wide-card{min-height:100%}.info-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:20px 0 0;display:grid}.info-list div{border-bottom:1px solid var(--paper-border);padding-bottom:10px}.info-list dt{color:var(--muted-2);margin-bottom:4px;font-size:13px}.info-list dd{color:var(--accent-strong);margin:0;font-weight:700}.balance-strip,.metric-bar{background:#ccbc9a6b;border-radius:999px;height:12px;margin-top:24px;overflow:hidden}.balance-strip span,.metric-bar span{border-radius:inherit;background:linear-gradient(90deg,#8b7a55,#c9a85f);height:100%;display:block}.minor-note{color:var(--muted-2);margin:10px 0 0;font-size:14px}.research-summary{color:var(--muted);font-size:18px;line-height:1.65}.split-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:20px;display:grid}.split-list h3{color:var(--accent-strong);margin:0 0 10px}.split-list ul{color:var(--muted);margin:0;padding-left:20px;line-height:1.6}.metric-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-top:24px;display:grid}.metric-card{background:var(--paper);border:1px solid var(--paper-border);box-shadow:0 18px 56px var(--shadow);border-radius:24px;padding:20px}.metric-card-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.metric-card-header strong{color:var(--accent-strong)}.metric-card-header span{color:var(--accent);font-weight:800}.metric-card p{color:var(--muted);margin:12px 0 0;line-height:1.55}@media (max-width:980px){.student-profile-grid,.split-list,.info-list{grid-template-columns:1fr}}.lesson-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin-top:24px;display:grid}.close-step-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px;display:grid}.close-step{border:1px solid var(--paper-border);background:#f8f2e7b8;border-radius:20px;padding:16px}.close-step span{color:var(--muted-2);letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:700;display:block}.close-step strong{color:var(--accent-strong);margin-bottom:8px;display:block}.close-step p{color:var(--muted);margin:0;line-height:1.55}.one-column{grid-template-columns:1fr}.tag-list{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.tag-list span{border:1px solid var(--paper-border);color:var(--accent-strong);background:#d9c69f52;border-radius:999px;padding:8px 12px;font-size:14px}@media (max-width:980px){.lesson-layout,.close-step-grid{grid-template-columns:1fr}}.research-model-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin-top:24px;display:grid}.process-flow{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin-top:24px;display:grid}.process-step,.schema-card{background:var(--paper);border:1px solid var(--paper-border);box-shadow:0 18px 56px var(--shadow);border-radius:24px;padding:20px}.process-step span{color:var(--muted-2);letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:700;display:block}.process-step strong{color:var(--accent-strong);margin-bottom:10px;font-size:20px;display:block}.process-step p{color:var(--muted);margin:0;line-height:1.55}.schema-card h2{color:var(--accent-strong);margin:0 0 14px}.json-block{color:#fff8e8;white-space:pre;background:#2f281deb;border-radius:18px;margin:0;padding:18px;font-size:13px;line-height:1.55;overflow-x:auto}@media (max-width:980px){.research-model-grid{grid-template-columns:1fr}}html,body{font-size:14px}.admin-shell{grid-template-columns:236px minmax(0,1fr)!important;gap:24px!important;padding:22px!important}.content{max-width:1440px}.sidebar{border-radius:26px!important;padding:18px!important}.brand{gap:12px!important;margin-bottom:22px!important}.brand-logo-wrap{border-radius:18px!important;width:58px!important;height:52px!important}.brand-logo{width:50px!important}.brand-text strong{font-size:24px!important;line-height:1!important}.brand-text small{max-width:110px!important;font-size:13px!important;line-height:1.25!important}.nav{gap:6px!important}.nav a{border-radius:14px!important;padding:10px 12px!important;font-size:15px!important}.page-header{border-radius:28px!important;margin-bottom:24px!important;padding:28px 32px!important}.eyebrow{letter-spacing:.22em!important;margin-bottom:14px!important;font-size:12px!important}h1{letter-spacing:-.035em!important;max-width:980px!important;font-size:clamp(32px,3.15vw,48px)!important;line-height:1.02!important}.lead{max-width:980px!important;margin-top:18px!important;font-size:17px!important;line-height:1.55!important}.stats-grid,.module-grid,.metric-grid,.process-flow,.research-model-grid,.lesson-layout,.student-profile-grid{gap:14px!important;margin-top:18px!important}.stat-card,.module-card,.metric-card,.process-step,.schema-card,.table-wrap{border-radius:20px!important}.stat-card{padding:18px!important}.stat-card p{margin-bottom:8px!important;font-size:14px!important}.stat-card strong{margin-bottom:8px!important;font-size:30px!important;line-height:1.08!important}.stat-card span{font-size:13px!important;line-height:1.35!important}.module-card{padding:20px!important}.module-card h2,.schema-card h2{margin-bottom:10px!important;font-size:22px!important;line-height:1.16!important}.module-card p,.research-summary,.process-step p,.metric-card p{font-size:15px!important;line-height:1.55!important}.process-step{padding:18px!important}.process-step span{letter-spacing:.07em!important;font-size:11px!important}.process-step strong{font-size:18px!important;line-height:1.18!important}.table-wrap{margin-top:20px!important}table{min-width:880px!important;font-size:13px!important}th,td{padding:12px 14px!important;font-size:13px!important;line-height:1.35!important}th{letter-spacing:.07em!important;font-size:11px!important}.info-list{gap:12px!important;margin-top:16px!important}.info-list dt{font-size:12px!important}.info-list dd{font-size:14px!important;line-height:1.35!important}.minor-note{font-size:13px!important;line-height:1.4!important}.inline-link{font-size:inherit!important}.json-block{padding:16px!important;font-size:12px!important;line-height:1.45!important}@media (max-width:980px){.admin-shell{grid-template-columns:1fr!important;padding:16px!important}h1{font-size:clamp(28px,7vw,40px)!important}.lead{font-size:16px!important}.page-header{padding:24px!important}}.builder-layout{grid-template-columns:minmax(320px,.82fr) minmax(380px,1.18fr);gap:16px;margin-top:22px;display:grid}.builder-panel{background:var(--paper);border:1px solid var(--paper-border);box-shadow:0 18px 56px var(--shadow);border-radius:22px;padding:20px}.builder-panel h2{color:var(--accent-strong);margin:0 0 14px;font-size:22px;line-height:1.15}.builder-field{gap:7px;margin-bottom:13px;display:grid}.builder-field span{color:var(--muted-2);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:800}.builder-field input,.builder-field textarea,.builder-field select{border:1px solid var(--paper-border);color:var(--ink);font:inherit;background:#fffaedeb;border-radius:14px;outline:none;width:100%;padding:11px 12px;font-size:14px;line-height:1.4}.builder-field textarea{resize:vertical;min-height:78px}.builder-field input:focus,.builder-field textarea:focus,.builder-field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #b5843e29}@media (max-width:1100px){.builder-layout{grid-template-columns:1fr}}.floating-classroom{color:#f7f1e7;background:#202020;min-height:100vh;overflow:hidden}.floating-board-grid{background-color:#232323;background-image:linear-gradient(#ffffff13 1px,#0000 1px),linear-gradient(90deg,#ffffff13 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:28px 28px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;height:100vh;position:relative;overflow:hidden}.floating-topbar{z-index:40;align-items:center;gap:8px;display:flex;position:absolute;top:12px;left:14px}.round-control,.pill-control,.zoom-control,.board-mode-pill,.floating-left-tools,.right-dock,.invite-card,.floating-window,.camera-tile,.help-button,.call-button,.info-button,.quick-board-actions,.pen-popover,.hidden-service-panel{box-shadow:0 12px 36px #00000042}.round-control,.pill-control,.zoom-control button,.board-mode-pill button,.floating-left-tools button,.right-dock button,.help-button,.call-button,.info-button,.quick-board-actions button,.pen-popover button,.invite-card button,.window-titlebar button,.window-bottom-tools button{color:#2d2d2d;cursor:pointer;font:inherit;background:#fffffff0;border:0;border-radius:999px;font-size:14px;font-weight:800}.round-control{width:34px;height:34px}.pill-control{height:34px;padding:0 12px}.zoom-control{color:#2d2d2d;background:#fffffff0;border-radius:999px;align-items:center;gap:4px;height:34px;padding:0 8px;display:flex}.zoom-control span{text-align:center;min-width:42px;font-size:13px;font-weight:900}.zoom-control button{width:24px;height:24px}.board-mode-pill{color:#2d2d2d;background:#fffffff0;border-radius:999px;align-items:center;gap:4px;height:34px;padding:0 8px 0 14px;display:flex}.board-mode-pill span{margin-right:5px;font-size:13px;font-weight:900}.board-mode-pill button{width:24px;height:24px}.floating-left-tools{z-index:40;background:#fffffff5;border-radius:18px;gap:4px;padding:7px 5px;display:grid;position:absolute;top:72px;left:12px}.floating-left-tools button{border-radius:12px;width:32px;height:32px}.floating-left-tools button.active{color:#fff;background:#43a7b7}.pen-popover{color:#2d2d2d;z-index:35;background:#fffffff5;border-radius:18px;width:188px;padding:14px;position:absolute;top:78px;left:252px}.pen-popover-head{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.pen-popover-head span,.pen-popover label span{font-size:13px;font-weight:900}.pen-popover input[type=color]{background:0 0;border:0;width:42px;height:30px}.color-row{grid-template-columns:repeat(5,24px);gap:7px;margin-bottom:12px;display:grid}.color-row button{border:1px solid #00000014;width:24px;height:24px}.pen-popover input[type=range]{width:100%}.quick-board-actions{z-index:30;gap:8px;display:flex;position:absolute;top:80px;left:480px}.quick-board-actions button{height:32px;padding:0 12px}.floating-board-object{z-index:15;position:absolute}.floating-board-object textarea{color:#f3efe7;font:inherit;resize:both;background:0 0;border:0;outline:none;overflow:hidden}.object-task{background:#fffffff0;border-radius:18px;width:410px;padding:14px}.object-task textarea{color:#252525;width:100%;height:82px;font-size:18px;line-height:1.35}.object-formula textarea{color:#f7f1e7;width:340px;min-height:72px;font-size:28px;font-weight:800}.object-text{background:#ffffffeb;border-radius:16px;width:280px;padding:12px}.object-text textarea{color:#252525;width:100%;min-height:70px;font-size:17px}.object-stroke textarea{color:#d78a18;width:420px;min-height:92px;font-family:Segoe Script,Comic Sans MS,cursive;font-size:44px}.invite-card{color:#2d2d2d;z-index:45;background:#fffffff7;border-radius:20px;width:340px;padding:18px 20px;position:absolute;top:70px;left:50%;transform:translate(-50%)}.invite-card strong{margin-bottom:6px;font-size:14px;line-height:1.35;display:block}.invite-card p,.invite-card small{color:#6f6a60;margin:0 0 6px;font-size:12px;line-height:1.35;display:block}.invite-card code{color:#2d2d2d;margin-bottom:8px;font-size:13px;font-weight:900;display:block}.invite-card div{gap:6px;margin-bottom:8px;display:flex}.invite-card button{padding:7px 9px;font-size:12px}.window-close{position:absolute;top:10px;right:10px}.floating-window{color:#292929;z-index:32;background:#f5f5f5f5;border:1px solid #ffffffbf;border-radius:22px;position:absolute;overflow:hidden}.materials-window{width:440px;height:540px;top:54px;right:70px}.chat-window{width:270px;height:360px;top:86px;left:46px}.doc-camera-window{width:380px;height:430px;top:110px;right:78px}.window-titlebar{background:#ffffffeb;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;display:flex}.window-titlebar strong{flex:1;font-size:15px;line-height:1.2}.window-titlebar div{gap:6px;display:flex}.window-titlebar button{width:28px;height:28px}.window-content{max-height:468px;padding:20px 26px;font-size:14px;line-height:1.45;overflow:auto}.window-content p{margin:0 0 14px}.red-note{color:#c94141;font-weight:800}.checkbox-row{align-items:center;gap:8px;margin-top:14px;font-size:13px;display:flex}.window-bottom-tools{background:#fffffff0;border-radius:999px;gap:6px;padding:6px;display:flex;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.window-bottom-tools button{width:30px;height:30px}.chat-body{background:#0000000d;height:280px}.chat-input{align-items:center;gap:6px;padding:8px;display:flex}.chat-input input{font:inherit;border:0;border-radius:999px;flex:1;padding:9px 12px;font-size:13px}.chat-input button{background:#f3f0e9;border:0;border-radius:999px;width:34px;height:34px}.doc-camera-sheet{text-align:center;background-color:#fbfbf8;background-image:linear-gradient(#0000000d 1px,#0000 1px),none;background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:26px 26px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;align-content:center;height:360px;margin:18px;display:grid}.doc-camera-sheet span{color:#8a8172;letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:900}.doc-camera-sheet strong{color:#333;font-size:24px}.doc-camera-sheet p{color:#777;font-size:13px}.camera-tile{z-index:55;background:#f5f5f5f5;border-radius:18px;width:120px;height:112px;position:absolute;top:42px;right:54px;overflow:hidden}.camera-tile button{cursor:pointer;z-index:2;background:#ffffffdb;border:0;border-radius:999px;width:22px;height:22px;position:absolute;top:6px;right:6px}.camera-avatar{color:#fff;background:linear-gradient(135deg,#e9dfce,#9e8f78);justify-content:center;align-items:center;height:100%;font-size:44px;font-weight:900;display:flex}.camera-tile span{color:#fff;background:#0000009e;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:800;position:absolute;bottom:8px;right:8px}.right-dock{z-index:38;background:#282828c7;align-items:center;gap:10px;width:44px;padding:12px 8px;display:grid;position:absolute;top:0;bottom:0;right:0}.right-dock button{color:#d8d5ce;background:0 0;width:32px;height:32px;font-size:18px}.right-dock button:hover{background:#ffffff1f}.help-button,.call-button,.info-button{z-index:50;position:absolute}.help-button{color:#cfc9bd;background:0 0;bottom:56px;right:14px}.call-button{color:#fff;background:#ffbf24;width:38px;height:38px;bottom:12px;right:10px}.info-button{color:#cfc9bd;background:#ffffff29;width:28px;height:28px;bottom:12px;left:18px}.hidden-service-panel{z-index:58;position:absolute;bottom:12px;left:58px}.hidden-service-panel>button{color:#d8d5ce;cursor:pointer;font:inherit;background:#fff3;border:0;border-radius:999px;padding:8px 10px;font-size:12px;font-weight:800}.hidden-service-panel>div{color:#333;background:#fffffff5;border-radius:18px;grid-template-columns:repeat(2,minmax(220px,1fr));gap:10px;max-width:720px;margin-top:8px;padding:14px;display:grid}.hidden-service-panel article strong{margin-bottom:5px;font-size:14px;display:block}.hidden-service-panel article p{color:#666;margin:0;font-size:12px;line-height:1.42}@media (max-width:920px){.materials-window,.doc-camera-window{width:calc(100vw - 130px);left:70px;right:auto}.invite-card{width:calc(100vw - 140px);left:70px;transform:none}.camera-tile{right:54px}.pen-popover,.quick-board-actions{display:none}.hidden-service-panel>div{grid-template-columns:1fr;width:calc(100vw - 120px)}}.expanded-tools{max-height:calc(100vh - 105px);overflow:auto}.expanded-tools button{font-size:15px}.tool-inspector{color:#2d2d2d;z-index:37;background:#fffffff5;border-radius:18px;width:198px;padding:13px;position:absolute;top:76px;left:58px;box-shadow:0 12px 36px #00000042}.tool-inspector header{margin-bottom:10px}.tool-inspector header strong{font-size:14px;line-height:1.2;display:block}.tool-inspector header span,.tool-inspector label span{color:#7d7568;letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px;font-size:10px;font-weight:900;display:block}.tool-inspector label{gap:4px;margin-bottom:9px;display:grid}.tool-inspector input,.tool-inspector select{font:inherit;border:1px solid #0000001f;border-radius:10px;width:100%;padding:7px 8px;font-size:12px}.tool-inspector input[type=color]{height:34px;padding:3px}.tool-inspector input[type=range]{padding:0}.tool-inspector p{color:#5f5a50;margin:0 0 10px;font-size:12px;line-height:1.35}.tool-inspector button,.upgraded-actions button{color:#332f27;cursor:pointer;font:inherit;background:#f3eee2;border:0;border-radius:999px;padding:8px 10px;font-size:12px;font-weight:900}.tool-inspector button{width:100%}.upgraded-actions{left:282px}.managed-floating-window{resize:both;min-width:240px;min-height:50px}.managed-floating-window .window-titlebar{cursor:default}.compact-window-content{max-height:none;padding:18px 22px}.compact-window-content strong{margin-bottom:8px;font-size:14px;display:block}.compact-window-content button{color:#fff;cursor:pointer;font:inherit;background:#43a7b7;border:0;border-radius:999px;padding:8px 10px;font-size:12px;font-weight:900}.object-shape textarea{color:#f7e5b4;width:180px;min-height:120px;font-size:72px;font-weight:900}.object-solid3d textarea{color:#bfe0ff;width:260px;min-height:90px;font-size:34px;font-weight:900}@media (max-width:980px){.tool-inspector{display:none}.upgraded-actions{top:70px;left:70px}}.managed-floating-window{touch-action:none}.managed-floating-window.is-collapsed{min-height:48px;overflow:hidden}.managed-floating-window .window-titlebar{-webkit-user-select:none;user-select:none}.managed-floating-window .window-titlebar>button{cursor:grab}.managed-floating-window .window-titlebar>button:active{cursor:grabbing}.resize-handle{cursor:nwse-resize;background:linear-gradient(135deg,#0000 0 45%,#46464659 45% 55%,#0000 55%),linear-gradient(135deg,#0000 0 62%,#46464659 62% 72%,#0000 72%);border:0;width:24px;height:24px;position:absolute;bottom:5px;right:5px}.mock-pdf-page{color:#333;text-align:center;background-color:#fffdf8;background-image:linear-gradient(#0000000f 1px,#0000 1px),none;background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:24px 24px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;border:1px solid #00000014;border-radius:16px;align-content:center;min-height:170px;margin:14px 0 48px;display:grid}.mock-pdf-page span{color:#9f352d;letter-spacing:.12em;text-transform:uppercase;font-size:12px;font-weight:900}.mock-pdf-page strong{margin-top:6px;font-size:22px;display:block}.mock-pdf-page p{color:#777;margin:6px 0 0;font-size:13px}.invite-actions{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.pages-window-content{gap:10px;padding:14px;display:grid}.pages-window-content article{color:#333;background:#ffffffb3;border-radius:14px;padding:12px;font-size:13px;font-weight:800}.docCamera-window .doc-camera-sheet{height:calc(100% - 72px);min-height:140px}.chat-window .chat-body{height:calc(100% - 96px);min-height:160px;padding:10px;overflow:auto}.chat-window .chat-body article{color:#333;background:#ffffffbd;border-radius:12px;padding:10px}.chat-window .chat-body strong{margin-bottom:4px;font-size:12px;display:block}.chat-window .chat-body p{color:#666;margin:0;font-size:12px}.board-bg-black{background-color:#232323}.board-bg-light{background-color:#f6f2e8}.board-bg-paper{background-color:#f3ead7}.board-bg-blueprint{background-color:#173654}.board-bg-black.board-grid-small,.board-bg-black.board-grid-medium,.board-bg-black.board-grid-large,.board-bg-black.board-grid-coordinate{background-image:linear-gradient(#ffffff13 var(--grid-line-width,1px), transparent var(--grid-line-width,1px)), linear-gradient(90deg, #ffffff13 var(--grid-line-width,1px), transparent var(--grid-line-width,1px))}.board-bg-light.board-grid-small,.board-bg-light.board-grid-medium,.board-bg-light.board-grid-large,.board-bg-light.board-grid-coordinate,.board-bg-paper.board-grid-small,.board-bg-paper.board-grid-medium,.board-bg-paper.board-grid-large,.board-bg-paper.board-grid-coordinate{background-image:linear-gradient(#5c492b1f var(--grid-line-width,1px), transparent var(--grid-line-width,1px)), linear-gradient(90deg, #5c492b1f var(--grid-line-width,1px), transparent var(--grid-line-width,1px))}.board-bg-blueprint.board-grid-small,.board-bg-blueprint.board-grid-medium,.board-bg-blueprint.board-grid-large,.board-bg-blueprint.board-grid-coordinate{background-image:linear-gradient(#b9dfff2e var(--grid-line-width,1px), transparent var(--grid-line-width,1px)), linear-gradient(90deg, #b9dfff2e var(--grid-line-width,1px), transparent var(--grid-line-width,1px))}.board-grid-none{background-image:none!important}.board-grid-small{background-size:28px 28px}.board-grid-medium{background-size:42px 42px}.board-grid-large{background-size:64px 64px}.board-grid-coordinate{background-size:52px 52px}.grid-color-soft{opacity:.92}.grid-color-contrast{filter:contrast(1.18)}.teacher-settings-pill{color:#2d2d2d;background:#fffffff0;border-radius:999px;align-items:center;gap:8px;height:34px;padding:0 12px;display:flex}.teacher-settings-pill span{font-size:12px;font-weight:900}.board-pdf-boundary-preview{pointer-events:none;z-index:1;border:2px dashed #ffffff57;width:440px;height:620px;position:absolute;top:120px;left:330px}.pdf-boundary-subtle .board-pdf-boundary-preview{opacity:.42}.pdf-boundary-visible .board-pdf-boundary-preview{opacity:.9}.settings-window{border-radius:22px}.board-settings-content{gap:12px;max-height:calc(100% - 54px);padding:18px;display:grid;overflow:auto}.board-settings-content header{border-bottom:1px solid #00000014;padding-bottom:12px}.board-settings-content header strong{color:#2d2d2d;margin-bottom:4px;font-size:16px;display:block}.board-settings-content header span{color:#777166;font-size:12px;font-weight:800}.board-settings-content label{grid-template-columns:minmax(160px,1fr) minmax(150px,.92fr);align-items:center;gap:12px;display:grid}.board-settings-content label span{color:#5f5a50;font-size:13px;font-weight:800;line-height:1.25}.board-settings-content select,.board-settings-content input{color:#2d2d2d;font:inherit;border:1px solid #0000001f;border-radius:12px;width:100%;padding:8px 10px;font-size:12px;font-weight:800}.board-settings-content input[type=range]{padding:0}.board-settings-content em{color:#777166;justify-self:end;margin-top:-8px;font-size:12px;font-style:normal;font-weight:900}.settings-actions{gap:8px;margin-top:8px;display:flex}.settings-actions button{color:#fff;cursor:pointer;font:inherit;background:#43a7b7;border:0;border-radius:999px;padding:10px 12px;font-size:12px;font-weight:900}.settings-actions button:last-child{color:#3b3428;background:#eee7da}.pdf-page-a4-portrait{width:72%;min-height:230px}.pdf-page-a4-landscape{width:92%;min-height:170px}.pdf-page-free{width:100%;min-height:160px}@media (max-width:760px){.teacher-settings-pill{display:none}.board-settings-content label{grid-template-columns:1fr}}.settings-window{max-height:calc(100vh - 70px)}.settings-window .board-settings-content{scrollbar-gutter:stable;height:calc(100% - 54px);max-height:none;padding-bottom:92px;overflow-y:auto}.settings-window .window-titlebar{z-index:2;position:sticky;top:0}.managed-floating-window{max-width:calc(100vw - 58px);max-height:calc(100vh - 24px)}.resize-handle{box-shadow:none;z-index:3;background:0 0;border:0;position:absolute}.resize-handle-top,.resize-handle-bottom{cursor:ns-resize;width:auto;height:10px;left:14px;right:14px}.resize-handle-top{top:-3px}.resize-handle-bottom{bottom:-3px}.resize-handle-left,.resize-handle-right{cursor:ew-resize;width:10px;height:auto;top:14px;bottom:14px}.resize-handle-left{left:-3px}.resize-handle-right{right:-3px}.resize-handle-top-left,.resize-handle-top-right,.resize-handle-bottom-left,.resize-handle-bottom-right{width:20px;height:20px}.resize-handle-top-left{cursor:nwse-resize;top:-4px;left:-4px}.resize-handle-top-right{cursor:nesw-resize;top:-4px;right:-4px}.resize-handle-bottom-left{cursor:nesw-resize;bottom:-4px;left:-4px}.resize-handle-bottom-right{cursor:nwse-resize;background:linear-gradient(135deg,#0000 0 45%,#46464659 45% 55%,#0000 55%),linear-gradient(135deg,#0000 0 62%,#46464659 62% 72%,#0000 72%);bottom:5px;right:5px}@media (max-height:720px){.settings-window{max-height:calc(100vh - 36px)}.settings-window .board-settings-content{padding-bottom:120px}}.objectLibrary-window{max-height:calc(100vh - 70px)}.objectLibrary-window .object-library-content{scrollbar-gutter:stable;height:calc(100% - 54px);padding:18px 18px 80px;overflow-y:auto}.object-library-content header{border-bottom:1px solid #00000014;margin-bottom:14px;padding-bottom:12px}.object-library-content header strong{color:#2d2d2d;margin-bottom:5px;font-size:17px;display:block}.object-library-content header span{color:#777166;font-size:12px;font-weight:800;line-height:1.35;display:block}.object-library-group{margin-bottom:16px}.object-library-group h3{color:#5f5a50;letter-spacing:.11em;text-transform:uppercase;margin:0 0 8px;font-size:11px;font-weight:900}.object-library-group>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.object-library-group button{color:#2d2d2d;cursor:pointer;text-align:left;background:#fffaedeb;border:1px solid #97774b38;border-radius:14px;gap:4px;min-height:72px;padding:11px;display:grid}.object-library-group button:hover{background:#fff9ea;border-color:#97774b61}.object-library-group button strong{color:#312c23;font-size:13px;line-height:1.2;display:block}.object-library-group button span{color:#777166;font-size:11px;line-height:1.28;display:block}.object-line textarea{color:#f7f1e7;width:280px;min-height:76px;font-size:32px;font-weight:900}.object-polygon textarea{color:#f7e5b4;width:190px;min-height:122px;font-size:72px;font-weight:900}@media (max-width:760px){.object-library-group>div{grid-template-columns:1fr}}.board-interaction-layer{cursor:crosshair;z-index:2;position:absolute;inset:0 44px 0 0}.is-hand-tool .board-interaction-layer{cursor:grab}.is-hand-tool:active .board-interaction-layer{cursor:grabbing}.board-world{pointer-events:none;z-index:5;width:3600px;height:2600px;position:absolute;top:0;left:0}.board-world .floating-board-object{pointer-events:auto}.board-placement-toast{color:#2d2d2d;z-index:42;background:#fffffff5;border-radius:999px;gap:8px;padding:9px 14px;display:flex;position:absolute;top:118px;left:50%;transform:translate(-50%);box-shadow:0 12px 36px #00000042}.board-placement-toast strong,.board-placement-toast span{font-size:12px;line-height:1.2}.board-placement-toast strong{color:#312c23;font-weight:900}.board-placement-toast span{color:#777166;font-weight:800}.placement-hint{background:#fff5d6;border:1px solid #be85183d;border-radius:14px;align-items:center;gap:5px;margin-bottom:14px;padding:11px;display:grid}.placement-hint strong{color:#312c23;font-size:13px}.placement-hint span{color:#756142;font-size:12px;font-weight:800}.placement-hint button{color:#3b3428;cursor:pointer;font:inherit;background:#e4d6ba;border:0;border-radius:999px;justify-self:start;padding:6px 9px;font-size:11px;font-weight:900}.object-library-group button.active{background:#fff1c7;border-color:#be85188c}.object-line-real{pointer-events:auto;min-height:24px}.object-line-real>span{border-top:4px solid #f4e6c8;display:block;position:absolute;top:50%;left:0;right:0}.object-line-real.line-arrow>span:after{content:"";border-top:8px solid #0000;border-bottom:8px solid #0000;border-left:14px solid #f4e6c8;position:absolute;top:-10px;right:-2px}.object-line-real.line-wave svg{width:100%;height:100%;overflow:visible}.object-line-real.line-wave path{fill:none;stroke:#f4e6c8;stroke-linecap:round;stroke-width:4px}.object-coordinate{background-color:#0000;background-image:linear-gradient(#f4e6c824 1px,#0000 1px),linear-gradient(90deg,#f4e6c824 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:24px 24px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;border-bottom:3px solid #f4e6c8;border-left:3px solid #f4e6c8}.object-coordinate span{color:#f4e6c8;font-size:13px;font-weight:900;position:absolute}.object-coordinate span:first-child{bottom:-22px;right:-8px}.object-coordinate span:last-child{top:-8px;left:-18px}.object-shape-real{pointer-events:auto;background:#f8e7b533;border:4px solid #f4e6c8}.object-shape-real.shape-ellipse{border-radius:999px}.object-shape-real.shape-triangle{background:0 0;border:0}.object-shape-real.shape-triangle:before{border-bottom:var(--shape-h,110px) solid #f8e7b559;border-left:calc(var(--shape-w,140px) / 2) solid transparent;border-right:calc(var(--shape-w,140px) / 2) solid transparent;content:"";width:0;height:0;position:absolute;top:0;left:0}.draft-point{pointer-events:none;z-index:20;background:#ffbf24;border:3px solid #fff;border-radius:999px;width:12px;height:12px;margin-top:-6px;margin-left:-6px;position:absolute;box-shadow:0 0 0 8px #ffbf242e}.board-pdf-boundary-preview{pointer-events:none}@media (max-width:760px){.board-placement-toast{left:70px;right:56px;transform:none}}.teacher-settings-pill{display:none!important}.is-placing-object .board-interaction-layer,.is-hand-tool .board-interaction-layer{z-index:24}.is-placing-object .board-world .floating-board-object,.is-hand-tool .board-world .floating-board-object{pointer-events:none}.object-transparent-text{box-shadow:none!important;background:0 0!important;border-color:#0000!important;padding:0!important}.object-transparent-text textarea{color:inherit;min-height:56px;font-size:22px;background:0 0!important}.object-line-real{background:0 0;min-height:24px}.object-line-real svg{width:100%;height:100%;overflow:visible}.object-line-real line,.object-line-real path{fill:none;stroke:#f4e6c8;stroke-linecap:round;stroke-linejoin:round;stroke-width:4px}.object-line-real marker path{fill:#f4e6c8;stroke:none}.object-line-real>span,.object-line-real.line-arrow>span:after{display:none!important}.object-shape-real{background:0 0!important;border:0!important}.object-shape-real svg{width:100%;height:100%;overflow:visible}.object-shape-real rect,.object-shape-real ellipse,.object-shape-real polygon{fill:#f8e7b540;stroke:#f4e6c8;stroke-width:4px}.object-shape-real.shape-polygon{clip-path:none!important}.board-placement-toast{align-items:center}.board-placement-toast button{color:#3b3428;cursor:pointer;font:inherit;background:#e4d6ba;border:0;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:900}.polygon-draft-point{color:#302614;justify-content:center;align-items:center;font-size:9px;font-weight:900;line-height:1;display:flex}.polygon-draft-lines{pointer-events:none;z-index:19;width:3600px;height:2600px;position:absolute;top:0;left:0;overflow:visible}.polygon-draft-lines polyline{fill:none;stroke:#ffbf24;stroke-dasharray:8 8;stroke-linecap:round;stroke-linejoin:round;stroke-width:3px}.teacher-toolkit-link{color:#dff7ff;cursor:pointer;background:#0ea5e91f;border:1px solid #7dd3fc59;border-radius:14px;padding:10px 12px;font-weight:700}.teacher-toolkit-link:hover{background:#0ea5e92e;border-color:#7dd3fca6}.compact-preset-palette{flex-wrap:wrap;gap:8px;display:flex}.compact-preset-palette button{color:#e5f2ff;cursor:pointer;background:#0f172ab8;border:1px solid #94a3b847;border-radius:11px;min-width:38px;height:34px;font-size:12px;font-weight:800}.compact-preset-palette button:hover,.compact-preset-palette button.active{background:#2563eb47;border-color:#60a5fabf}.freehand-line-draft{pointer-events:none;position:absolute;inset:0;overflow:visible}.freehand-line-draft polyline{fill:none;stroke:#fbbf24e6;stroke-linecap:round;stroke-linejoin:round;stroke-width:4px}.teacher-next-lesson{border:1px solid var(--paper-border);box-shadow:0 20px 62px var(--shadow);background:linear-gradient(135deg,#fffbf1f5,#ebdec3e6);border-radius:30px;justify-content:space-between;align-items:center;gap:28px;padding:28px;display:flex}.teacher-section-kicker{color:var(--accent);letter-spacing:.16em;text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:800}.teacher-next-lesson h2,.teacher-panel h2{color:var(--accent-strong);margin:0}.teacher-next-lesson h2{letter-spacing:-.035em;font-size:clamp(24px,3vw,38px)}.teacher-next-meta{color:var(--muted);margin:12px 0 0;font-size:17px}.teacher-next-status{color:var(--green);margin:10px 0 0;font-size:14px;font-weight:700}.teacher-next-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.teacher-primary-action,.teacher-secondary-action{border-radius:16px;padding:13px 17px;font-weight:800}.teacher-primary-action{background:var(--accent-strong);color:var(--paper-strong)}.teacher-secondary-action{border:1px solid var(--paper-border-strong);color:var(--accent-strong);background:#fffbf1b8}.teacher-workspace-grid{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:18px;margin-top:22px;display:grid}.teacher-panel{background:var(--paper);border:1px solid var(--paper-border);box-shadow:0 18px 56px var(--shadow);border-radius:26px;min-width:0;padding:24px}.teacher-panel-header{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.teacher-panel h2{font-size:23px}.teacher-lesson-list,.teacher-student-list{gap:10px;margin-top:20px;display:grid}.teacher-lesson-row{border-top:1px solid var(--paper-border);grid-template-columns:112px minmax(0,1fr) auto;align-items:center;gap:16px;padding:16px 0 6px;display:grid}.teacher-lesson-row:first-child{border-top:0;padding-top:4px}.teacher-lesson-row time{color:var(--accent);font-weight:800}.teacher-lesson-title{color:var(--accent-strong);font-weight:800}.teacher-lesson-row p{color:var(--muted);margin:5px 0 0;font-size:14px}.teacher-lesson-row>span{color:var(--muted);background:#d9c69f6b;border-radius:999px;padding:7px 10px;font-size:12px}.teacher-student-row{border:1px solid var(--paper-border);border-radius:18px;justify-content:space-between;align-items:center;gap:18px;padding:16px;display:flex}.teacher-student-row:hover{border-color:var(--paper-border-strong);background:#fffbf1d1}.teacher-student-row strong,.teacher-student-row span{display:block}.teacher-student-row strong{color:var(--accent-strong)}.teacher-student-row>div:first-child span{color:var(--muted-2);margin-top:4px;font-size:13px}.teacher-student-metrics{color:var(--muted);text-align:right;font-size:13px}.teacher-student-metrics span+span{margin-top:4px}.teacher-empty-state{color:var(--muted);margin:22px 0 0;line-height:1.6}.teacher-quick-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:22px;display:grid}.teacher-quick-actions a{border:1px solid var(--paper-border);background:#fffbf1b3;border-radius:22px;min-height:132px;padding:20px}.teacher-quick-actions a:hover{background:var(--paper);border-color:var(--paper-border-strong)}.teacher-quick-actions span,.teacher-quick-actions strong{display:block}.teacher-quick-actions span{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;font-size:12px;font-weight:800}.teacher-quick-actions strong{color:var(--accent-strong);margin-top:12px;line-height:1.45}@media (max-width:1120px){.teacher-workspace-grid{grid-template-columns:1fr}}@media (max-width:760px){.teacher-next-lesson{flex-direction:column;align-items:stretch}.teacher-next-actions{justify-content:flex-start}.teacher-lesson-row{grid-template-columns:1fr;align-items:start}.teacher-lesson-row>span{justify-self:start}.teacher-student-row{flex-direction:column;align-items:flex-start}.teacher-student-metrics{text-align:left}.teacher-quick-actions{grid-template-columns:1fr}}.student-next-lesson{border:1px solid var(--paper-border);box-shadow:0 20px 62px var(--shadow);background:radial-gradient(circle at 86% 10%,#ffffffd1,#0000 17rem),linear-gradient(135deg,#f8eed7fa,#e0e8d2e6);border-radius:32px;justify-content:space-between;align-items:center;gap:28px;padding:30px;display:flex;position:relative;overflow:hidden}.student-next-copy,.student-next-actions{z-index:1;position:relative}.student-section-kicker{color:var(--green);letter-spacing:.16em;text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:800}.student-next-lesson h2,.student-panel h2,.student-progress-panel h2{color:var(--accent-strong);margin:0}.student-next-lesson h2{letter-spacing:-.04em;font-size:clamp(25px,3vw,40px)}.student-next-meta{color:var(--muted);margin:12px 0 0;font-size:17px}.student-next-status{color:var(--green);margin:10px 0 0;font-size:14px;font-weight:800}.student-next-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.student-primary-action,.student-secondary-action{border-radius:17px;padding:14px 18px;font-weight:800}.student-primary-action{background:var(--green);color:#fffdf7}.student-secondary-action{border:1px solid var(--paper-border-strong);color:var(--accent-strong);background:#fffdf7bd}.student-workspace-grid{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:18px;margin-top:22px;display:grid}.student-panel,.student-progress-panel{background:var(--paper);border:1px solid var(--paper-border);box-shadow:0 18px 56px var(--shadow);border-radius:27px;min-width:0;padding:24px}.student-panel-header,.student-progress-heading{justify-content:space-between;align-items:flex-start;gap:22px;display:flex}.student-panel h2,.student-progress-panel h2{font-size:24px}.student-count-badge{color:var(--green);text-align:center;background:#6f7d551f;border:1px solid #6f7d553d;border-radius:999px;padding:8px 11px;font-size:12px;font-weight:800}.student-assignment-list,.student-course-list{gap:11px;margin-top:20px;display:grid}.student-assignment-row{border-top:1px solid var(--paper-border);justify-content:space-between;align-items:center;gap:22px;padding:17px 0 6px;display:flex}.student-assignment-row:first-child{border-top:0;padding-top:4px}.student-assignment-main>span,.student-course-card>div:first-child>span{color:var(--green);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:800;display:block}.student-assignment-main strong,.student-course-card strong{color:var(--accent-strong);margin-top:6px;display:block}.student-assignment-main p,.student-course-card p{color:var(--muted);margin:6px 0 0;font-size:14px;line-height:1.5}.student-assignment-state{text-align:right;flex:0 0 160px}.student-assignment-state span,.student-assignment-state strong{display:block}.student-assignment-state span{color:var(--muted-2);font-size:12px}.student-assignment-state strong{color:var(--accent);margin-top:5px;font-size:13px}.student-course-card{border:1px solid var(--paper-border);border-radius:19px;grid-template-columns:minmax(0,1fr) auto;gap:16px;padding:17px;display:grid}.student-course-progress{color:var(--muted);text-align:right;font-size:13px}.student-course-progress span{display:block}.student-course-progress span+span{margin-top:5px}.student-progress-panel{margin-top:22px}.student-progress-heading>p{color:var(--muted);max-width:640px;margin:0;line-height:1.65}.student-metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:24px;display:grid}.student-metric-card{border:1px solid var(--paper-border);background:#fffbf1ad;border-radius:20px;padding:17px}.student-metric-card>div:first-child{justify-content:space-between;align-items:center;gap:12px;display:flex}.student-metric-card strong{color:var(--accent-strong);font-size:14px}.student-metric-card>div:first-child span{color:var(--green);font-weight:900}.student-metric-track{background:#6f7d5526;border-radius:999px;height:8px;margin-top:15px;overflow:hidden}.student-metric-track span{border-radius:inherit;background:linear-gradient(90deg,#8c9b70,#c7b46d);height:100%;display:block}.student-metric-card p{color:var(--muted);margin:12px 0 0;font-size:13px;line-height:1.45}.student-latest-result{background:#d9c69f38;border-radius:20px;margin-top:20px;padding:18px}.student-latest-result span,.student-latest-result strong{display:block}.student-latest-result span{color:var(--muted-2);letter-spacing:.1em;text-transform:uppercase;font-size:12px;font-weight:800}.student-latest-result strong{color:var(--accent-strong);margin-top:7px}.student-latest-result p{color:var(--muted);margin:7px 0 0}.student-quick-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:22px;display:grid}.student-quick-actions a{border:1px solid var(--paper-border);background:#f8f2e3c7;border-radius:22px;min-height:126px;padding:20px}.student-quick-actions a:hover{background:var(--paper);border-color:var(--paper-border-strong)}.student-quick-actions span,.student-quick-actions strong{display:block}.student-quick-actions span{color:var(--green);letter-spacing:.12em;text-transform:uppercase;font-size:12px;font-weight:800}.student-quick-actions strong{color:var(--accent-strong);margin-top:12px;line-height:1.45}@media (max-width:1120px){.student-workspace-grid,.student-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.student-workspace-grid>.student-panel:first-child{grid-column:1/-1}}@media (max-width:760px){.student-next-lesson,.student-progress-heading{flex-direction:column;align-items:stretch}.student-next-actions{justify-content:flex-start}.student-workspace-grid,.student-metric-grid,.student-quick-actions{grid-template-columns:1fr}.student-workspace-grid>.student-panel:first-child{grid-column:auto}.student-assignment-row,.student-course-card{flex-direction:column;align-items:flex-start;display:flex}.student-assignment-state,.student-course-progress{text-align:left;flex-basis:auto}}.student-ecoin-panel,.ecoin-generator,.ecoin-preview,.ecoin-registry{background:var(--paper);border:1px solid var(--paper-border);box-shadow:0 18px 56px var(--shadow);border-radius:27px;min-width:0;padding:24px}.student-ecoin-panel{margin-top:22px;scroll-margin-top:24px}.student-ecoin-heading,.ecoin-section-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.student-ecoin-heading h2,.ecoin-generator h2,.ecoin-preview h2,.ecoin-registry h2,.admin-ecoin-entry h2{color:var(--accent-strong);margin:0}.ecoin-kicker{color:var(--green);letter-spacing:.16em;text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:800}.student-ecoin-heading>span,.ecoin-section-heading>span{color:var(--green);background:#6f7d5521;border-radius:999px;padding:8px 12px;font-weight:900}.student-ecoin-intro,.student-ecoin-explainer,.ecoin-empty-copy,.ecoin-prototype-note{color:var(--muted);line-height:1.65}.student-ecoin-intro{max-width:780px}.student-ecoin-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px;display:grid}.student-ecoin-card{border:1px solid var(--paper-border);border-radius:24px;grid-template-columns:118px minmax(0,1fr);align-items:center;gap:20px;padding:18px;display:grid}.student-ecoin-token,.ecoin-token{aspect-ratio:1;color:#fffaf0;text-align:center;background:radial-gradient(circle at 36% 28%,#fffc,#0000 34%),linear-gradient(145deg,#dcc797,#8c7950);border:1px solid #57482a3d;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;display:flex;box-shadow:inset 0 0 0 8px #fffbf133,0 14px 30px #4c3f2a33}.student-ecoin-token span{font-family:Georgia,serif;font-size:42px;font-weight:700}.student-ecoin-token small{letter-spacing:.08em;text-transform:uppercase;max-width:80px;font-size:10px;font-weight:800}.student-ecoin-copy>span{color:var(--green);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:800}.student-ecoin-copy h3{color:var(--accent-strong);margin:6px 0 0}.student-ecoin-copy>p,.student-ecoin-copy details p{color:var(--muted);line-height:1.55}.student-ecoin-copy details{border-top:1px solid var(--paper-border);margin-top:14px;padding-top:12px}.student-ecoin-copy summary{color:var(--accent);cursor:pointer;font-weight:800}.student-ecoin-status{flex-wrap:wrap;gap:7px;margin-top:14px;display:flex}.student-ecoin-status span{color:var(--green);background:#6f7d551a;border-radius:999px;padding:7px 9px;font-size:11px;font-weight:700}.student-ecoin-empty{border:1px dashed var(--paper-border-strong);background:#f8f2e3b8;border-radius:24px;align-items:center;gap:20px;margin-top:20px;padding:22px;display:flex}.student-ecoin-empty-mark{background:var(--sand);color:var(--accent-strong);border-radius:50%;flex:0 0 72px;justify-content:center;align-items:center;height:72px;font-family:Georgia,serif;font-size:34px;font-weight:700;display:flex}.student-ecoin-empty strong{color:var(--accent-strong)}.student-ecoin-empty p{color:var(--muted);margin:6px 0 0;line-height:1.55}.ecoin-admin-layout{grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);gap:20px;display:grid}.ecoin-section-heading h2{font-size:25px}.ecoin-section-heading>span{font-size:12px;font-weight:800}.ecoin-generator-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:22px;display:grid}.ecoin-generator-copy{gap:14px;margin-top:14px;display:grid}.ecoin-generator label{gap:7px;display:grid}.ecoin-generator label>span{color:var(--muted);font-size:13px;font-weight:800}.ecoin-generator input,.ecoin-generator select,.ecoin-generator textarea{border:1px solid var(--paper-border-strong);color:var(--text);font:inherit;resize:vertical;background:#fffbf1db;border-radius:14px;width:100%;padding:12px 13px}.ecoin-create-button{background:var(--accent-strong);color:var(--paper-strong);cursor:pointer;font:inherit;border:0;border-radius:16px;margin-top:18px;padding:14px 18px;font-weight:800}.ecoin-create-button:disabled{cursor:not-allowed;opacity:.45}.ecoin-created-message{color:var(--green);margin:14px 0 0;font-weight:800}.ecoin-preview{text-align:center;justify-items:center;gap:22px;display:grid}.ecoin-token{width:min(260px,100%);padding:34px}.ecoin-token-mark,.ecoin-token-type,.ecoin-token strong,.ecoin-token small{display:block}.ecoin-token-mark{font-family:Georgia,serif;font-size:62px;font-weight:700}.ecoin-token-type{letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:800}.ecoin-token strong{margin-top:10px;font-size:16px;line-height:1.35}.ecoin-token small{opacity:.86;margin-top:8px}.ecoin-token--research,.student-ecoin-token--research{background:radial-gradient(circle at 36% 28%,#fffc,#0000 34%),linear-gradient(145deg,#9eb5a2,#557065)}.ecoin-token--project,.student-ecoin-token--project{background:radial-gradient(circle at 36% 28%,#fffc,#0000 34%),linear-gradient(145deg,#b9a5c7,#715f7e)}.ecoin-token--authorship,.student-ecoin-token--authorship{background:radial-gradient(circle at 36% 28%,#fffc,#0000 34%),linear-gradient(145deg,#cda99e,#865f57)}.ecoin-token--contribution,.student-ecoin-token--contribution{background:radial-gradient(circle at 36% 28%,#fffc,#0000 34%),linear-gradient(145deg,#9faec8,#596a87)}.ecoin-preview-copy p{color:var(--muted);line-height:1.6}.ecoin-preview-copy dl{text-align:left;gap:10px;margin:20px 0 0;display:grid}.ecoin-preview-copy dl>div{background:#f8f2e3b3;border-radius:14px;justify-content:space-between;gap:20px;padding:11px 13px;display:flex}.ecoin-preview-copy dt{color:var(--muted-2)}.ecoin-preview-copy dd{color:var(--accent-strong);margin:0;font-weight:800}.ecoin-registry{margin-top:20px}.ecoin-registry-list{gap:10px;margin-top:18px;display:grid}.ecoin-registry-row{border-top:1px solid var(--paper-border);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:16px;padding:15px 0 4px;display:grid}.ecoin-registry-row:first-child{border-top:0}.ecoin-registry-row>div:first-child>span,.ecoin-registry-row>div:first-child>strong{display:block}.ecoin-registry-row>div:first-child>span{color:var(--green);text-transform:uppercase;font-size:11px;font-weight:800}.ecoin-registry-row>div:first-child>strong{color:var(--accent-strong);margin-top:4px}.ecoin-registry-row>div:first-child>p{color:var(--muted);margin:4px 0 0}.ecoin-registry-status{color:var(--muted);text-align:right;font-size:12px}.ecoin-registry-status span{display:block}.ecoin-registry-row button{border:1px solid var(--paper-border-strong);color:var(--muted);cursor:pointer;background:0 0;border-radius:12px;padding:9px 11px}.ecoin-prototype-note{margin:16px 4px 0;font-size:13px}.admin-ecoin-entry{border:1px solid var(--paper-border);background:radial-gradient(circle at 90% 10%,#ffffffb8,#0000 14rem),linear-gradient(135deg,#e7dabbe6,#dce4cde6);border-radius:26px;justify-content:space-between;align-items:center;gap:26px;margin-bottom:22px;padding:24px;display:flex}.admin-ecoin-entry p{color:var(--muted);max-width:700px;margin:8px 0 0;line-height:1.55}.admin-ecoin-entry>a{background:var(--accent-strong);color:var(--paper-strong);border-radius:16px;flex:none;padding:13px 17px;font-weight:800}@media (max-width:1120px){.ecoin-admin-layout,.student-ecoin-grid{grid-template-columns:1fr}}@media (max-width:760px){.admin-ecoin-entry{flex-direction:column;align-items:stretch}.ecoin-generator-fields{grid-template-columns:1fr}.student-ecoin-card{flex-direction:column;align-items:flex-start;display:flex}.student-ecoin-token{width:118px}.ecoin-registry-row{grid-template-columns:1fr;align-items:flex-start}.ecoin-registry-status{text-align:left}}.lesson-reflection,.teacher-reflections-panel{background:var(--paper);border:1px solid var(--paper-border);box-shadow:0 18px 56px var(--shadow);border-radius:27px;margin-top:22px;padding:24px}.lesson-reflection{background:radial-gradient(circle at 92% 8%,#ffffffc2,#0000 18rem),linear-gradient(135deg,#f8f2e3fa,#e5ebdae6)}.lesson-reflection-heading,.teacher-reflections-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.lesson-reflection-heading h2,.lesson-reflection--saved h2,.lesson-reflection--skipped h2,.teacher-reflections-heading h2{color:var(--accent-strong);margin:0}.lesson-reflection-heading>div>p:last-child{color:var(--muted);margin:8px 0 0}.lesson-reflection-kicker{color:var(--green);letter-spacing:.16em;text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:800}.lesson-reflection-heading>strong{color:var(--green);background:#6f7d5521;border:1px solid #6f7d5533;border-radius:999px;padding:9px 13px}.lesson-reflection-slider{margin-top:26px}.lesson-reflection-slider input{accent-color:var(--green);cursor:pointer;width:100%}.lesson-reflection-slider>div{color:var(--muted-2);justify-content:space-between;margin-top:7px;font-size:12px;display:flex}.lesson-reflection-factors{border:0;margin:25px 0 0;padding:0}.lesson-reflection-factors legend{color:var(--accent-strong);padding:0;font-weight:800}.lesson-reflection-factors>div{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.lesson-reflection-factor{border:1px solid var(--paper-border);color:var(--muted);cursor:pointer;font:inherit;background:#fffbf1b8;border-radius:999px;padding:9px 12px;font-size:13px}.lesson-reflection-factor:hover,.lesson-reflection-factor.is-selected{color:var(--green);background:#6f7d5524;border-color:#6f7d556b}.lesson-reflection-comment{gap:8px;margin-top:22px;display:grid}.lesson-reflection-comment>span{color:var(--muted);font-size:13px;font-weight:800}.lesson-reflection-comment textarea{border:1px solid var(--paper-border-strong);color:var(--text);font:inherit;resize:vertical;background:#fffbf1c2;border-radius:15px;width:100%;padding:12px 13px}.lesson-reflection-actions{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.lesson-reflection-actions button,.lesson-reflection--saved>button,.lesson-reflection--skipped>button{cursor:pointer;font:inherit;border-radius:15px;padding:12px 15px;font-weight:800}.lesson-reflection-submit{background:var(--accent-strong);border:1px solid var(--accent-strong);color:var(--paper-strong)}.lesson-reflection-skip,.lesson-reflection--saved>button,.lesson-reflection--skipped>button{border:1px solid var(--paper-border-strong);color:var(--muted);background:#fffbf1ad}.lesson-reflection-privacy{color:var(--muted-2);margin:15px 0 0;font-size:12px;line-height:1.5}.lesson-reflection--saved,.lesson-reflection--skipped{justify-content:space-between;align-items:center;gap:22px;display:flex}.lesson-reflection--saved p,.lesson-reflection--skipped p{color:var(--muted);margin:8px 0 0;line-height:1.55}.lesson-reflection--saved small{color:var(--muted-2);margin-top:7px;line-height:1.5;display:block}.teacher-reflections-panel{margin-bottom:22px}.teacher-reflections-heading>span{color:var(--green);background:#6f7d5521;border-radius:999px;padding:8px 11px;font-size:12px;font-weight:800}.teacher-reflections-intro{color:var(--muted);max-width:780px;margin:10px 0 0;line-height:1.6}.teacher-reflection-list{gap:10px;margin-top:20px;display:grid}.teacher-reflection-signal{border:1px solid var(--paper-border);border-left:5px solid var(--sand);background:#fffbf19e;border-radius:17px;grid-template-columns:140px minmax(0,1fr);align-items:start;gap:18px;padding:15px;display:grid}.teacher-reflection-signal--attention{border-left-color:#b57d69}.teacher-reflection-signal--neutral{border-left-color:#c6ae69}.teacher-reflection-signal--positive{border-left-color:var(--green)}.teacher-reflection-score strong,.teacher-reflection-score span,.teacher-reflection-copy strong,.teacher-reflection-copy>span{display:block}.teacher-reflection-score strong{color:var(--accent-strong)}.teacher-reflection-score span{color:var(--muted-2);margin-top:5px;font-size:12px}.teacher-reflection-copy strong{color:var(--accent-strong)}.teacher-reflection-copy>span{color:var(--muted);margin-top:4px;font-size:13px}.teacher-reflection-copy p{color:var(--green);margin:9px 0 0;font-weight:800}.teacher-reflection-copy blockquote{border-left:2px solid var(--paper-border-strong);color:var(--muted);margin:10px 0 0;padding-left:11px;line-height:1.5}.teacher-reflections-empty{border:1px dashed var(--paper-border-strong);color:var(--muted);background:#f8f2e39e;border-radius:18px;margin-top:18px;padding:17px;line-height:1.6}@media (max-width:760px){.lesson-reflection-heading,.lesson-reflection--saved,.lesson-reflection--skipped,.teacher-reflections-heading{flex-direction:column;align-items:stretch}.teacher-reflection-signal{grid-template-columns:1fr}}.ecoin-governance-note{border:1px solid var(--paper-border);background:linear-gradient(135deg,#e7dabbf0,#dce4cdeb);border-radius:22px;align-items:flex-start;gap:13px;margin-bottom:20px;padding:17px 19px;display:flex}.ecoin-governance-note strong{color:var(--accent-strong);flex:none}.ecoin-governance-note span{color:var(--muted);line-height:1.55}.ecoin-director-panel{background:var(--paper);border:1px solid var(--paper-border);box-shadow:0 18px 56px var(--shadow);border-radius:27px;margin-top:20px;padding:24px}.ecoin-director-panel>p{color:var(--muted);max-width:850px;line-height:1.6}.ecoin-director-fields{grid-template-columns:minmax(220px,.8fr) minmax(220px,1fr) auto;align-items:end;gap:12px;margin-top:17px;display:grid}.ecoin-director-fields label{gap:7px;display:grid}.ecoin-director-fields label>span{color:var(--muted);font-size:13px;font-weight:800}.ecoin-director-fields input,.ecoin-review-block textarea{border:1px solid var(--paper-border-strong);color:var(--text);font:inherit;background:#fffbf1db;border-radius:14px;width:100%;padding:12px 13px}.ecoin-director-fields button{background:var(--accent-strong);color:var(--paper-strong);cursor:pointer;font:inherit;border:0;border-radius:14px;padding:13px 16px;font-weight:800}.ecoin-action-message{color:var(--green);background:#6f7d551a;border:1px solid #6f7d5533;border-radius:14px;margin:16px 0 0;padding:11px 13px;font-weight:800}.ecoin-queue{gap:14px;margin-top:20px;display:grid}.ecoin-queue-card{border:1px solid var(--paper-border);background:#fffbf1a8;border-radius:21px;padding:18px}.ecoin-queue-header{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.ecoin-queue-header>div>span{color:var(--green);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:800}.ecoin-queue-header h3{color:var(--accent-strong);margin:5px 0 0}.ecoin-queue-header p{color:var(--muted);margin:5px 0 0}.ecoin-status-badge{border-radius:999px;flex:none;padding:8px 10px;font-size:11px;font-weight:800}.ecoin-status-badge--proposed,.ecoin-status-badge--partially_approved{color:#7b642b;background:#c6ae692b}.ecoin-status-badge--approved{color:var(--green);background:#6f7d5524}.ecoin-status-badge--needs_revision{color:#925f4c;background:#b57d6924}.ecoin-status-badge--rejected,.ecoin-status-badge--revoked{color:var(--muted);background:#6c635a1f}.ecoin-queue-summary{color:var(--muted);margin:14px 0 0;line-height:1.6}.ecoin-queue-card details{border-top:1px solid var(--paper-border);margin-top:14px;padding-top:12px}.ecoin-queue-card summary{color:var(--accent);cursor:pointer;font-weight:800}.ecoin-queue-card details p{color:var(--muted);line-height:1.6}.ecoin-queue-meta{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.ecoin-queue-meta span,.ecoin-approvals-list span{color:var(--muted);background:#6f7d5514;border-radius:999px;padding:7px 9px;font-size:11px;font-weight:700}.ecoin-approvals-list{flex-wrap:wrap;gap:7px;margin-top:10px;display:flex}.ecoin-review-note{background:#b57d6914;border-left:3px solid #b57d69;border-radius:10px;margin-top:14px;padding:11px 13px}.ecoin-review-note strong{color:var(--accent-strong)}.ecoin-review-note p{color:var(--muted);margin:5px 0 0}.ecoin-self-approval-warning{color:#8c5947;background:#b57d691c;border-radius:12px;margin:14px 0 0;padding:10px 12px;font-weight:800}.ecoin-review-block{border-top:1px solid var(--paper-border);margin-top:16px;padding-top:15px}.ecoin-review-block textarea{resize:vertical}.ecoin-review-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.ecoin-review-actions button,.ecoin-resubmit-button,.ecoin-delete-prototype{border:1px solid var(--paper-border-strong);cursor:pointer;font:inherit;border-radius:13px;padding:10px 12px;font-size:13px;font-weight:800}.ecoin-review-actions button:first-child{background:var(--green);border-color:var(--green);color:#fffdf7}.ecoin-review-actions button:nth-child(2),.ecoin-resubmit-button{color:var(--accent);background:#fffbf1d1}.ecoin-review-actions button:nth-child(3),.ecoin-delete-prototype{color:#925f4c;background:0 0}.ecoin-review-actions button:disabled{cursor:not-allowed;opacity:.42}.ecoin-resubmit-button,.ecoin-delete-prototype{margin-top:14px}.ecoin-portfolio-approvers{color:var(--muted-2);margin:10px 0 0;font-size:12px}.ecoin-portfolio-pending{border-top:1px solid var(--paper-border);margin-top:24px;padding-top:20px}.ecoin-portfolio-pending-heading{justify-content:space-between;align-items:center;gap:15px;display:flex}.ecoin-portfolio-pending-heading h3{color:var(--accent-strong);margin:0}.ecoin-portfolio-pending-heading>span{color:#7b642b;background:#c6ae6929;border-radius:999px;padding:7px 10px;font-weight:800}.ecoin-portfolio-pending>div:last-child{gap:9px;margin-top:13px;display:grid}.ecoin-portfolio-pending article{border:1px solid var(--paper-border);background:#f8f2e394;border-radius:16px;justify-content:space-between;align-items:center;gap:18px;padding:13px 14px;display:flex}.ecoin-portfolio-pending article>div:first-child>span,.ecoin-portfolio-pending article>div:first-child>strong{display:block}.ecoin-portfolio-pending article>div:first-child>span{color:var(--green);text-transform:uppercase;font-size:11px;font-weight:800}.ecoin-portfolio-pending article>div:first-child>strong{color:var(--accent-strong);margin-top:4px}.ecoin-portfolio-pending article p{color:#925f4c;margin:5px 0 0}.ecoin-portfolio-pending article>div:last-child{color:var(--muted);text-align:right;flex:none;font-size:12px}.ecoin-portfolio-pending article>div:last-child strong,.ecoin-portfolio-pending article>div:last-child span{display:block}@media (max-width:850px){.ecoin-director-fields{grid-template-columns:1fr}}@media (max-width:760px){.ecoin-governance-note,.ecoin-queue-header,.ecoin-portfolio-pending article{flex-direction:column;align-items:stretch}.ecoin-portfolio-pending article>div:last-child{text-align:left}}.director-welcome-card,.director-identity-card,.director-queue-panel,.director-decisions-panel,.director-dashboard-panel{background:var(--paper);border:1px solid var(--paper-border);box-shadow:0 18px 56px var(--shadow);border-radius:27px;padding:24px}.director-welcome-card{background:radial-gradient(circle at 92% 0,#ffffffbf,#0000 18rem),linear-gradient(135deg,#f4ebd5fa,#dce5cdf0);justify-content:space-between;align-items:center;gap:24px;display:flex}.director-welcome-card h2,.director-identity-card h2{color:var(--accent-strong);margin:0}.director-welcome-card p,.director-identity-card>div:first-child>p:last-child{color:var(--muted);max-width:760px;margin:9px 0 0;line-height:1.6}.director-welcome-card>a,.director-inline-action{background:var(--accent-strong);color:var(--paper-strong);border-radius:15px;flex:none;padding:13px 16px;font-weight:800;text-decoration:none}.director-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:20px;display:grid}.director-stat-grid>a{border:1px solid var(--paper-border);color:inherit;background:#fffbf1db;border-radius:21px;gap:7px;padding:18px;text-decoration:none;display:grid}.director-stat-grid>a:hover{border-color:var(--paper-border-strong);transform:translateY(-1px)}.director-stat-grid span{color:var(--muted);font-size:13px;font-weight:800}.director-stat-grid strong{color:var(--accent-strong);font-size:34px}.director-stat-grid small{color:var(--muted-2);line-height:1.4}.director-dashboard-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:20px;margin-top:20px;display:grid}.director-process-list{gap:9px;margin:18px 0 20px;display:grid}.director-process-list>div{border:1px solid var(--paper-border);background:#f8f2e39e;border-radius:15px;justify-content:space-between;align-items:center;gap:14px;padding:12px 13px;display:flex}.director-process-list span{color:var(--muted)}.director-process-list strong{color:var(--accent-strong);text-align:right}.director-recent-list{gap:8px;margin-top:17px;display:grid}.director-recent-list>div{border-bottom:1px solid var(--paper-border);justify-content:space-between;align-items:center;gap:18px;padding:10px 0;display:flex}.director-recent-list>div:last-child{border-bottom:0}.director-recent-list strong,.director-recent-list span{display:block}.director-recent-list strong{color:var(--accent-strong)}.director-recent-list>div>div>span{color:var(--muted-2);margin-top:4px;font-size:12px}.director-recent-list>div>span{color:var(--green);flex:none;font-size:12px;font-weight:800}.director-identity-card{margin-bottom:20px}.director-current-identity{color:var(--muted);margin:15px 0 0}.director-current-identity strong{color:var(--accent-strong)}.director-queue-panel,.director-decisions-panel{margin-top:20px}.director-empty-state{border:1px dashed var(--paper-border-strong);color:var(--muted);background:#f8f2e394;border-radius:17px;margin:18px 0 0;padding:16px;line-height:1.6}.director-decision-list{gap:9px;margin-top:18px;display:grid}.director-decision-list>article{border:1px solid var(--paper-border);background:#fffbf1a6;border-radius:16px;justify-content:space-between;align-items:center;gap:18px;padding:13px 14px;display:flex}.director-decision-list span,.director-decision-list strong{display:block}.director-decision-list>article>div:first-child>span{color:var(--green);text-transform:uppercase;font-size:11px;font-weight:800}.director-decision-list>article>div:first-child>strong{color:var(--accent-strong);margin-top:4px}.director-decision-list p{color:var(--muted);margin:4px 0 0}.director-decision-list>article>div:last-child{color:var(--muted);text-align:right;flex:none;font-size:12px}.director-decision-list>article>div:last-child strong{color:var(--accent)}.ecoin-proposal-history{gap:10px;margin-top:18px;display:grid}.ecoin-proposal-history>article{border:1px solid var(--paper-border);background:#fffbf1a8;border-radius:17px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px;display:grid}.ecoin-proposal-history>article>div:first-child>span,.ecoin-proposal-history>article>div:first-child>strong{display:block}.ecoin-proposal-history>article>div:first-child>span{color:var(--green);text-transform:uppercase;font-size:11px;font-weight:800}.ecoin-proposal-history>article>div:first-child>strong{color:var(--accent-strong);margin-top:4px}.ecoin-proposal-history>article>div:first-child>p{color:var(--muted);margin:4px 0 0}.ecoin-proposal-history-status{color:var(--muted);text-align:right;font-size:12px}.ecoin-proposal-history-status strong,.ecoin-proposal-history-status span{display:block}.ecoin-proposal-history-status strong{color:var(--accent)}.ecoin-proposal-review-note{background:#b57d6914;border-left:3px solid #b57d69;border-radius:10px;grid-column:1/-1;padding:10px 12px}.ecoin-proposal-review-note span{color:var(--accent-strong);font-size:12px;font-weight:800}.ecoin-proposal-review-note p{color:var(--muted);margin:4px 0 0}.ecoin-proposal-history button{border:1px solid var(--paper-border-strong);color:var(--accent);cursor:pointer;font:inherit;background:#fffbf1db;border-radius:12px;grid-column:1/-1;justify-self:start;padding:9px 11px;font-size:12px;font-weight:800}@media (max-width:980px){.director-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.director-dashboard-grid{grid-template-columns:1fr}}@media (max-width:760px){.director-welcome-card,.director-decision-list>article{flex-direction:column;align-items:stretch}.director-stat-grid{grid-template-columns:1fr}.director-decision-list>article>div:last-child{text-align:left}.ecoin-proposal-history>article{grid-template-columns:1fr}.ecoin-proposal-history-status{text-align:left}}.promotion-data-notice{border:1px dashed var(--paper-border-strong);background:#fffaefb8;border-radius:18px;justify-content:space-between;align-items:flex-start;gap:22px;margin-bottom:20px;padding:15px 18px;display:flex}.promotion-data-notice div{gap:4px;min-width:210px;display:grid}.promotion-data-notice strong{color:var(--accent-strong)}.promotion-data-notice span{color:var(--muted-2);letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:700}.promotion-data-notice p{color:var(--muted);max-width:820px;margin:0;line-height:1.5}.promotion-section-heading{justify-content:space-between;align-items:end;margin-top:28px;display:flex}.promotion-section-heading .eyebrow{margin-bottom:8px}.promotion-section-heading h2{color:var(--accent-strong);margin:0;font-size:28px}.promotion-funnel{gap:10px;margin-top:22px;display:grid}.promotion-funnel-step{background:var(--paper);border:1px solid var(--paper-border);box-shadow:0 12px 36px var(--shadow);border-radius:20px;grid-template-columns:44px minmax(0,1fr) auto 90px;align-items:center;gap:16px;padding:16px 18px;display:grid}.promotion-funnel-step>span{color:var(--accent);background:#d9c69f57;border-radius:14px;justify-content:center;align-items:center;width:38px;height:38px;font-size:12px;font-weight:800;display:flex}.promotion-funnel-step h2{color:var(--accent-strong);margin:0 0 4px;font-size:18px}.promotion-funnel-step p{color:var(--muted);margin:0;line-height:1.4}.promotion-funnel-step strong{color:var(--accent-strong);font-size:25px}.promotion-funnel-step small{color:var(--green);text-align:right;font-size:14px;font-weight:800}.promotion-recommendation-list{gap:16px;margin-top:22px;display:grid}.promotion-recommendation-list.compact{grid-template-columns:repeat(auto-fit,minmax(330px,1fr))}.promotion-recommendation-card{background:var(--paper);border:1px solid var(--paper-border);box-shadow:0 18px 56px var(--shadow);border-radius:24px;padding:22px}.promotion-recommendation-header{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.promotion-area{color:var(--muted-2);letter-spacing:.1em;text-transform:uppercase;margin-bottom:7px;font-size:11px;font-weight:800;display:block}.promotion-recommendation-card h2,.promotion-recommendation-card h3{color:var(--accent-strong)}.promotion-recommendation-card h2{margin:0;font-size:23px;line-height:1.18}.promotion-recommendation-card>p{color:var(--muted);line-height:1.55}.promotion-recommendation-badges{flex:none;place-items:flex-end end;gap:7px;display:grid}.promotion-priority,.promotion-status{white-space:nowrap;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:800;display:inline-flex}.promotion-priority.high{color:#8b3d2d;background:#a34c371f}.promotion-priority.medium{color:#7d5823;background:#b5843e24}.promotion-priority.low{color:#52603e;background:#6f7d5524}.promotion-status{color:var(--accent);background:#d9c69f47}.promotion-recommendation-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px;display:grid}.promotion-recommendation-grid section,.promotion-ai-review section{border:1px solid var(--paper-border);background:#f8f2e7a8;border-radius:17px;padding:15px}.promotion-recommendation-grid h3{margin:0 0 7px;font-size:14px}.promotion-recommendation-grid p,.promotion-ai-review p{color:var(--muted);margin:0;line-height:1.5}.promotion-recommendation-meta,.promotion-mini-meta{gap:12px;margin:18px 0 0;display:grid}.promotion-recommendation-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.promotion-mini-meta{grid-template-columns:1fr}.promotion-recommendation-meta div,.promotion-mini-meta div{border-top:1px solid var(--paper-border);padding-top:11px}.promotion-recommendation-meta dt,.promotion-mini-meta dt{color:var(--muted-2);letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px;font-size:11px;font-weight:800}.promotion-recommendation-meta dd,.promotion-mini-meta dd{color:var(--accent-strong);margin:0;line-height:1.45}.promotion-ai-review{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px;display:grid}.promotion-ai-review span{color:var(--accent);margin-bottom:7px;font-size:12px;font-weight:800;display:block}@media (max-width:1050px){.promotion-ai-review{grid-template-columns:1fr}}@media (max-width:760px){.promotion-data-notice,.promotion-recommendation-header{display:grid}.promotion-recommendation-badges{justify-items:start}.promotion-funnel-step{grid-template-columns:40px minmax(0,1fr) auto}.promotion-funnel-step small{text-align:left;grid-column:2/-1}.promotion-recommendation-grid,.promotion-recommendation-meta{grid-template-columns:1fr}}.promotion-live-snapshot{background:var(--paper);border:1px solid var(--paper-border);box-shadow:0 18px 56px var(--shadow);border-radius:22px;margin-top:20px;padding:20px}.promotion-live-heading{justify-content:space-between;align-items:flex-end;gap:18px;display:flex}.promotion-live-heading .eyebrow{margin-bottom:7px}.promotion-live-heading h2{color:var(--accent-strong);margin:0;font-size:26px}.promotion-live-heading button{background:var(--accent-strong);color:var(--paper-strong);cursor:pointer;font:inherit;border:0;border-radius:14px;padding:10px 14px;font-weight:700}.promotion-live-state{color:var(--muted);margin:18px 0 0;line-height:1.55}.promotion-live-state.error{color:#8b3d2d}.promotion-live-stats,.promotion-live-event-grid{gap:12px;margin-top:18px;display:grid}.promotion-live-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.promotion-live-event-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.promotion-live-stats>div,.promotion-live-event-grid>div{border:1px solid var(--paper-border);background:#f8f2e7b3;border-radius:16px;gap:7px;padding:14px;display:grid}.promotion-live-stats span,.promotion-live-event-grid span{color:var(--muted-2);font-size:12px;font-weight:700}.promotion-live-stats strong,.promotion-live-event-grid strong{color:var(--accent-strong);overflow-wrap:anywhere;font-size:21px}.promotion-live-recent{gap:8px;margin-top:18px;display:grid}.promotion-live-recent>div{border-top:1px solid var(--paper-border);justify-content:space-between;align-items:center;gap:14px;padding-top:10px;display:flex}.promotion-live-recent strong,.promotion-live-recent span{display:block}.promotion-live-recent strong{color:var(--accent-strong)}.promotion-live-recent span,.promotion-live-recent small{color:var(--muted-2);margin-top:3px}@media (max-width:850px){.promotion-live-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.promotion-live-heading{align-items:stretch;display:grid}.promotion-live-heading button{justify-self:start}.promotion-live-stats{grid-template-columns:1fr}}.workspace-compact.admin-shell{grid-template-columns:206px minmax(0,1fr)!important;gap:16px!important;padding:16px!important}.workspace-compact .sidebar{top:16px;border-radius:20px!important;padding:13px!important}.workspace-compact .brand{gap:9px!important;margin-bottom:14px!important}.workspace-compact .brand-logo-wrap{border-radius:14px!important;width:46px!important;height:42px!important}.workspace-compact .brand-logo{width:42px!important}.workspace-compact .brand-text strong{font-size:20px!important}.workspace-compact .brand-text small{font-size:11px!important}.workspace-compact .nav{gap:4px!important}.workspace-compact .nav-group{gap:4px}.workspace-compact .nav-group-title{padding:0 9px;font-size:9px}.workspace-compact .nav a{border-radius:10px!important;padding:7px 9px!important;font-size:13px!important}.workspace-compact .page-header{border-radius:20px!important;margin-bottom:12px!important;padding:14px 20px!important}.workspace-compact .eyebrow{letter-spacing:.16em!important;margin-bottom:5px!important;font-size:10px!important}.workspace-compact h1{font-size:clamp(30px,2.5vw,36px)!important;line-height:1.05!important}.workspace-compact .lead{margin-top:7px!important;font-size:14px!important;line-height:1.35!important}.teacher-today-grid,.student-today-grid{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:12px;display:grid}.teacher-today-stack{gap:10px;display:grid}.workspace-compact .teacher-next-lesson,.workspace-compact .student-next-lesson{box-shadow:0 12px 36px var(--shadow);border-radius:20px;align-items:flex-start;gap:14px;min-height:0;padding:16px 18px}.workspace-compact .teacher-next-lesson h2,.workspace-compact .student-next-lesson h2{letter-spacing:-.02em;font-size:clamp(19px,1.65vw,24px);line-height:1.14}.workspace-compact .teacher-section-kicker,.workspace-compact .student-section-kicker{letter-spacing:.11em;margin-bottom:5px;font-size:10px}.workspace-compact .teacher-next-meta,.workspace-compact .student-next-meta{margin-top:7px;font-size:14px}.workspace-compact .teacher-next-status,.workspace-compact .student-next-status{margin-top:6px;font-size:12px;line-height:1.4}.workspace-compact .teacher-secondary-action,.workspace-compact .student-secondary-action{border-radius:11px;flex:none;padding:9px 11px;font-size:13px}.workspace-compact .teacher-panel,.workspace-compact .student-panel,.workspace-compact .student-progress-panel{box-shadow:0 12px 36px var(--shadow);border-radius:18px;padding:13px 15px}.workspace-compact .teacher-panel-header,.workspace-compact .student-panel-header{gap:12px}.workspace-compact .teacher-panel h2,.workspace-compact .student-panel h2,.workspace-compact .student-progress-panel h2{font-size:18px;line-height:1.2}.workspace-compact .teacher-lesson-list,.workspace-compact .teacher-student-list,.workspace-compact .student-assignment-list,.workspace-compact .student-course-list{gap:5px;margin-top:8px}.workspace-compact .teacher-lesson-row{grid-template-columns:86px minmax(0,1fr);gap:8px;padding:7px 0 2px}.workspace-compact .teacher-lesson-row time,.workspace-compact .teacher-lesson-row strong{font-size:12px}.workspace-compact .teacher-lesson-row p{margin-top:2px;font-size:11px}.workspace-compact .teacher-empty-state{margin:8px 0 0;font-size:12px;line-height:1.4}.workspace-compact .teacher-attention-compact .teacher-student-row{border:0;border-top:1px solid var(--paper-border);border-radius:0;gap:2px;padding:7px 0 0;display:grid}.workspace-compact .teacher-attention-compact .teacher-student-row span{color:var(--muted);font-size:11px}.workspace-compact-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px!important;margin-top:10px!important}.workspace-compact-stats .stat-card{border-radius:15px!important;padding:10px 12px!important}.workspace-compact-stats .stat-card p{margin-bottom:3px!important;font-size:11px!important}.workspace-compact-stats .stat-card strong{display:inline;margin:0 7px 0 0!important;font-size:21px!important}.workspace-compact-stats .stat-card span{font-size:11px!important}.student-today-grid .student-assignment-row{gap:10px;padding:7px 0 2px}.student-today-grid .student-assignment-main>span{font-size:9px}.student-today-grid .student-assignment-main strong,.student-today-grid .student-assignment-state strong{margin-top:2px;font-size:12px}.student-today-grid .student-assignment-state{flex-basis:105px}.student-today-schedule{border:1px solid var(--paper-border);background:#fffbf1b3;border-radius:16px;justify-content:space-between;align-items:center;gap:18px;margin-top:10px;padding:10px 14px;display:flex}.student-today-schedule p{margin:0 0 3px}.student-today-schedule>div:first-child>strong{color:var(--accent-strong);font-size:14px}.student-today-lessons{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.student-today-lessons span{color:var(--muted);background:#d9c69f40;border-radius:10px;gap:2px;padding:6px 9px;font-size:11px;display:grid}.student-today-lessons time{color:var(--accent-strong);font-weight:800}.workspace-compact .stats-grid:not(.workspace-compact-stats){gap:8px!important;margin-top:12px!important}.workspace-compact .stats-grid:not(.workspace-compact-stats) .stat-card{padding:12px!important}.workspace-compact .stats-grid:not(.workspace-compact-stats) .stat-card strong{font-size:24px!important}.student-analysis-grid{grid-template-columns:1fr;margin-top:12px}.workspace-compact .student-progress-panel,.workspace-compact .teacher-quick-actions,.workspace-compact .student-quick-actions{margin-top:12px}.workspace-compact .teacher-quick-actions a,.workspace-compact .student-quick-actions a{border-radius:16px;min-height:88px;padding:14px}@media (max-width:1180px){.teacher-today-grid,.student-today-grid{grid-template-columns:1fr}.teacher-today-stack{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.workspace-compact.admin-shell{grid-template-columns:1fr!important;padding:10px!important}.workspace-compact .page-header{padding:13px 15px!important}.workspace-compact h1{font-size:28px!important}.workspace-compact .teacher-next-lesson,.workspace-compact .student-next-lesson,.student-today-schedule{align-items:stretch;display:grid}.teacher-today-stack,.workspace-compact-stats{grid-template-columns:1fr}.student-today-lessons{justify-content:flex-start}}
.auth-screen{justify-content:center;align-items:center;min-height:100vh;padding:28px;display:flex}.auth-card{border:1px solid var(--paper-border);background:#fffbf1eb;border-radius:32px;width:100%;max-width:520px;padding:36px;box-shadow:0 28px 90px #4c3f2a29}.auth-brand{align-items:center;gap:14px;margin-bottom:34px;display:flex}.auth-brand img{object-fit:contain;background:#eadfc8;border:1px solid #d4c2a4;border-radius:20px}.auth-brand strong,.auth-brand span{display:block}.auth-brand strong{color:var(--accent-strong);font-size:26px}.auth-brand span{color:var(--muted-2);margin-top:2px}.auth-kicker,.access-panel-heading p{color:var(--accent);letter-spacing:.16em;text-transform:uppercase;margin:0 0 10px;font-size:12px;font-weight:800}.auth-card h1{font-size:clamp(32px,7vw,48px)!important;line-height:1.02!important}.auth-lead{color:var(--muted);margin:18px 0 26px;font-size:16px;line-height:1.55}.auth-form,.access-create-form{gap:14px;display:grid}.auth-form label,.access-create-form label{gap:7px;display:grid}.auth-form label span,.access-create-form label span{color:var(--muted);font-size:13px;font-weight:700}.access-create-form small{color:var(--muted-2);font-size:11px;line-height:1.45}.access-role-picker{border:1px solid var(--paper-border);border-radius:16px;min-width:0;margin:2px 0;padding:14px}.access-role-picker legend{color:var(--accent-strong);padding:0 7px;font-size:13px;font-weight:800}.access-role-options{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;display:grid}.access-role-options label{border:1px solid var(--paper-border);cursor:pointer;background:#fffaedb8;border-radius:11px;align-items:center;gap:9px;min-width:0;padding:9px 10px;display:flex}.access-role-options label:has(input:checked){background:#6f7d551f;border-color:#6f7d5561}.access-role-options input[type=checkbox]{accent-color:var(--green);flex:none;width:17px;height:17px;margin:0}.access-role-options label span{color:var(--accent-strong);font-size:12px;line-height:1.3}.auth-form input,.access-create-form input:not([type=checkbox]),.access-create-form select{border:1px solid var(--paper-border);color:var(--text);font:inherit;background:#fffaedf5;border-radius:14px;outline:none;width:100%;padding:12px 13px}.auth-form input:focus,.access-create-form input:not([type=checkbox]):focus,.access-create-form select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #6f5f3f1f}.auth-form button,.access-create-form button{background:var(--accent-strong);color:#fffaf0;cursor:pointer;font:inherit;border:0;border-radius:14px;margin-top:4px;padding:13px 16px;font-weight:800}.auth-form button:disabled,.access-create-form button:disabled,.access-actions button:disabled{cursor:wait;opacity:.56}.auth-error{color:#7b332a;background:#9941341a;border:1px solid #99413440;border-radius:12px;margin:0;padding:11px 13px;line-height:1.45}.auth-hint{color:var(--muted-2);margin:0;font-size:13px;line-height:1.45}.session-user{border-bottom:1px solid var(--paper-border);border-top:1px solid var(--paper-border);gap:4px;margin:0 0 18px;padding:14px 4px;display:grid}.session-user strong{color:var(--accent-strong);font-size:14px}.session-user>span{color:var(--muted-2);font-size:12px}.session-user-roles{flex-wrap:wrap;gap:5px;margin-top:3px;display:flex}.session-user-roles span{color:var(--accent);background:#d9c69f57;border-radius:999px;padding:4px 7px;font-size:10px;font-weight:700}.session-user form{margin-top:6px}.session-user button{color:var(--accent);cursor:pointer;font:inherit;background:0 0;border:0;padding:0;font-size:12px;font-weight:700}.access-layout{grid-template-columns:minmax(300px,.78fr) minmax(520px,1.22fr);gap:18px;display:grid}.access-panel{background:var(--paper);border:1px solid var(--paper-border);box-shadow:0 18px 56px var(--shadow);border-radius:22px;align-self:start;padding:22px}.access-panel-heading{justify-content:space-between;align-items:start;gap:16px;margin-bottom:20px;display:flex}.access-panel-heading h2{color:var(--accent-strong);margin:0;font-size:24px}.access-panel-heading>span{color:var(--muted-2);white-space:nowrap;font-size:12px}.credentials-card{background:#6f7d5521;border:1px solid #6f7d554d;border-radius:16px;margin-top:18px;padding:16px}.credentials-card>p{color:var(--green);letter-spacing:.1em;text-transform:uppercase;margin:0 0 7px;font-size:11px;font-weight:800}.credentials-card>strong{color:var(--accent-strong);font-size:18px;display:block}.credentials-card dl{gap:8px;margin:14px 0;display:grid}.credentials-card dl div{background:#fffbf1b8;border-radius:10px;grid-template-columns:120px 1fr;padding:9px 10px;display:grid}.credentials-card dt{color:var(--muted-2)}.credentials-card dd{color:var(--accent-strong);overflow-wrap:anywhere;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:800}.credentials-card>span{color:var(--muted);font-size:12px;line-height:1.45}.access-user-list{gap:10px;display:grid}.access-user-row{border:1px solid var(--paper-border);background:#fffaedb3;border-radius:16px;grid-template-columns:minmax(160px,1fr) minmax(150px,.9fr) auto;align-items:center;gap:10px 14px;padding:14px;display:grid}.access-user-main strong,.access-user-main span{display:block}.access-user-main strong{color:var(--accent-strong)}.access-user-main span,.access-user-meta{color:var(--muted-2);margin-top:3px;font-size:12px}.access-user-role{flex-wrap:wrap;gap:5px;display:flex}.access-user-role span{color:var(--accent);background:#d9c69f57;border-radius:999px;padding:5px 8px;font-size:11px}.access-status{border-radius:999px;padding:6px 9px;font-size:11px;font-weight:800}.access-status.is-active{color:#53603e;background:#6f7d5529}.access-status.is-invited{color:#75602f;background:#c9a85f2e}.access-status.is-blocked{color:#7b332a;background:#9941341f}.access-user-meta,.access-actions,.access-protected{grid-column:1/-1}.access-actions{flex-wrap:wrap;gap:8px;display:flex}.access-actions button{border:1px solid var(--paper-border-strong);color:var(--accent);cursor:pointer;font:inherit;background:0 0;border-radius:10px;padding:7px 9px;font-size:12px}.access-protected{color:var(--muted-2);font-size:11px}@media (max-width:1120px){.access-layout{grid-template-columns:1fr}}@media (max-width:680px){.auth-screen{padding:14px}.auth-card{border-radius:24px;padding:24px}.access-user-row{grid-template-columns:1fr}.access-user-meta,.access-actions,.access-protected{grid-column:auto}}
.wide-card{align-self:start;min-height:0}.content>section,.module-grid>*,.student-profile-grid>*,.lesson-layout>*,.research-model-grid>*{min-width:0;min-height:0}.module-grid>*,.student-profile-grid>*,.lesson-layout>*,.research-model-grid>*{align-self:start}.content>section+section{margin-top:24px}.workspace-compact .content>section+section{margin-top:14px}
