:root{--bg:#f4f6fa;--panel:#fff;--text:#252d3a;--muted:#6f7b8c;--line:#e1e6ee;--primary:#1d5fd2;--primary-dark:#174caf;--soft:#edf3fc;--cream:#fff2e8;--danger:#b54a46;--shadow:0 12px 50px #252d3a0b;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:Segoe UI,Arial,sans-serif;font-size:14px}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h1,h2{letter-spacing:-1.1px}h3{font-size:16px;font-weight:600}p{line-height:1.65}button{color:inherit}:is(button:focus-visible,a:focus-visible){outline-offset:3px;outline:3px solid #ff9100}input,select,textarea{background:var(--panel);border:1px solid var(--line);width:100%;color:var(--text);border-radius:8px;outline:none;padding:12px 14px;transition:border-color .15s}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #1d5fd218}input::placeholder,textarea::placeholder{color:#929eaf}textarea{resize:vertical;line-height:1.75}label{margin:18px 0;font-size:13px;font-weight:500;display:block}label input,label select,label textarea,label .password{margin-top:8px}.password{position:relative}.password input{margin:0;padding-right:44px}.password .icon-btn{color:var(--muted);position:absolute;top:4px;right:5px}.icon-btn{background:0 0;border:0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.icon-btn:hover{background:var(--soft)}.button{border:1px solid var(--line);background:var(--panel);white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:9px;min-height:42px;padding:11px 17px;font-size:13px;font-weight:600;transition:background .15s,transform .15s;display:inline-flex}.button:hover{background:var(--soft)}.button.primary{background:var(--primary);border-color:var(--primary);color:#fff}.button.primary:hover{background:var(--primary-dark)}.button.small{min-height:32px;padding:7px 12px;font-size:12px}.button.destructive{color:#fff;background:var(--danger);border-color:var(--danger)}.full{width:100%}.text-button{color:var(--primary);background:0 0;border:0;align-items:center;gap:6px;padding:6px 0;font-size:12px;font-weight:600;display:inline-flex}.text-button:hover{text-decoration:underline}.danger{color:var(--danger)}.muted{color:var(--muted)}.tiny{font-size:12px}.eyebrow{letter-spacing:2px;color:#a65100;margin-bottom:13px;font-size:10px;font-weight:700;display:block}.eyebrow.light{color:#ff9100}.brand{letter-spacing:-1.7px;cursor:pointer;align-items:center;font-size:33px;font-weight:650;display:flex}.brand-icon{margin-right:10px;display:flex}.brand-icon svg{stroke-width:1.7px;width:29px;height:29px}.brand-dot{color:#ff9100}.little-icon{background:var(--soft);border:1px solid var(--line);border-radius:13px;justify-content:center;align-items:center;width:49px;height:49px;margin-bottom:28px;display:flex}.login{grid-template-columns:1fr 1fr;min-height:100vh;display:grid}.login-story{color:#f8fafc;background:#252d3a;flex-direction:column;padding:40px 58px 25px;display:flex;position:relative;overflow:hidden}.login-story:after{content:"";opacity:.045;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.65' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:0}.story-content{width:100%;max-width:490px;margin:auto;padding:54px 0 18px}.story-content h1{letter-spacing:-3px;margin:22px 0;font-size:clamp(44px,5.1vw,73px);font-weight:500;line-height:1.04}.story-content em{color:#ff9100;font-family:Georgia,serif;font-weight:400}.story-content>p{color:#b8c5d8;font-size:15px;line-height:1.85}.yearbook-art{height:305px;margin:37px 0 0 48px;position:relative}.paper{border-radius:3px;width:246px;height:266px;position:absolute;box-shadow:5px 14px 25px #14243c40}.paper-back{color:#252d3a;background:#ff9100;padding:20px;font-family:Georgia,serif;font-style:italic;top:10px;left:5px;transform:rotate(-13deg)}.paper-front{color:#263b5a;background:#f8fafc;padding:15px;top:2px;left:40px;transform:rotate(8deg)}.paper-top{letter-spacing:1.5px;justify-content:space-between;margin-bottom:13px;font-size:8px;font-weight:700;display:flex}.paper-top span{font-size:13px}.paper-visual{background:#c7dafa;height:177px;position:relative;overflow:hidden}.sun-shape{background:#ff9100;border-radius:50%;width:79px;height:79px;position:absolute;top:20px;right:22px}.hill{border-radius:50%;width:230px;height:170px;position:absolute;bottom:-50px}.hill-one{background:#6098ed;left:-95px;transform:rotate(-30deg)}.hill-two{background:#2365cf;width:285px;height:230px;bottom:-85px;right:-100px;transform:rotate(20deg)}.visual-word{color:#fff;letter-spacing:-1px;font-family:Georgia,serif;font-size:38px;font-style:italic;line-height:.95;position:absolute;top:44px;left:22px}.paper-bottom{justify-content:space-between;align-items:center;margin-top:17px;font-size:8px;display:flex}.art-star{color:#ff9100;font-size:66px;font-weight:200;position:absolute;top:-7px;left:307px}.handwritten{white-space:nowrap;color:#ff9100;font-family:Georgia,serif;font-size:17px;font-style:italic;position:absolute;bottom:17px;left:233px;transform:rotate(-9deg)}.story-footer{color:#9daec6;letter-spacing:.5px;justify-content:space-between;margin-top:20px;font-size:10px;display:flex}.login-form-wrap{background:var(--panel);flex-direction:column;justify-content:center;align-items:center;padding:80px 55px;display:flex;position:relative}.login-form-wrap>.theme{position:absolute;top:28px;right:29px}.login-form{width:100%;max-width:355px}.login-form h2{white-space:pre-line;margin:10px 0 16px;font-size:32px;font-weight:550;line-height:1.3}.login-form>p{color:var(--muted);margin-bottom:29px;font-size:13px}.login-form label{margin:20px 0}.login-form input{height:48px}.login-submit{justify-content:space-between;width:100%;height:47px;margin-top:7px}.forgot{text-align:center;margin:21px auto;font-size:12px;display:block}.login-note{border-top:1px solid var(--line);color:#60718a;justify-content:center;align-items:center;gap:12px;margin-top:35px;padding-top:30px;font-size:11px;display:flex}.login-note span{color:var(--muted)}.login-footer{color:var(--muted);justify-content:space-between;font-size:10px;display:flex;position:absolute;bottom:28px;left:45px;right:45px}.loading{min-height:100vh;color:var(--primary);flex-direction:column;justify-content:center;align-items:center;gap:20px;display:flex}.sidebar{background:var(--panel);border-right:1px solid var(--line);z-index:30;flex-direction:column;width:242px;padding:28px 18px 0;display:flex;position:fixed;top:0;bottom:0;left:0}.sidebar>.brand{margin:0 15px 30px}.workspace-badge{border:1px solid var(--line);border-radius:9px;align-items:center;gap:11px;margin:0 3px 28px;padding:12px 10px;display:flex}.workspace-icon{background:var(--cream);border-radius:7px;place-items:center;width:34px;height:35px;display:grid}.workspace-badge strong{text-overflow:ellipsis;white-space:nowrap;max-width:134px;font-size:12px;display:block;overflow:hidden}.workspace-badge span:not(.workspace-icon){color:var(--muted);margin-top:5px;font-size:10px;display:block}.nav-label{letter-spacing:1.5px;color:#8e9aab;margin:0 14px 12px;font-size:9px;font-weight:600}.sidebar nav{flex-direction:column;gap:4px;display:flex}.sidebar nav button,.sidebar-bottom>button{color:#6e7b8d;text-align:left;background:0 0;border:0;border-radius:7px;align-items:center;gap:12px;width:100%;min-height:42px;padding:12px 13px;font-size:12px;display:flex}.sidebar nav button.active,.sidebar-bottom>button.active{background:var(--soft);color:var(--primary);font-weight:650}.sidebar nav button:hover,.sidebar-bottom>button:hover{background:var(--soft)}.nav-count{color:#1d5fd2;background:#dce9ff;border-radius:5px;margin-left:auto;padding:3px 6px;font-size:10px}.sidebar-bottom{margin-top:auto;padding-top:22px}.sidebar-note{background:var(--cream);color:#a65100;border:1px solid #f4d8c3;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:17px;padding:18px 12px;font-size:12px;line-height:1.65;display:flex}.sidebar-note em{font-family:Georgia,serif}.profile{border-top:1px solid var(--line);align-items:center;gap:10px;margin-top:12px;padding:19px 7px;display:flex}.profile strong{font-size:11px;display:block}.profile small{color:var(--muted);margin-top:4px;font-size:10px;display:block}.avatar{color:#42638e;background:#e5edfb;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:12px;font-weight:600;display:flex}.small-avatar{width:31px;height:31px;font-size:10px}.main-wrap{min-height:100vh;margin-left:242px}.topbar{border-bottom:1px solid var(--line);background:var(--panel);justify-content:space-between;align-items:center;height:74px;padding:0 35px;display:flex}.breadcrumb{color:var(--muted);align-items:center;gap:14px;font-size:11px;display:flex}.breadcrumb strong{color:var(--text);font-weight:500}.top-actions{align-items:center;gap:16px;display:flex}.school-year{color:var(--muted);letter-spacing:1px;border-right:1px solid var(--line);padding-right:12px;font-size:10px}.bell{position:relative}.bell i{background:#ff9100;border:1px solid #fff;border-radius:50%;width:6px;height:6px;position:absolute;top:6px;right:7px}.mobile-menu{display:none}.main-wrap main{max-width:1540px;margin:0 auto;padding:37px 36px 0}.page-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px;display:flex}.page-heading h1{margin-bottom:11px;font-size:30px;font-weight:550;line-height:1.2}.page-heading p{color:var(--muted);font-size:12px}.page-heading .eyebrow{margin-bottom:12px;font-size:9px}.heading-actions{gap:9px;display:flex}.stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:25px;display:grid}.stat{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:21px 20px}.stat-label{color:var(--muted);justify-content:space-between;align-items:center;font-size:12px;display:flex}.stat-label svg{color:#6b8ec3}.stat>strong{letter-spacing:-1px;margin:15px 0 9px;font-size:32px;font-weight:550;display:block}.stat small{color:var(--muted);font-size:10px}.stat-2{background:#fff4eb;border-color:#f6decb}.stat-2 .stat-label svg{color:#a65100}.welcome-banner{background:#eaf1fd;border:1px solid #d8e4f8;border-radius:12px;justify-content:space-between;min-height:256px;margin-bottom:29px;padding:29px 33px;display:flex;overflow:hidden}.welcome-banner h2{white-space:pre-line;letter-spacing:-.6px;font-size:30px;font-weight:500;line-height:1.15}.welcome-banner p{color:#637d9e;margin:13px 0 19px;font-size:11px}.welcome-banner .eyebrow{letter-spacing:1.6px;font-size:8px}.welcome-banner .button{min-height:35px;padding:9px 13px;font-size:11px}.banner-art{justify-content:center;align-items:center;width:260px;margin-right:23px;display:flex;position:relative}.mini-book{color:#f5f8ff;background:#2266d3;border-left:8px solid #174ca4;border-radius:3px 6px 6px 3px;flex-direction:column;gap:19px;width:158px;height:210px;padding:23px 18px;display:flex;transform:rotate(10deg);box-shadow:9px 11px #f6d5bb,18px 22px 30px #21395825}.mini-book>span{font-family:Georgia,serif;font-size:26px;line-height:.98}.mini-book em{font-weight:400}.mini-book small{letter-spacing:2px;font-size:8px}.mini-book svg{stroke-width:1px}.banner-star{color:#ff9100;font-size:59px;position:absolute;top:0;right:-10px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;overflow:hidden}.dashboard-columns{grid-template-columns:1.6fr 1fr;gap:25px;display:grid}.section-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding:21px 23px;display:flex}.section-heading h3{align-items:center;gap:9px;font-size:13px;display:flex}.count{background:var(--soft);color:var(--primary);border-radius:5px;padding:3px 6px;font-size:10px;display:inline-block}.empty{text-align:center;flex-direction:column;align-items:center;gap:13px;padding:46px 20px;display:flex}.empty-icon{border:1px solid var(--line);background:var(--soft);color:#7c95bb;border-radius:50%;place-items:center;width:59px;height:59px;margin-bottom:3px;display:grid}.empty h3{font-size:15px}.empty p{color:var(--muted);max-width:350px;font-size:12px}.quick-link{text-align:left;border:0;border-bottom:1px solid var(--line);background:0 0;align-items:center;gap:14px;width:100%;padding:19px 23px;display:flex}.quick-link:hover{background:var(--soft)}.quick-icon{background:var(--soft);color:#6688b9;border-radius:9px;flex-shrink:0;place-items:center;width:38px;height:38px;display:grid}.quick-link strong{font-size:12px;font-weight:550;display:block}.quick-link small{color:var(--muted);margin-top:5px;font-size:10px;display:block}.quick-link>svg{color:#98a5b8;margin-left:auto}.gentle-note{color:#a65100;align-items:center;gap:12px;padding:24px;font-size:11px;display:flex}.gentle-note strong{font-weight:500}.app-footer{color:#919cad;justify-content:space-between;padding:32px 0 22px;font-size:10px;display:flex}.app-footer>span:first-child{letter-spacing:-.5px;color:#7c8da4;font-size:15px}.app-footer>span>span{letter-spacing:0;margin-left:12px;font-size:9px}.filters{gap:10px;margin:0 0 22px;display:flex}.filters select{min-width:125px;max-width:230px;padding:10px 11px;font-size:12px}.search{background:var(--panel);border:1px solid var(--line);min-width:160px;max-width:310px;color:var(--muted);border-radius:8px;flex:1;align-items:center;gap:9px;margin-left:auto;padding:0 12px;display:flex}.search input{box-shadow:none;background:0 0;border:none;padding:11px 0;font-size:12px}.team-search{margin-bottom:22px;margin-left:0}.school-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.school-card{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:23px}.school-card-top{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.school-icon{background:var(--soft);color:#5d80b2;border-radius:11px;place-items:center;width:50px;height:50px;display:grid}.badge{white-space:nowrap;border-radius:5px;padding:5px 9px;font-size:10px}.badge.approved{color:#2c62b2;background:#e9f1ff}.badge.pending{color:#a65100;background:#fff0e3}.badge.neutral{background:var(--soft);color:var(--muted)}.school-card h3{margin-bottom:6px;font-size:17px}.school-card p{color:var(--muted);font-size:11px}.school-numbers{border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);gap:28px;margin:24px 0 16px;padding:17px 0;font-size:11px;display:flex}.school-numbers b{color:var(--text);margin-right:3px;font-size:17px;font-weight:550}.school-card-footer{justify-content:space-between;align-items:center;display:flex}.table-scroll{overflow:auto}table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:12px}th{text-align:left;background:var(--bg);color:var(--muted);letter-spacing:.2px;padding:13px 20px;font-size:10px;font-weight:500}td{border-top:1px solid var(--line);padding:15px 20px}td small{color:var(--muted);margin-top:5px;font-size:10px;display:block}.person-cell{align-items:center;gap:11px;display:flex}.person-cell strong{font-size:12px;font-weight:550}.username{color:var(--muted);font-size:11px}.row-actions{justify-content:flex-end;gap:2px;display:flex}.row-actions .icon-btn{color:#6f89ad;width:31px;height:31px}.align-right{text-align:right}.quota-text{font-size:11px}.quota-text b{font-weight:550}.quota-text span{color:var(--muted)}.progress{background:var(--soft);border-radius:2px;max-width:100px;height:4px;margin-top:8px;overflow:hidden}.progress i{background:#4e86df;border-radius:2px;height:100%;display:block}.friend-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.friend-card{border:1px solid var(--line);background:var(--panel);text-align:center;border-radius:10px;flex-direction:column;align-items:center;padding:28px 20px;display:flex}.large-avatar{width:57px;height:57px;font-size:19px}.friend-card h3{margin-top:17px}.friend-card p{color:var(--muted);margin:6px 0 17px;font-size:11px}.quota-chip{color:#607fa9;background:var(--soft);border-radius:5px;margin-bottom:21px;padding:6px 9px;font-size:10px}.friend-card .button{width:100%}.tabs{border-bottom:1px solid var(--line);gap:25px;margin-bottom:24px;display:flex;overflow:auto}.tabs button{color:var(--muted);white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;padding:12px 0;font-size:12px}.tabs button.selected{border-color:var(--primary);color:var(--primary);font-weight:600}.writing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.writing-card{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:21px}.panel>.writing-card{border:0;border-bottom:1px solid var(--line);border-radius:0}.writing-top{align-items:center;gap:10px;display:flex}.writing-top strong{font-size:12px}.writing-top .tiny{margin-top:5px;font-size:10px}.writing-top .badge{margin-left:auto}.writing-text{color:#69788e;white-space:pre-wrap;overflow-wrap:anywhere;max-height:210px;margin:21px 0 20px;font-size:13px;line-height:1.9;overflow:auto}.writing-bottom{color:var(--muted);border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding-top:13px;font-size:10px;display:flex}.writing-bottom>div{gap:14px;display:flex}.request-row{border-bottom:1px solid var(--line);align-items:center;gap:15px;padding:24px;display:flex}.request-row strong{font-size:13px}.request-row p{color:var(--muted);margin-top:6px;font-size:11px}.request-row .button{margin-left:auto}.import-layout,.settings-grid{grid-template-columns:1fr 1fr;gap:25px;display:grid}.import-panel{padding:30px}.step{background:var(--soft);color:#527aaa;border-radius:50%;place-items:center;width:37px;height:37px;margin-bottom:25px;font-size:12px;display:grid}.import-panel h3{margin-bottom:12px;font-size:19px}.import-panel p{color:var(--muted);font-size:12px}.template-preview{background:var(--line);border:1px solid var(--line);border-radius:7px;grid-template-columns:repeat(3,1fr);gap:1px;margin:25px 0;display:grid;overflow:hidden}.template-preview span{background:var(--bg);padding:15px 10px;font-size:10px}.import-hint{border-top:1px solid var(--line);color:#7692b7;align-items:flex-start;gap:12px;margin-top:28px;padding-top:20px;display:flex}.import-hint svg{flex-shrink:0}.import-hint p{font-size:11px}.upload-zone{background:var(--bg);color:#6b8bb5;border:1px dashed #afc4e1;border-radius:9px;flex-direction:column;justify-content:center;align-items:center;gap:14px;width:100%;margin-top:26px;padding:35px 15px;display:flex}.upload-zone strong{color:var(--text);overflow-wrap:anywhere;font-size:12px}.upload-zone span{color:var(--muted);font-size:10px}.import-summary{color:#3d6ead;align-items:center;gap:9px;margin:20px 0;font-size:12px;display:flex}.import-errors{max-height:230px;overflow:auto;display:block!important}.export-layout{grid-template-columns:1fr 1fr;gap:40px;display:grid}.export-form{padding:30px}.export-form h3{margin:23px 0 12px;font-size:20px;line-height:1.4}.export-form>p{color:var(--muted);margin-bottom:24px;font-size:12px}.export-form .button{margin-top:12px}.document-preview{flex-direction:column;justify-content:center;align-items:center;gap:30px;display:flex}.preview-sheet{color:#263b5a;background:#fff;border:1px solid #e0e7f2;width:290px;height:415px;padding:36px;transform:rotate(4deg);box-shadow:0 20px 50px #253b5717}.preview-sheet h2{margin:22px 0;font-size:32px;font-weight:500}.preview-sheet em{font-family:Georgia,serif;font-weight:400}.preview-sheet>span:not(.eyebrow){letter-spacing:1px;font-size:7px}.preview-line{background:#dfe7f4;height:1px;margin:18px 0}.skeleton{background:#dfe7f4;width:100%;height:3px;margin:10px 0}.w70{width:70%}.w50{width:50%}.preview-sheet small{letter-spacing:2px;margin-top:35px;font-size:8px;display:block}.settings-panel{padding:28px}.settings-panel>p{color:var(--muted);margin-top:14px;font-size:12px}.setting-profile{border:0;padding:25px 0}.setting-profile strong{font-size:14px}.setting-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;margin:15px 0 25px;padding-top:25px;display:flex}.setting-row p{color:var(--muted);margin-top:7px;font-size:11px}.info-box{background:var(--soft);border:1px solid var(--line);color:var(--muted);border-radius:7px;margin-bottom:22px;padding:16px;font-size:12px;line-height:1.7}.view-banner{color:#a65100;background:#fff0e3;justify-content:center;align-items:center;gap:10px;padding:10px 20px;font-size:12px;display:flex}.view-banner button{background:0 0;border:1px solid #e9bf9e;border-radius:5px;align-items:center;gap:6px;margin-left:15px;padding:6px 9px;font-size:11px;display:flex}.modal-backdrop{z-index:60;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#1c263970;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal{background:var(--panel);border:1px solid var(--line);border-radius:15px;width:100%;max-width:510px;max-height:92vh;padding:29px;overflow:auto;box-shadow:0 30px 100px #18233550}.modal-heading{justify-content:space-between;align-items:center;margin-bottom:23px;display:flex}.modal-heading .eyebrow{margin-bottom:8px;font-size:9px}.modal h2{font-size:24px;font-weight:550}.modal>p{color:var(--muted);margin:15px 0;font-size:13px}.modal form .full{margin-top:9px}.checkbox{align-items:center;gap:10px;font-size:12px;display:flex}.checkbox input{width:16px;height:16px;accent-color:var(--primary);margin:0}.modal-actions{justify-content:flex-end;gap:10px;margin-top:25px;display:flex}.editor-meta{color:var(--muted);justify-content:space-between;margin-top:-5px;margin-bottom:17px;font-size:11px;display:flex}.over-limit{color:var(--danger);font-weight:600}.modal blockquote{background:var(--bg);border-left:2px solid var(--line);white-space:pre-wrap;overflow-wrap:anywhere;margin:20px 0;padding:15px;font-size:13px}.grade-modal{text-align:center}.grade-modal .little-icon{margin:0 auto 25px}.grade-options{gap:20px;margin-top:26px;display:flex}.grade-options button{border:1px solid var(--line);background:var(--soft);border-radius:10px;flex-direction:column;flex:1;align-items:center;gap:12px;padding:23px;display:flex}.grade-options strong{font-size:42px;font-weight:400}.grade-options strong span{color:#ff9100}.grade-options>button>span{font-size:12px}.alert{border-radius:7px;justify-content:space-between;align-items:center;margin-bottom:20px;padding:12px 15px;font-size:12px;line-height:1.6;display:flex}.alert.error{color:#ad534f;background:#f9eeeb;border:1px solid #efdbd4}.toast{z-index:90;background:var(--primary-dark);color:#fff;border:1px solid #537caf;border-radius:10px;align-items:center;gap:11px;max-width:calc(100% - 32px);padding:15px 22px;font-size:12px;display:flex;position:fixed;bottom:25px;left:50%;transform:translate(-50%);box-shadow:0 8px 35px #1b35582c}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}[data-theme=dark]{--bg:#1b2029;--panel:#242b36;--text:#e8edf5;--muted:#a0adbe;--line:#364051;--primary:#2869dc;--primary-dark:#215fcb;--soft:#29384e;--cream:#38312c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=dark] .stat-2{background:#362e29;border-color:#534035}[data-theme=dark] .welcome-banner{background:#29374b;border-color:#3b5272}[data-theme=dark] .welcome-banner p{color:#a7bedf}[data-theme=dark] .avatar{color:#c0d7fb;background:#304767}[data-theme=dark] .sidebar-note{color:#ff9100;border-color:#544032}[data-theme=dark] .badge.approved{color:#bfd5ff;background:#243f68}[data-theme=dark] .badge.pending{color:#ff9100;background:#432f23}[data-theme=dark] .writing-text{color:#bcc9dd}[data-theme=dark] .alert.error{color:#e5b2a8;background:#432e28;border-color:#624036}[data-theme=dark] .text-button{color:#aacaff}@media (min-width:1500px){.login-story{padding:50px 80px 30px}.story-content{max-width:500px}.yearbook-art{height:330px;margin-top:50px}.paper{width:270px;height:287px}.paper-visual{height:198px}.art-star{left:345px}.handwritten{left:260px}.login-form{max-width:385px}}@media (max-width:1180px){.sidebar{width:215px;padding-left:12px;padding-right:12px}.main-wrap{margin-left:215px}.main-wrap main{padding:30px 25px 0}.stat{padding:18px 15px}.stat small{font-size:9px}.stats{gap:12px}.school-grid,.friend-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filters{flex-wrap:wrap}.dashboard-columns{grid-template-columns:1.3fr 1fr;gap:17px}.banner-art{width:200px;margin-right:0}.login-story{padding:35px}.yearbook-art{margin-left:0}.handwritten{font-size:14px;left:190px}.login-form-wrap{padding:80px 40px}.heading-actions .button{padding:10px 12px}.page-heading{align-items:flex-start}}@media (max-width:900px){.sidebar{width:200px}.main-wrap{margin-left:200px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-columns{grid-template-columns:1fr}.welcome-banner{padding:27px 23px}.welcome-banner h2{font-size:26px}.banner-art{width:145px;margin-left:10px}.mini-book{gap:15px;width:125px;height:178px;padding:20px 13px}.mini-book>span{font-size:23px}.banner-star{font-size:38px;right:-15px}.page-heading{flex-direction:column;gap:19px}.writing-grid,.import-layout,.settings-grid,.export-layout{grid-template-columns:1fr}.document-preview{padding:30px 0}.topbar{padding:0 25px}.school-year{display:none}.top-actions{gap:7px}.login-story{padding:30px 25px}.story-content h1{font-size:50px}.story-content>p{font-size:12px}.yearbook-art{transform-origin:0 0;height:260px;transform:scale(.85)}.handwritten{left:185px}.login-form-wrap{padding:80px 28px}.login-form h2{font-size:27px}.story-footer{font-size:8px}}@media (max-width:680px){.login{grid-template-columns:1fr}.login-story{min-height:265px;padding:23px 27px 25px}.login-story .brand{font-size:28px}.story-content{margin:0;padding:24px 0 0}.story-content .eyebrow{letter-spacing:1.5px;margin-bottom:10px;font-size:8px}.story-content h1{letter-spacing:-2px;margin:12px 0;font-size:43px}.story-content>p{max-width:230px;font-size:11px}.yearbook-art{transform-origin:100% 0;opacity:.8;width:310px;height:290px;margin:0;position:absolute;top:85px;right:-4px;transform:scale(.49)}.art-star,.handwritten,.story-footer{display:none}.login-form-wrap{min-height:560px;padding:35px 28px 80px}.login-form-wrap>.theme{top:14px;right:18px}.login-form{max-width:400px}.login-form .little-icon{display:none}.login-form h2{font-size:27px}.login-form>p{margin-bottom:20px;font-size:12px}.login-form .eyebrow{margin-top:12px}.login-note{margin-top:25px;padding-top:20px}.login-footer{font-size:9px;bottom:20px;left:28px;right:28px}.sidebar{z-index:50;width:242px;transition:transform .2s;transform:translate(-100%)}.sidebar.is-open{transform:translate(0)}.mobile-scrim{z-index:40;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#17203060;position:fixed;inset:0}.main-wrap{margin-left:0}.mobile-menu{display:inline-flex}.topbar{gap:8px;height:61px;padding:0 17px}.breadcrumb{gap:8px;margin-right:auto;font-size:10px}.breadcrumb>strong{white-space:nowrap;text-overflow:ellipsis;max-width:130px;overflow:hidden}.top-actions{gap:2px}.small-avatar{display:none}.main-wrap main{padding:27px 18px 0}.page-heading{margin-bottom:24px}.page-heading h1{font-size:27px}.page-heading p{font-size:11px}.page-heading .eyebrow{font-size:8px}.heading-actions{flex-wrap:wrap;width:100%}.heading-actions .button{font-size:11px}.stats{gap:11px;margin-bottom:19px}.stat{padding:16px}.stat-label{font-size:11px}.stat>strong{margin:12px 0 8px;font-size:29px}.stat small{font-size:9px;line-height:1.5;display:block}.welcome-banner{min-height:232px;padding:23px 21px;position:relative}.welcome-banner>div:first-child{z-index:1;max-width:73%}.welcome-banner h2{font-size:25px}.welcome-banner p{font-size:10px}.welcome-banner .eyebrow{letter-spacing:1px;font-size:7px}.banner-art{opacity:.85;width:135px;position:absolute;top:37px;right:-26px;transform:rotate(5deg)}.mini-book{width:112px;height:161px}.mini-book>span{font-size:20px}.mini-book svg{width:28px;height:28px}.mini-book small{font-size:6px}.banner-star{display:none}.school-grid,.friend-grid{grid-template-columns:1fr 1fr;gap:12px}.school-card{padding:17px}.school-card h3{font-size:15px}.school-numbers{gap:13px}.school-card-footer .text-button{font-size:10px}.school-card-footer .icon-btn{width:26px}.school-card .badge{font-size:9px}.school-icon{width:38px;height:38px}.friend-card{padding:22px 12px}.friend-card h3{font-size:13px}.friend-card p{font-size:10px}.friend-card .button{padding:10px;font-size:11px}.friend-card .quota-chip{font-size:8px}.filters{gap:8px}.filters select{flex:40%;width:calc(50% - 4px);min-width:0;max-width:none;font-size:11px}.filters .search{flex:100%;max-width:none;margin-left:0}.section-heading{padding:18px}.section-heading h3{font-size:12px}.app-footer>span>span{display:none}.app-footer{font-size:8px}.view-banner{flex-wrap:wrap;padding:9px;font-size:10px}.view-banner button{margin-left:0}.request-row{flex-wrap:wrap;gap:10px;padding:17px 14px}.request-row .button{padding:8px 11px;font-size:10px}.modal-backdrop{padding:13px}.modal{max-height:94vh;padding:23px}.modal h2{font-size:23px}.import-panel,.export-form,.settings-panel{padding:23px}.writing-card{padding:17px}.writing-top .badge{padding:4px 6px;font-size:8px}.writing-top strong{font-size:11px}.writing-top .tiny{font-size:9px}.tabs{gap:18px}.tabs button{font-size:11px}.toast{width:max-content;padding:12px 16px;font-size:11px;bottom:18px}.modal-actions .button{padding:10px 12px;font-size:11px}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.pagination{color:var(--muted);justify-content:space-between;align-items:center;margin-top:22px;font-size:12px;display:flex}.pagination>div{gap:8px;display:flex}[data-theme=dark] .eyebrow,[data-theme=dark] .eyebrow.light{color:#ff9100}[data-theme=dark] .quota-chip{color:#aacaff}[data-theme=dark] .login-note{color:#a0adbe}[data-theme=dark] .stat-label svg,[data-theme=dark] .quick-icon,[data-theme=dark] .school-icon{color:#9dbff2}.brand-logo-slot{flex-shrink:0;width:220px;height:52px;display:block}.brand-logo-image{object-fit:contain;object-position:left center;width:100%;height:100%;display:block}.sidebar .brand-logo-slot{width:174px;height:46px}.yearbook-art .paper-front{padding:13px 13px 23px}.graduate-photo{object-fit:cover;object-position:center 38%;border-radius:1px;width:100%;height:100%;display:block}@media (max-width:680px){.login-story .brand-logo-slot{width:185px;height:44px}}.school-logo{object-fit:contain;width:100%;height:100%;display:block}.school-icon:has(.school-logo){background:var(--panel);width:76px;height:76px;padding:8px}.workspace-icon .school-logo{max-width:34px;max-height:34px}.period-panel{justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;padding:24px;display:flex}.period-panel h3{margin:0 0 8px}.period-panel p{color:var(--muted);margin:0 0 12px}.import-scope{grid-template-columns:2fr 1fr;gap:20px;margin-bottom:24px;padding:24px;display:grid}.import-scope label{margin:0}.logo-preview{border:1px solid var(--line);border-radius:12px;flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:20px;padding:16px;display:flex}.logo-preview img{object-fit:contain;width:80px;height:80px}.logo-preview span{color:var(--muted);font-size:12px}.writing-ended{background:#ff910014;border:1px solid #ff9100;align-items:center;gap:12px;margin-bottom:24px;display:flex}.writing-ended p{margin:6px 0 0;font-size:13px}button:disabled{cursor:not-allowed}@media (max-width:640px){.period-panel{flex-direction:column;align-items:stretch;padding:18px}.import-scope{grid-template-columns:1fr;gap:12px;padding:18px}.logo-preview{gap:10px}}.yearbook-preview{text-align:left;min-height:400px;height:auto!important}.yearbook-preview h2{text-align:center;letter-spacing:0!important;color:#2864ff!important;margin:0 0 24px!important;font:700 17px Arial,sans-serif!important}.yearbook-preview p{margin:0 0 9px;color:#252d3a!important;font:13px/1.55 Arial,sans-serif!important}.yearbook-preview strong{text-align:right;color:#252d3a;margin:0 0 16px;font:italic 700 12px Arial,sans-serif;display:block}
