:root{--ink:#18353c;--muted:#6c7d81;--line:#e1e8e7;--paper:#fff;--bg:#f4f7f5;--teal:#187c73;--teal-dark:#0e5c56;--mint:#e7f3ed;--gold:#e7b75c;--nav:#132b35;--red:#ab3e32}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--bg);font-family:Tahoma,'Leelawadee UI',Arial,sans-serif;font-size:14px;line-height:1.7}button,input,select,textarea{font:inherit}button,a,input,textarea,select{outline-offset:4px}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}a{color:var(--teal)}.app-shell{display:flex;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:258px;padding:36px 24px;background:var(--nav);color:#e6eeed;display:flex;flex-direction:column;z-index:5}.brand{display:flex;gap:13px;align-items:center;color:#fff;text-decoration:none;font-size:19px;letter-spacing:2px;font-weight:bold}.brand-icon{width:46px;height:46px;background:var(--gold);border-radius:13px;color:var(--nav);font-size:27px;letter-spacing:-3px;padding:1px 8px;position:relative}.brand-icon span{font-size:17px;position:absolute;top:1px;right:4px}.brand-sub{display:block;font-size:8px;letter-spacing:2.2px;color:#a8c2c2;margin-top:2px}.school-name{margin:30px 0;color:#e8efec;font-size:12px;line-height:1.9}.school-name span{display:block;color:#91aeaf;font-size:11px}.sidebar nav{display:grid;gap:8px}.sidebar nav a,.sidebar nav button{display:flex;align-items:center;gap:12px;text-decoration:none;border:0;background:none;color:#b9cdce;padding:13px 14px;border-radius:9px;font-size:12px;text-align:left}.sidebar nav span{font-size:20px;line-height:1}.sidebar nav .active,.sidebar nav a:hover,.sidebar nav button:hover{color:white;background:#24444b}.sidebar nav .active{box-shadow:inset 3px 0 var(--gold)}.sidebar-bottom{margin-top:auto;padding-top:35px;font-size:11px}.sidebar-bottom strong{font-weight:normal;color:#d8e7e1}.local-dot{display:inline-block;width:6px;height:6px;border-radius:100%;background:#8bd6af;margin-right:7px}.sidebar-bottom p{color:#94afb0;line-height:1.9;margin:9px 0 16px}.sidebar-link{display:block;background:transparent;border:1px solid #3e5a61;color:#cbdcda;padding:8px 12px;border-radius:7px;margin-bottom:8px;width:100%;text-align:left;font-size:11px}.sidebar-link:hover{background:#24444b}.edition{display:block;color:#91abad;font-size:10px;margin-top:22px}.workspace{margin-left:258px;width:calc(100% - 258px);min-width:0}.topbar{height:82px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);background:#ffffffd9;padding:0 44px}.breadcrumb{font-size:11px;color:var(--muted)}.breadcrumb span{margin:0 13px;color:#bcc8c7}.breadcrumb strong{font-weight:normal;color:var(--ink)}.top-actions{display:flex;align-items:center;gap:12px}#save-state{font-size:10px;color:var(--teal)}main{max-width:1350px;margin:auto;padding:38px 44px 65px}.eyebrow{color:var(--teal);font-size:10px;font-weight:bold;letter-spacing:1.7px;margin:0 0 10px}.page-heading{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:27px}h1{font-size:29px;line-height:1.5;letter-spacing:-.5px;margin:0 0 8px}h2{font-size:18px;margin:0 0 12px}h3{font-size:14px;margin:0 0 10px}p{margin:0 0 12px}.muted{color:var(--muted)}.lead{color:var(--muted);font-size:12px;max-width:670px}.btn{display:inline-flex;gap:9px;align-items:center;justify-content:center;border-radius:8px;border:1px solid transparent;padding:10px 17px;font-size:12px;font-weight:bold;white-space:nowrap;text-decoration:none;background:transparent;line-height:1.6}.btn-primary{background:var(--teal);color:white}.btn-primary:hover{background:var(--teal-dark)}.btn-outline{border-color:#cfdcda;background:#fff;color:var(--ink)}.btn-outline:hover{background:#eef5f2}.btn-gold{background:var(--gold);color:#193638}.btn-danger{color:var(--red);border-color:#edd6d1}.btn-text{color:var(--teal);padding:7px 0}.hero{display:grid;grid-template-columns:1.65fr 1fr;background:#e9f1ec;border:1px solid #d7e5dd;border-radius:15px;overflow:hidden;margin-bottom:25px}.hero-copy{padding:33px 34px}.hero h2{font-size:22px;max-width:450px;line-height:1.6;margin:0 0 12px}.hero-copy p{font-size:12px;color:#58736c;max-width:460px}.hero-art{position:relative;min-height:240px;background:#dce9df;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-art:before,.hero-art:after{content:'';position:absolute;border:1px solid #b8cfc1;border-radius:100%;width:280px;height:280px;right:-25px;top:22px}.hero-art:after{width:210px;height:210px;right:12px;top:55px}.mini-paper{width:168px;background:#fff;border-radius:6px;padding:21px 18px;box-shadow:0 18px 35px #526b5e26;transform:rotate(-7deg);position:relative;z-index:1}.mini-paper .mini-label{font-size:8px;letter-spacing:1px;color:#477a64}.mini-paper b{font-size:17px}.mini-line{height:4px;background:#e5ebe5;margin-top:11px;width:100%}.mini-line.short{width:65%}.mini-bars{display:flex;gap:5px;align-items:flex-end;height:50px;margin-top:14px}.mini-bars i{flex:1;background:#d3e6dc;border-radius:3px 3px 0 0}.mini-bars i:nth-child(2){height:65%;background:#98c0ab}.mini-bars i:nth-child(3){height:90%;background:#2d8069}.mini-bars i:nth-child(4){height:100%;background:#e4b75c}.art-badge{position:absolute;right:15px;bottom:33px;z-index:2;background:#fff;border-radius:25px;padding:9px 13px;font-size:10px;box-shadow:0 6px 18px #183b3220;color:var(--teal)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:30px}.stat{background:white;border:1px solid var(--line);padding:19px 23px;border-radius:11px}.stat-label{font-size:11px;color:var(--muted)}.stat-value{font-size:30px;line-height:1.5;font-weight:bold}.stat-value span{font-size:11px;color:var(--muted);font-weight:normal;margin-left:8px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:15px}.section-heading h2{margin:0;font-size:16px}.tag{display:inline-block;border-radius:5px;background:#edf3f0;color:#58756d;font-size:10px;padding:3px 8px}.tag-gold{background:#fbf2df;color:#8c6a26}.tag-green{background:#e5f3eb;color:#226d50}.panel{background:#fff;border:1px solid var(--line);border-radius:12px;padding:26px;margin-bottom:21px}.empty{background:white;border:1px dashed #cddbd4;border-radius:12px;text-align:center;padding:38px 24px}.empty-icon{width:46px;height:46px;display:grid;place-items:center;background:#edf4f0;border-radius:12px;margin:0 auto 14px;font-size:25px;color:#6a9480}.empty p{font-size:12px;color:var(--muted)}.empty h3{font-size:15px}.empty .btn{margin:6px}.notice{padding:13px 17px;background:#faf6ec;color:#7c6635;border:1px solid #eee2c7;border-radius:8px;font-size:11px;line-height:1.8}.notice.info{background:#edf5f2;border-color:#d8e8df;color:#426f60}.list-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.plan-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:23px}.plan-card h3{font-size:17px;margin-top:13px;overflow-wrap:anywhere}.plan-card .meta{font-size:11px;color:var(--muted);margin-bottom:17px}.card-top,.card-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px}.card-bottom{border-top:1px solid var(--line);padding-top:15px;font-size:10px;color:var(--muted)}.progress-track{height:4px;background:#edf2ef;border-radius:6px;margin:15px 0 7px;overflow:hidden}.progress-track i{display:block;background:var(--teal);height:100%}.tiny-btn{border:0;background:none;color:var(--muted);padding:4px 8px}.tiny-btn:hover{background:#f3e9e5;color:var(--red);border-radius:5px}.search{width:230px;border:1px solid var(--line);padding:8px 12px;background:white;border-radius:7px;font-size:11px}.step-tabs{display:flex;gap:0;background:white;border:1px solid var(--line);border-radius:10px;margin-bottom:23px;overflow:auto}.step-tab{display:flex;align-items:center;gap:8px;flex:1;justify-content:center;border:0;border-bottom:3px solid transparent;background:none;padding:16px 12px;font-size:11px;color:var(--muted);white-space:nowrap}.step-tab b{border:1px solid #d4dfd9;width:22px;height:22px;border-radius:100%;font-size:10px;display:grid;place-items:center;font-weight:normal}.step-tab.active{color:var(--teal);border-bottom-color:var(--teal);background:#f4faf6}.step-tab.active b{background:var(--teal);border-color:var(--teal);color:white}.editor-title{display:flex;gap:15px;justify-content:space-between;align-items:flex-start;margin-bottom:21px}.editor-title h1{font-size:24px}.editor-actions{display:flex;gap:9px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:19px 22px}.field{display:flex;flex-direction:column;gap:6px;font-size:12px}.field.full{grid-column:1/-1}.field label{font-weight:bold}.field small{font-size:10px;color:var(--muted)}input,textarea,select{width:100%;border:1px solid #ccd9d4;border-radius:7px;padding:9px 11px;color:var(--ink);background:#fff;min-height:40px;font-size:12px}textarea{min-height:93px;resize:vertical}input:focus,textarea:focus,select:focus{border-color:var(--teal);outline:2px solid #187c7315}.required{color:#b96545}.panel-head{border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:22px}.panel-head p{font-size:11px;color:var(--muted);margin:0}.panel-head h2{font-size:16px;margin-bottom:4px}.editor-nav{display:flex;justify-content:space-between;gap:12px;margin-top:24px}.assessment-row{display:grid;grid-template-columns:1fr 170px;gap:20px;align-items:center;padding:15px 0;border-bottom:1px solid #edf1ee;font-size:12px}.assessment-row:last-child{border:0}.goal-card{border:1px solid var(--line);border-radius:11px;margin-bottom:18px;padding:23px;background:#fff}.goal-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.goal-heading h3{margin:0}.goal-num{display:inline-grid;place-items:center;width:26px;height:26px;background:var(--mint);color:var(--teal);border-radius:7px;margin-right:8px}.table-wrap{overflow:auto}.data-table{border-collapse:collapse;width:100%;font-size:11px}.data-table th{text-align:left;font-weight:normal;color:var(--muted);padding:12px 10px;background:#f3f7f4;border-bottom:1px solid var(--line);white-space:nowrap}.data-table td{padding:15px 10px;border-bottom:1px solid var(--line);vertical-align:top;max-width:300px;overflow-wrap:anywhere}.data-table td:first-child{min-width:170px}.data-table small{display:block;color:var(--muted);margin-top:3px}.data-table button{border:0;background:none;color:var(--teal);padding:3px}.table-actions{display:flex;gap:8px;flex-wrap:wrap}.training-summary{display:flex;gap:10px;align-items:center;margin:15px 0;font-size:11px;color:var(--muted)}.training-summary b{color:var(--teal);font-size:20px}.checklist{list-style:none;padding:0;margin:12px 0}.checklist li{padding:9px 0;font-size:12px;display:flex;gap:10px}.checklist .ok{color:#248360}.checklist .missing{color:#a67b32}.report-summary{display:grid;grid-template-columns:1.2fr 1fr;gap:20px}.report-cover{padding:35px;background:#fff;border:1px solid var(--line);border-radius:9px;min-height:350px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;border-top:5px solid var(--teal)}.report-cover h2{font-size:22px;margin:15px 0}.report-cover p{font-size:12px}.cover-small{font-size:10px;letter-spacing:2px;color:var(--teal)}.guide-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:25px}.guide-step{padding:24px;background:#fff;border:1px solid var(--line);border-radius:10px}.guide-step b{font-size:27px;color:#a2bfae;display:block;margin-bottom:10px}.guide-step p{font-size:12px;color:var(--muted)}.code{display:block;background:#f0f4f1;border:1px solid #dee8e0;padding:14px;border-radius:7px;font:11px/1.7 Consolas,monospace;overflow:auto;white-space:pre}.app-footer{display:flex;justify-content:space-between;padding:20px 44px;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}dialog{border:1px solid var(--line);border-radius:14px;padding:0;width:min(860px,95vw);max-height:90vh;color:var(--ink);box-shadow:0 24px 90px #142e3c40}dialog::backdrop{background:#102c3566;backdrop-filter:blur(3px)}.modal-head{padding:23px 27px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.modal-head h2{margin:0;font-size:18px}.modal-head button{border:0;background:none;font-size:25px;color:var(--muted)}.modal-body{padding:24px 27px}.modal-foot{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);padding:17px 27px}.modal-body .notice{margin-bottom:18px}.import-box{min-height:150px;font-size:11px;font-family:Consolas,Tahoma,monospace}.import-status{margin:15px 0;font-size:12px}.errors{color:var(--red);font-size:11px}.file-label{display:inline-flex;cursor:pointer}#toast{position:fixed;bottom:27px;left:calc(50% + 100px);transform:translate(-50%,20px);background:#173e38;color:#fff;box-shadow:0 7px 24px #163b332f;padding:12px 22px;border-radius:9px;opacity:0;pointer-events:none;z-index:30;transition:.2s;font-size:12px;max-width:min(600px,90vw)}#toast.show{opacity:1;transform:translate(-50%,0)}.storage-error{color:var(--red)!important}.filter-row{display:flex;gap:12px;align-items:center}.selected-border{border:1px solid #b8d3c3}.help-link{font-size:11px}.error-state{padding:40px;text-align:center}#pdf-stage{position:absolute;left:-12000px;top:0;pointer-events:none;background:white}.pdf-page{box-sizing:border-box;width:794px;height:1122px;padding:54px 60px 58px;background:white;color:#1b3339;font:15px/1.7 Tahoma,Arial,sans-serif;position:relative;overflow:hidden}.pdf-page h1{font-size:25px;margin:25px 0 15px}.pdf-page h2{font-size:19px;margin:20px 0 15px}.pdf-page h3{font-size:15px}.pdf-brand{font-size:11px;letter-spacing:1.1px;color:#247766;border-bottom:3px solid #247766;padding-bottom:15px;display:flex;justify-content:space-between}.pdf-footer{position:absolute;bottom:25px;left:60px;right:60px;border-top:1px solid #d6e1da;padding-top:8px;font-size:10px;color:#718079;display:flex;justify-content:space-between}.pdf-kv{display:grid;grid-template-columns:135px 1fr;gap:10px;margin:12px 0;font-size:14px}.pdf-kv>span:first-child{color:#63756d}.pdf-block{border:1px solid #dce6df;padding:14px 17px;border-radius:5px;margin:16px 0;white-space:pre-wrap;overflow-wrap:anywhere}.pdf-block h3{margin-bottom:6px}.pdf-table{width:100%;border-collapse:collapse;font-size:12px}.pdf-table th,.pdf-table td{border:1px solid #d9e2dc;padding:10px;text-align:left;vertical-align:top;overflow-wrap:anywhere}.pdf-table th{background:#edf5ef;font-weight:normal}.pdf-caption{font-size:11px;color:#718079}.pdf-signature{margin-top:55px;display:flex;justify-content:space-between;gap:28px;font-size:13px}.pdf-signature>div{width:47%;line-height:2.2}.pdf-page.report-preview{transform:scale(.7);transform-origin:top left}.preview-dialog{overflow:auto;max-height:70vh;background:#dfe6e0;padding:20px}.preview-dialog .pdf-page{margin:auto auto 18px;zoom:.75}body.busy{cursor:progress}@media(min-width:1500px){main{padding-top:45px}}@media(max-width:1100px){.sidebar{width:220px;padding:30px 18px}.workspace{margin-left:220px;width:calc(100% - 220px)}main{padding:30px 26px}.topbar{padding:0 26px}.hero-copy{padding:25px}.hero-art{min-height:230px}.top-actions #save-state{max-width:100px}.report-summary{grid-template-columns:1fr}.app-footer{padding:20px 26px}.guide-steps{gap:12px}.guide-step{padding:18px}}@media(max-width:800px){.sidebar{position:static;width:100%;padding:18px 20px;display:block}.app-shell{display:block}.brand{font-size:16px}.brand-icon{width:39px;height:39px;font-size:24px}.school-name{display:none}.sidebar nav{display:flex;gap:4px;margin-top:17px;overflow:auto}.sidebar nav a,.sidebar nav button{padding:9px 11px;font-size:11px;white-space:nowrap}.sidebar-bottom{display:none}.workspace{margin:0;width:100%}.topbar{height:60px;padding:0 20px}.breadcrumb{font-size:10px}.breadcrumb span{margin:0 7px}main{padding:27px 20px 45px}.page-heading{align-items:flex-start;gap:15px}h1{font-size:23px}.hero{grid-template-columns:1fr 150px}.hero h2{font-size:18px}.hero-copy{padding:24px}.hero-art{min-height:230px}.mini-paper{width:128px;padding:16px 12px}.art-badge{font-size:8px;right:7px;padding:7px;bottom:22px}.stats{gap:9px}.stat{padding:16px 13px}.stat-label{font-size:9px}.stat-value{font-size:24px}.stat-value span{font-size:9px}.list-grid{grid-template-columns:1fr}.form-grid{gap:17px}.panel{padding:20px}.editor-title{display:block}.editor-actions{margin-top:13px}.step-tab{padding:13px 10px}.step-tab b{display:none}.guide-steps{grid-template-columns:1fr}.app-footer{padding:18px 20px}.app-footer span{display:none}#toast{left:50%}.search{width:170px}.assessment-row{grid-template-columns:1fr 120px}.modal-body{padding:20px}.report-summary{grid-template-columns:1fr}}@media(max-width:500px){.hero{grid-template-columns:1fr}.hero-art{display:none}.page-heading{display:block}.page-heading>.btn{margin-top:14px}.stats{grid-template-columns:1fr 1fr}.stats .stat:last-child{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.section-heading{align-items:flex-start}.search{width:145px}.editor-actions{flex-wrap:wrap}.btn{padding:10px 13px}.report-cover{padding:25px}.assessment-row{gap:10px;font-size:11px}.topbar #save-state{font-size:9px}.breadcrumb{max-width:220px}.sidebar nav{margin-top:13px}.sidebar nav span{font-size:16px}.sidebar nav a,.sidebar nav button{font-size:10px}.card-bottom{flex-wrap:wrap}.preview-dialog .pdf-page{zoom:.42}}
:root{color-scheme:light}[hidden]{display:none!important}.pdf-body{height:948px;overflow:hidden;display:flow-root}
:root{--ink:#33223b;--muted:#807184;--line:#e8e0e9;--bg:#f8f5f9;--teal:#733b83;--teal-dark:#51255e;--mint:#f1e7f4;--gold:#e5bb56;--nav:#300031}.sidebar{background:linear-gradient(170deg,#300031 0%,#38133e 78%,#48224d 100%)}.brand{letter-spacing:1.5px}.brand-icon{background:#fff7df;display:grid;place-items:center;padding:4px;border:1px solid #e8c968}.brand-icon img{max-height:42px;max-width:34px}.brand-sub{color:#dcc6df}.school-name span{color:#cfb5d2}.sidebar nav a,.sidebar nav button{color:#e0cde3}.sidebar nav .active,.sidebar nav a:hover,.sidebar nav button:hover{background:#592762}.sidebar-bottom p,.edition{color:#c5a9cb}.sidebar-link{border-color:#81578a;color:#e6d8e9}.sidebar-link:hover{background:#592762}.local-dot{background:var(--gold)}.hero{background:linear-gradient(110deg,#f4eaf7,#f9f4ed);border-color:#e5d8e8}.hero-copy p{color:#816787}.hero-art{background:#eaddf0}.hero-art:before,.hero-art:after{border-color:#d1b9da}.mini-paper .mini-label{color:#7d4c8a}.mini-line{background:#eae1ee}.mini-bars i{background:#e5d8ed}.mini-bars i:nth-child(2){background:#b891c7}.mini-bars i:nth-child(3){background:#7a408d}.mini-bars i:nth-child(4){background:var(--gold)}.art-badge{color:#783e89}.tag{background:#f3edf5;color:#7c5a85}.tag-gold{background:#fcf3df;color:#896619}.tag-green{background:#f0e7f5;color:#763b88}.notice.info{background:#f5eff8;border-color:#e9ddef;color:#74537d}.step-tab.active{background:#faf4fc}.empty-icon{background:#f3eaf6;color:#9b75a9}.data-table th{background:#f7f2f9}.goal-num{background:#f1e7f4}.stat-value{color:#593166}.mini-seal{width:26px;height:31px;object-fit:contain;float:right;margin-left:5px}.school-links{display:flex;gap:14px;flex-wrap:wrap;margin-top:17px;font-size:11px}.school-links a{text-decoration:none}.school-links a:hover{text-decoration:underline}.pdf-brand{color:#653073;border-bottom-color:#653073}.pdf-brand .pdf-logo{height:30px;width:auto;vertical-align:middle;margin-right:9px}.pdf-brand>span:first-child{display:flex;align-items:center}.pdf-table th{background:#f2eaf5}.pdf-footer{border-color:#e3d8e8}.source-panel{border-left:4px solid var(--gold)}#toast{background:#51255e}.report-cover{border-top-color:var(--teal)}
.person-picker{border-top:3px solid var(--gold);background:linear-gradient(120deg,#fff,#fcf8fd)}.person-picker h2{font-size:16px}.person-picker .section-heading p{font-size:11px;margin:5px 0 0}.person-picker-fields{display:grid;grid-template-columns:1fr 1.4fr;gap:20px}.person-selection-info{font-size:11px;line-height:1.9;padding:12px 15px;background:#f4edf7;border:1px solid #e6d9eb;border-radius:8px;margin-top:17px}.person-selection-info a{margin-left:7px}.person-footnote{font-size:10px;color:var(--muted);margin:12px 0 0}.person-picker select{font-size:12px;min-height:43px}@media(max-width:700px){.person-picker-fields{grid-template-columns:1fr}.person-picker .section-heading{display:block}.person-picker .tag{margin-top:9px}}
.import-owner{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px 18px;margin-top:15px;padding:12px 14px;border:1px solid rgba(48,0,49,.18);border-radius:8px;font-size:12px;overflow-wrap:anywhere}.import-owner span{display:block;font-size:10px;opacity:.7}.import-attest{display:block;margin:12px 0;padding:10px 12px;background:rgba(201,162,39,.14);border-radius:8px;font-size:12px}.import-attest input{margin-right:6px}
.central-login{max-width:420px}.central-login .field{margin-bottom:14px}.central-user{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px;font-size:13px}.central-stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.central-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px 22px;margin:12px 0}.central-kv>span{display:block;font-size:11px;opacity:.7}.central-kv strong{font-size:13px;font-weight:600;overflow-wrap:anywhere}.central-needs{margin:10px 0 0;padding-left:20px;font-size:13px}.central-needs li{margin-bottom:7px}.central-group td{background:rgba(48,0,49,.05)}
.edit-steps{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.edit-steps .step-tab{flex:1 1 150px}.edit-row{border:1px solid rgba(48,0,49,.15);border-radius:8px;padding:12px;margin-bottom:10px}.edit-row-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:12px;font-weight:600}.edit-score-item{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 0;border-bottom:1px solid rgba(48,0,49,.1);font-size:13px}.edit-score-item>span{flex:1 1 260px}.edit-scores{display:flex;gap:6px}.edit-scores label{position:relative;display:flex;width:44px;height:44px;align-items:center;justify-content:center;border:1px solid rgba(48,0,49,.3);border-radius:8px;font-size:16px;font-weight:600;cursor:pointer}.edit-scores input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.edit-scores label:has(input:checked){background:#300031;color:#fff;border-color:#300031}.edit-scores label:has(input:focus-visible){outline:2px solid #c9a227;outline-offset:2px}.edit-group-title{margin:20px 0 4px;font-size:14px;font-weight:700}.edit-progress{font-size:13px;font-weight:600}.edit-rank{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid rgba(48,0,49,.1);font-size:13px}.edit-rank b{width:26px;text-align:center}.edit-rank span{flex:1}.edit-rank button{min-width:44px;min-height:44px}.edit-error{color:#a11;font-size:13px;font-weight:600;margin:10px 0}
@font-face{font-family:IDPlanSarabun;src:url(assets/fonts/Sarabun-400.ttf) format('truetype');font-weight:400;font-display:swap}@font-face{font-family:IDPlanSarabun;src:url(assets/fonts/Sarabun-700.ttf) format('truetype');font-weight:700;font-display:swap}
.dp-page{box-sizing:border-box;background:#fff;color:#000;font:14px/1.65 IDPlanSarabun,Tahoma,sans-serif;position:relative;overflow:hidden}.dp-portrait{width:794px;height:1122px;padding:40px 62px 44px 88px}.dp-landscape{width:1123px;height:794px;padding:34px 66px 40px}.dp-top{height:22px;text-align:center;font-size:13px;position:relative}.dp-draft{position:absolute;right:0;top:0;font-weight:700}.dp-body{overflow:hidden;display:flow-root}.dp-portrait .dp-body{height:1000px}.dp-landscape .dp-body{height:680px}.dp-foot{position:absolute;left:0;right:0;bottom:16px;text-align:center;font-size:11px}
.dp-title{text-align:center;font-weight:700;font-size:15px;line-height:1.55}.dp-title div:first-child{font-size:16px}.dp-h{font-weight:700;margin:14px 0 4px}.dp-p{margin:0 0 3px;overflow-wrap:anywhere}.dp-indent{padding-left:44px}.dp-indent2{padding-left:70px}.dp-first{text-indent:44px}.dp-v{border-bottom:1px dotted #000;padding:0 8px}.dp-blank{display:inline-block;min-width:110px}.dp-lines{border-bottom:1px dotted #000;min-height:23px;white-space:pre-wrap;overflow-wrap:anywhere}
.dp-table{width:100%;border-collapse:collapse;font-size:13px;line-height:1.5;table-layout:fixed}.dp-table th,.dp-table td{border:1px solid #333;padding:3px 6px;vertical-align:top;overflow-wrap:anywhere}.dp-table th{font-weight:400;text-align:center;vertical-align:middle}.dp-c{text-align:center}.dp-sign{display:flex;justify-content:space-between;gap:40px;margin-top:30px;font-size:14px}.dp-sign>div{flex:1}.dp-sign p{margin:0 0 6px}
.central-user+.notice{margin-bottom:24px}.central-kv strong .tag{margin-left:6px;vertical-align:1px}.central-mode #new-plan-side,.central-mode nav [data-nav=home],.central-mode nav [data-nav=guide],.central-mode .sidebar-bottom{display:none}
.central-demo-note{margin-bottom:18px}
.central-mode .page-heading{flex-wrap:wrap}.central-mode .page-heading>div:first-child{flex:1 1 320px}
@media(max-width:640px){#central-list th:nth-child(2),#central-list td:nth-child(2),#central-list th:nth-child(3),#central-list td:nth-child(3){display:none}#central-list .tag{white-space:nowrap}}
.central-mode{--cs-none:#e6dcec;--cs-draft:#c6a7d3;--cs-pdf:#8f5aa3;--cs-done:#4a1f58;background:#f7f3f8}.central-mode .sidebar,.central-mode main{font-family:IDPlanSarabun,Tahoma,'Leelawadee UI',sans-serif}.central-mode .app-shell{display:block}.central-mode .sidebar{position:static;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:12px 32px;background:linear-gradient(90deg,#300031,#51255e)}.central-mode .brand-sub{font-size:9px}.central-mode .school-name{margin:0;text-align:right;font-size:14px;line-height:1.5}.central-mode .school-name span{font-size:12.5px}.central-mode .sidebar nav{display:none}.central-mode .workspace{margin-left:0;width:100%}.central-mode .topbar{height:38px;padding:0 32px}.central-mode .breadcrumb,.central-mode #save-state{font-size:12px}.central-mode main{max-width:1180px;padding:20px 32px 56px;font-size:15px;line-height:1.65}.central-mode .app-footer{padding:16px 32px;font-size:12px}.central-mode #toast{left:50%;font-size:14px}
.central-mode main h2{font-size:21px;margin-bottom:4px}.central-mode main h3{font-size:16px;margin-top:16px}.central-mode main .muted{font-size:14px}.central-mode main .lead{font-size:15px}.central-mode main .eyebrow{font-size:13px;letter-spacing:.3px}.central-mode main .btn{font-size:14px;min-height:42px}.central-mode main .tag{font-size:12.5px;padding:2px 9px;border-radius:999px}.central-mode main .notice{font-size:13.5px}.central-mode main .panel{border-radius:16px;padding:26px 28px;margin-bottom:20px;box-shadow:0 1px 2px #30003110}.central-mode main input,.central-mode main select,.central-mode main textarea{font-size:15px;min-height:44px}.central-mode main .field{font-size:14px}.central-mode main .data-table{font-size:14px}.central-mode main .data-table th{font-size:13px}.central-mode main .step-tab{font-size:14px}.central-mode main ul{padding-left:20px}.central-kv>span{font-size:13px;opacity:1;color:var(--muted)}.central-mode .central-kv strong{font-size:15px}
.central-user{font-size:14px;margin-bottom:8px}.central-mode .central-user+.notice{margin-bottom:16px;padding:7px 14px}.central-swatch{display:inline-block;width:12px;height:12px;border-radius:3px;flex:none}.cs-not_started{background:var(--cs-none);box-shadow:inset 0 0 0 1px #c9b9d2}.cs-draft{background:var(--cs-draft)}.cs-pdf_generated{background:var(--cs-pdf)}.cs-submitted_confirmed{background:var(--cs-done)}.central-st{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.central-st .central-swatch{width:9px;height:9px;border-radius:50%;box-shadow:none}.central-st .cs-not_started{background:#b7a6c0}
.central-hero{background:radial-gradient(circle at 92% 8%,#7a3f8c 0,transparent 42%),linear-gradient(125deg,#300031,#51255e);color:#fff;border-radius:20px;padding:30px 32px 26px;margin-bottom:20px}.central-hero-top{display:flex;align-items:center;gap:28px;margin-bottom:24px}.central-hero-copy{flex:1;min-width:0}.central-hero-kicker{color:#f0d68c;font-size:14px;margin:0 0 2px}.central-mode .central-hero h1{color:#fff;font-size:38px;line-height:1.3;letter-spacing:0;margin:0 0 6px}.central-hero-copy p:last-child{color:#e6d8ea;font-size:15px;margin:0;max-width:620px}.central-mode main .central-hero-link{align-self:flex-start;background:#ffffff1f;color:#fff;border-color:#ffffff4d}.central-hero-link:hover{background:#ffffff33}.central-ring{position:relative;flex:none;width:132px;height:132px}.central-ring svg{display:block;width:100%;height:100%}.central-ring circle{fill:none;stroke-width:13}.central-ring-track{stroke:#ffffff2b}.central-ring-value{stroke:var(--gold);stroke-linecap:round}.central-ring-label{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.15}.central-ring-label strong{font-size:31px}.central-ring-label span{font-size:12.5px;color:#e6d8ea}
.central-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.central-tile{display:flex;flex-direction:column;gap:2px;text-align:left;background:#fff;color:var(--ink);border:2px solid transparent;border-radius:14px;padding:13px 16px;transition:transform .15s,border-color .15s}.central-tile:hover{transform:translateY(-2px);border-color:var(--gold)}.central-tile:focus-visible,.central-group-row:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.central-tile-label{display:flex;align-items:center;gap:8px;font-size:14px;color:#5c4b63}.central-tile-value{font-size:32px;font-weight:700;line-height:1.25;color:#3d1a4a}.central-tile-value small{font-size:13.5px;font-weight:400;color:var(--muted);margin-left:7px}.central-demo-note{margin:14px 0 0;padding:6px 14px;background:#e5bb5626;border:1px solid #e5bb5666;border-radius:9px;color:#f7e6b8;font-size:13.5px}
.central-panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px 24px;flex-wrap:wrap;margin-bottom:14px}.central-panel-head p{margin:0}.central-legend{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:13px;color:#5c4b63}.central-legend span{display:inline-flex;align-items:center;gap:6px}.central-group-rows{display:grid;gap:2px}.central-group-row{display:grid;grid-template-columns:minmax(170px,250px) 1fr 118px;align-items:center;gap:16px;width:100%;text-align:left;background:none;border:0;border-radius:9px;padding:8px 10px;color:var(--ink);font-size:14.5px}.central-group-row:hover{background:#f6eff8}.central-group-value{text-align:right;font-size:13.5px;color:var(--muted);white-space:nowrap}.central-group-value strong{color:var(--ink);font-size:15px}.central-bar{display:flex;gap:2px;height:16px;border-radius:5px;overflow:hidden;transform-origin:left;animation:central-grow .6s ease-out}.central-bar i{display:block;height:100%;min-width:3px}@keyframes central-grow{from{transform:scaleX(0)}to{transform:scaleX(1)}}@media(prefers-reduced-motion:reduce){.central-bar{animation:none}.central-tile{transition:none}}
.central-columns{display:grid;grid-template-columns:1.1fr 1fr;gap:20px;align-items:start}.central-need-list,.central-steps{list-style:none;margin:14px 0 0;padding:0!important}.central-need-list li{display:grid;grid-template-columns:30px 1fr auto;gap:12px;align-items:center;padding:9px 0}.central-need-list b,.central-steps b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#f1e7f4;color:#51255e;font-size:14px}.central-need-name{display:block;margin-bottom:5px;font-size:15px;line-height:1.45}.central-need-track{display:block;height:10px;background:#f1eaf4;border-radius:5px;overflow:hidden}.central-need-track i{display:block;height:100%;background:var(--cs-pdf);border-radius:5px}.central-need-track i.is-top{background:var(--gold)}.central-need-value{font-weight:700;white-space:nowrap}.central-steps li{position:relative;display:flex;gap:13px;padding-bottom:12px}.central-steps li:not(:last-child):before{content:'';position:absolute;left:14px;top:30px;bottom:0;width:2px;background:#e6dcec}.central-steps b{flex:none;background:#51255e;color:#fff}.central-steps strong{display:block;font-size:15px;line-height:1.4}.central-steps span{display:block;color:var(--muted);font-size:13.5px;line-height:1.45}.central-mode main .central-sample{margin-top:6px}
.central-list-filters{display:flex;flex-wrap:wrap;gap:8px}.central-list-filters select{width:auto;max-width:240px}.central-mode main .central-list-filters .search{width:220px;padding:8px 12px}.central-list-count{font-size:13.5px;color:var(--muted);margin:0 0 8px}.central-link{border:0;background:none;color:var(--teal);text-decoration:underline;padding:0 0 0 8px}.central-mobile-group{display:none!important}.central-mode main .central-show-all{margin:14px auto 0;display:flex}.central-details summary{cursor:pointer;font-weight:700;color:var(--teal);padding:8px 0}.central-details[open] summary{margin-bottom:8px}
.central-mode main .central-person-head{background:#fff;border:1px solid var(--line);border-top:4px solid var(--gold);border-radius:16px;padding:22px 28px;margin-bottom:14px}.central-mode main .central-person-head h1{font-size:30px;line-height:1.35;letter-spacing:0;margin-bottom:2px}.central-journey-box{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px 28px 12px;margin-bottom:20px}.central-journey{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);margin:0;padding:0!important}.central-journey li{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;font-size:14px;line-height:1.35;color:var(--muted)}.central-journey li:not(:first-child):before{content:'';position:absolute;top:14px;right:calc(50% + 15px);left:calc(-50% + 15px);height:2px;background:#e6dcec}.central-journey b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#f1e7f4;color:#7c5a85;font-size:14px}.central-journey .is-done b{background:#8f5aa3;color:#fff}.central-journey .is-now b{background:#51255e;color:#fff;box-shadow:0 0 0 4px #e5bb5680}.central-journey .is-now{color:var(--ink);font-weight:700}.central-journey .is-done:before,.central-journey .is-now:before{background:#8f5aa3!important}.central-next{margin:10px 0 0;text-align:center;font-size:14px;color:#5c4b63}.central-comp-list{list-style:none;margin:12px 0;padding:0!important}.central-comp-list li{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(90px,1fr) 34px;align-items:center;gap:14px;padding:7px 0;border-bottom:1px solid #f1eaf4}.central-comp-name{font-size:14.5px;line-height:1.45}.central-comp-list strong{text-align:right}
.central-login-shell{display:grid;grid-template-columns:1.1fr 1fr;max-width:940px;margin:20px auto;background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 18px 50px #30003122}.central-login-intro{position:relative;padding:38px 36px;color:#fff;background:radial-gradient(circle at 95% 5%,#7a3f8c 0,transparent 48%),linear-gradient(150deg,#300031,#51255e)}.central-login-seal{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:#fff7df;margin-bottom:16px}.central-login-seal img{max-height:50px;max-width:42px}.central-login-kicker{color:#f0d68c;margin:0;font-size:14.5px}.central-mode main .central-login-intro h1{color:#fff;font-size:34px;line-height:1.3;letter-spacing:0;margin:0 0 8px}.central-login-intro>p:not(.central-login-kicker){color:#e6d8ea;font-size:15px}.central-mode main .central-login-intro ul{list-style:none;padding:0;margin:18px 0 22px}.central-login-intro li{position:relative;padding:5px 0 5px 24px;font-size:15px;line-height:1.5}.central-login-intro li:before{content:'';position:absolute;left:2px;top:13px;width:10px;height:10px;border-radius:50%;background:var(--gold)}.central-login-badge{display:inline-block;padding:3px 12px;border:1px solid #ffffff55;border-radius:999px;font-size:13px}.central-login{max-width:none;padding:38px 36px;align-self:center}.central-login h2{margin-bottom:2px}.central-login form{margin-top:18px}.central-mode main .central-login .btn{width:100%;min-height:48px;font-size:16px}.central-login .errors{font-size:14px;min-height:0;margin:0 0 8px}
@media(max-width:860px){.central-tiles{grid-template-columns:1fr 1fr}.central-columns{grid-template-columns:1fr;gap:0}.central-login-shell{grid-template-columns:1fr;margin:0}.central-mode .central-hero h1{font-size:32px}}
@media(max-width:640px){.central-mode .breadcrumb{max-width:none;white-space:nowrap}.central-mode .breadcrumb span{margin:0 5px}.central-mode .sidebar{padding:9px 16px}.central-mode .topbar{padding:0 16px;height:34px}.central-mode .brand{font-size:15px}.central-mode main{padding:12px 16px 40px}.central-mode main input,.central-mode main select,.central-mode main textarea{font-size:16px}.central-mode .app-footer{padding:14px 16px}.central-mode main .panel{padding:20px 16px;border-radius:14px}.central-user{font-size:13.5px}.central-hero{padding:20px 16px 16px;border-radius:16px}.central-hero-top{flex-wrap:wrap;gap:14px;margin-bottom:16px}.central-hero-copy{flex:1 1 100%;order:3}.central-ring{width:104px;height:104px}.central-ring-label strong{font-size:25px}.central-mode main .central-hero-link{margin-left:auto}.central-mode .central-hero h1{font-size:27px}.central-tile{padding:10px 12px}.central-tile-label{font-size:13px;line-height:1.35;align-items:flex-start}.central-tile-label .central-swatch{margin-top:3px}.central-tile-value{font-size:27px}.central-tile-value small{display:block;margin-left:0;font-size:13px;line-height:1.3}.central-group-row{grid-template-columns:1fr auto;gap:5px 10px;padding:9px 4px}.central-group-row .central-bar{grid-column:1/-1;grid-row:2}.central-mobile-group{display:block!important}.central-list-filters,.central-list-filters select,.central-mode main .central-list-filters .search{width:100%;max-width:none}.central-mode main .central-person-head{padding:16px}.central-mode main .central-person-head h1{font-size:25px}.central-mode main .central-person-head .table-actions{margin-top:12px}.central-mode main .central-person-head .table-actions .btn{flex:1 1 100%}.central-journey-box{padding:14px 8px 10px}.central-journey li{font-size:12.5px}.central-comp-list li{grid-template-columns:1fr 30px;gap:4px 10px}.central-comp-list .central-need-track{grid-column:1/-1;grid-row:2}.central-login-intro,.central-login{padding:24px 20px}.central-login-seal{width:52px;height:52px;margin-bottom:10px}.central-login-seal img{max-height:40px}.central-mode main .central-login-intro h1{font-size:28px}.central-mode main .central-login-intro ul{margin:12px 0}.central-login-badge{display:none}}
.central-mode main .edit-score-item,.central-mode main .edit-rank{font-size:15px}.central-mode main .edit-group-title{font-size:16px}.central-mode main .edit-progress{font-size:14.5px}.central-mode main .edit-row-head{font-size:14px}
/* School theme for the central system: plum + metallic gold, prajam-yam lattice, seal watermark. Scoped to body.central-mode so the browser-only app is untouched. */
body.central-mode{--sc-900:#1b0420;--sc-800:#2a0832;--sc-700:#3d1048;--sc-600:#5a2468;--sc-500:#7a3f8c;--sc-50:#f7f1f9;--sc-line:#eadff0;--sc-gold:#e2b84f;--sc-gold-hi:#fbe7a8;--sc-gold-deep:#9a6c12;--sc-ink:#26102c;--sc-pattern:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='56' viewBox='0 0 56 56'%3E%3Cg fill='none' stroke='%23e2b84f' stroke-opacity='.16'%3E%3Cpath d='M28 0L56 28L28 56L0 28Z'/%3E%3Cpath d='M28 17C32 21 32 24 28 28C24 24 24 21 28 17ZM28 39C32 35 32 32 28 28C24 32 24 35 28 39ZM17 28C21 24 24 24 28 28C24 32 21 32 17 28ZM39 28C35 24 32 24 28 28C32 32 35 32 39 28Z'/%3E%3Ccircle cx='28' cy='28' r='1.5'/%3E%3C/g%3E%3C/svg%3E");--cs-none:#e8deee;--cs-draft:#c9a9d6;--cs-pdf:#8a4f9e;--cs-done:#3d1048;background:radial-gradient(1200px 420px at 50% -120px,#eadcf0,transparent 70%),#f6f1f7;color:var(--sc-ink)}
body.central-mode .sidebar{background:var(--sc-pattern),linear-gradient(90deg,var(--sc-900),var(--sc-700) 60%,var(--sc-600));box-shadow:inset 0 -1px #e2b84f8c}body.central-mode .brand-icon{box-shadow:0 0 0 2px var(--sc-gold),0 0 22px #e2b84f59}body.central-mode .brand-sub{color:#e9cf86}body.central-mode .school-name{color:#fff}body.central-mode .school-name span{color:#e9cf86}
body.central-mode .topbar{background:var(--sc-900);border-bottom:0}body.central-mode .breadcrumb{color:#b9a0c1}body.central-mode .breadcrumb strong{color:#fff}body.central-mode .breadcrumb span{color:#6e4f78}body.central-mode #save-state{color:var(--sc-gold)}body.central-mode .app-footer{color:#8b7392;border-top-color:var(--sc-line)}
body.central-mode main a{color:var(--sc-600)}body.central-mode main h1,body.central-mode main h2{color:var(--sc-ink)}body.central-mode main .btn{border-radius:11px;transition:transform .15s,box-shadow .15s,background .15s}body.central-mode main .btn-primary{background:linear-gradient(135deg,var(--sc-700),var(--sc-500));color:#fff;box-shadow:inset 0 1px #ffffff26,0 6px 16px -8px #3d1048cc}body.central-mode main .btn-primary:hover{transform:translateY(-1px);box-shadow:inset 0 1px #ffffff26,0 10px 22px -10px #3d1048}body.central-mode main .btn-outline{border-color:#dccbe3;color:var(--sc-ink)}body.central-mode main .btn-outline:hover{background:var(--sc-50);border-color:var(--sc-gold)}body.central-mode main input:focus,body.central-mode main select:focus,body.central-mode main textarea:focus{border-color:var(--sc-gold);outline:3px solid #e2b84f40}
body.central-mode .central-user strong{color:var(--sc-700)}body.central-mode .central-user+.notice{background:#fff;border:1px solid var(--sc-line);border-left:3px solid var(--sc-gold);color:#6b4f74;border-radius:10px}
.sc-gold-text{background:linear-gradient(100deg,#fff1c2 0%,#e9c15d 32%,#fbe6a6 52%,#c8952f 78%,#f0cf73 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.sc-chip{display:inline-flex;align-items:center;gap:6px;width:fit-content;padding:3px 13px;border:1px solid #e2b84f80;border-radius:999px;color:#f3d98e;font-size:13px;letter-spacing:.02em;background:#e2b84f14}
.sc-eyebrow{display:flex;align-items:center;gap:10px;white-space:nowrap;margin:0 0 6px;font-size:13px;font-weight:700;color:var(--sc-gold-deep);letter-spacing:.04em}.sc-eyebrow b{display:grid;place-items:center;min-width:34px;height:24px;padding:0 8px;border-radius:7px;background:linear-gradient(135deg,var(--sc-800),var(--sc-600));color:var(--sc-gold-hi);font-size:12px;letter-spacing:.08em}.sc-eyebrow:after{content:'';flex:0 1 72px;height:1px;background:linear-gradient(90deg,#e2b84f,transparent)}
body.central-mode main .panel{position:relative;border:1px solid var(--sc-line);border-radius:20px;box-shadow:0 1px 2px #30003108,0 14px 34px -22px #30003152}body.central-mode main .panel:before{content:'';position:absolute;left:28px;top:-1px;width:56px;height:3px;border-radius:0 0 3px 3px;background:linear-gradient(90deg,#fbe7a8,#e2b84f,#b98a2a)}
.central-hero,.central-person-hero,body.central-mode #central-edit>.page-heading,.sc-login-intro{position:relative;overflow:hidden;isolation:isolate;color:#fff;background:var(--sc-pattern),radial-gradient(600px 300px at 88% 0%,#e2b84f2e,transparent 65%),linear-gradient(135deg,var(--sc-900),var(--sc-700) 55%,#6a2c78);border:1px solid #e2b84f59;box-shadow:0 26px 60px -30px #1b0420e6}
.central-hero:after,.central-person-hero:after,body.central-mode #central-edit>.page-heading:after{content:'';position:absolute;z-index:-1;right:-70px;top:50%;width:380px;height:380px;transform:translateY(-50%);background:repeating-radial-gradient(circle,transparent 0 30px,#e2b84f2e 30px 31px);-webkit-mask:radial-gradient(circle,#000 0,#000 35%,transparent 70%);mask:radial-gradient(circle,#000 0,#000 35%,transparent 70%);pointer-events:none}
.central-hero{border-radius:24px;padding:34px 36px 28px}.central-hero-kicker.sc-chip{margin-bottom:10px}body.central-mode .central-hero h1{font-size:42px;line-height:1.25;color:#fff}body.central-mode .central-hero h1 .sc-gold-text{font-size:1.18em}.central-hero-copy p:last-child{color:#dccbe2}body.central-mode main .central-hero-link{background:#ffffff0f;border:1px solid #e2b84f80;color:#fbe7a8}body.central-mode main .central-hero-link:hover{background:#e2b84f26}
.central-ring{width:150px;height:150px;filter:drop-shadow(0 0 18px #e2b84f40)}.central-ring circle{stroke-width:11}.central-ring-track{stroke:#ffffff1f}.central-ring-value{stroke-linecap:round;animation:sc-ring 1.1s cubic-bezier(.2,.8,.2,1) both}@keyframes sc-ring{from{stroke-dasharray:0 999}}.central-ring-label strong{font-size:34px;color:#fff}.central-ring-label span{color:#e9cf86}
.central-tile{background:#ffffff0d;border:1px solid #ffffff24;color:#fff;border-radius:16px}.central-tile:hover{background:#e2b84f1f;border-color:var(--sc-gold);transform:translateY(-3px)}.central-tile-label{color:#e6d6ea}.central-tile-value{color:#fff;font-size:36px}.central-tile-value small{color:#c7b0cf}.central-tile[data-status=submitted_confirmed]{background:linear-gradient(135deg,#e2b84f2e,#e2b84f0d);border-color:#e2b84fa6}.central-tile[data-status=submitted_confirmed] .central-tile-value{color:var(--sc-gold-hi)}.central-tile .cs-not_started{box-shadow:none}.central-hero .central-demo-note{background:#e2b84f1a;border-color:#e2b84f59;color:#f7e6b8}
.central-group-row:hover{background:var(--sc-50)}.central-bar{height:14px;border-radius:7px}.central-group-value strong{color:var(--sc-700)}.central-need-track{height:10px;background:#f1e9f4}.central-need-track i{background:linear-gradient(90deg,var(--sc-600),var(--sc-500))}.central-need-track i.is-top{background:linear-gradient(90deg,#c8952f,#e2b84f,#fbe7a8)}.central-need-list b{background:var(--sc-50);color:var(--sc-700)}.central-need-list li:first-child b{background:linear-gradient(135deg,#fbe7a8,#e2b84f);color:var(--sc-800)}
.central-steps b{background:linear-gradient(135deg,var(--sc-800),var(--sc-600));color:var(--sc-gold-hi);box-shadow:0 0 0 2px #fff,0 0 0 3px #e2b84f8c}.central-steps li:not(:last-child):before{background:linear-gradient(#e2b84f99,#eadff0)}
body.central-mode #central-list .data-table th{background:var(--sc-50);color:#7c6385;font-size:12.5px;letter-spacing:.03em}body.central-mode #central-list tbody tr{transition:background .12s}body.central-mode #central-list tbody tr:hover{background:#fbf7fc}body.central-mode #central-list td a{font-weight:700;text-decoration:none}body.central-mode #central-list td a:hover{text-decoration:underline;text-decoration-color:var(--sc-gold)}
.central-person-hero{border-radius:24px;padding:30px 34px 22px;margin-bottom:20px}body.central-mode main .central-person-hero .central-person-head{background:none;border:0;padding:0;margin:0 0 18px;position:relative}body.central-mode main .central-person-hero h1{color:#fff;font-size:36px}body.central-mode main .central-person-hero .lead{color:#dccbe2}body.central-mode main .central-person-hero .eyebrow{margin-bottom:10px}body.central-mode main .central-person-hero .tag{background:#ffffff17;color:#f3e6f6}body.central-mode main .central-person-hero .tag-gold{background:#e2b84f2e;color:#fbe7a8}body.central-mode main .central-person-hero .btn-primary,body.central-mode #central-edit>.page-heading .btn-primary{background:linear-gradient(135deg,#fbe7a8,#e2b84f 55%,#c8952f);color:var(--sc-900)}body.central-mode main .central-person-hero .btn-outline,body.central-mode #central-edit>.page-heading .btn-outline{background:#ffffff0f;border-color:#ffffff40;color:#fff}body.central-mode main .central-person-hero .btn-outline:hover,body.central-mode #central-edit>.page-heading .btn-outline:hover{border-color:var(--sc-gold);background:#e2b84f1f}
body.central-mode .central-person-hero .central-journey-box{background:#00000026;border:1px solid #ffffff1a;margin:0;border-radius:16px}body.central-mode .central-person-hero .central-journey li{color:#c7b0cf}body.central-mode .central-person-hero .central-journey li:not(:first-child):before{background:#ffffff26}body.central-mode .central-person-hero .central-journey b{background:#ffffff14;color:#e6d6ea}body.central-mode .central-person-hero .central-journey .is-done b{background:linear-gradient(135deg,#fbe7a8,#e2b84f);color:var(--sc-900)}body.central-mode .central-person-hero .central-journey .is-done:before,body.central-mode .central-person-hero .central-journey .is-now:before{background:var(--sc-gold)!important}body.central-mode .central-person-hero .central-journey .is-now b{background:#fff;color:var(--sc-800);box-shadow:0 0 0 4px #e2b84f99}body.central-mode .central-person-hero .central-journey .is-now{color:#fff}body.central-mode .central-person-hero .central-next{color:#f3d98e}
body.central-mode main .panel>h2{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.central-comp-list li{border-bottom-color:#f3ecf6}.central-comp-list strong{color:var(--sc-700)}body.central-mode .central-details summary{color:var(--sc-600)}
body.central-mode #central-edit>.page-heading{border-radius:24px;padding:26px 32px;margin-bottom:18px}body.central-mode #central-edit>.page-heading h1{color:#fff;font-size:34px}body.central-mode #central-edit>.page-heading .eyebrow{display:inline-flex;padding:3px 13px;border:1px solid #e2b84f80;border-radius:999px;color:#f3d98e;background:#e2b84f14;letter-spacing:.02em}body.central-mode #central-edit>.page-heading .tag{background:#ffffff17;color:#f3e6f6}body.central-mode #central-edit>.page-heading .tag-gold{background:#e2b84f2e;color:#fbe7a8}
body.central-mode .edit-steps{gap:10px}body.central-mode .edit-steps .step-tab{background:#fff;border:1px solid var(--sc-line);border-radius:14px;color:#6b4f74;padding:14px 12px}body.central-mode .edit-steps .step-tab b{border-color:#dccbe3}body.central-mode .edit-steps .step-tab.active{background:linear-gradient(135deg,var(--sc-800),var(--sc-600));color:#fff;border-color:#e2b84f99;box-shadow:0 10px 24px -14px #1b0420}body.central-mode .edit-steps .step-tab.active b{background:var(--sc-gold);border-color:var(--sc-gold);color:var(--sc-900)}body.central-mode .edit-scores label{border-color:#dccbe3;transition:transform .1s}body.central-mode .edit-scores label:hover{border-color:var(--sc-gold)}body.central-mode .edit-scores label:has(input:checked){background:linear-gradient(135deg,var(--sc-800),var(--sc-600));border-color:var(--sc-gold);box-shadow:0 0 0 2px #e2b84f59;color:var(--sc-gold-hi)}body.central-mode .edit-group-title{color:var(--sc-700)}body.central-mode .edit-rank b{color:var(--sc-gold-deep)}
.sc-login{display:grid;grid-template-columns:1.1fr .9fr;max-width:1040px;min-height:540px;margin:18px auto;border-radius:28px;overflow:hidden;background:#fff;box-shadow:0 30px 70px -34px #1b0420b3;border:1px solid var(--sc-line)}.sc-login-intro{border:0;box-shadow:none;padding:46px 44px;display:flex;flex-direction:column;justify-content:center}.sc-seal{position:relative;display:grid;place-items:center;width:96px;height:96px;border-radius:50%;background:#fff7df;margin-bottom:22px;box-shadow:0 0 0 3px var(--sc-gold),0 0 0 10px #e2b84f26,0 0 46px #e2b84f66}.sc-seal img{max-width:66px;max-height:76px}.sc-seal:after{content:'';position:absolute;inset:-16px;border-radius:50%;border:1px solid #e2b84f59;animation:sc-halo 3.2s ease-in-out infinite}@keyframes sc-halo{50%{transform:scale(1.08);opacity:.35}}body.central-mode main .sc-login-intro h1{color:#fff;font-size:48px;line-height:1.2;margin:14px 0 8px}.sc-login-tagline{color:#dccbe2;font-size:16px;max-width:420px}.sc-features{list-style:none;margin:18px 0 0;padding:0!important;display:grid;gap:10px}.sc-features li{display:flex;align-items:center;gap:12px;font-size:15px;color:#f3e6f6}.sc-features b{display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:9px;background:linear-gradient(135deg,#fbe7a8,#e2b84f);color:var(--sc-900);font-size:13px}
.sc-login-form{padding:46px 42px;align-self:center}body.central-mode main .sc-login-form h2{font-size:28px}.sc-login-form form{margin-top:20px}body.central-mode main .sc-login-form input{min-height:50px;border-radius:12px;font-size:16px}body.central-mode main .sc-login-form .btn{width:100%;min-height:52px;font-size:17px;border-radius:12px}
@media(max-width:860px){.sc-login{grid-template-columns:1fr;margin:0;min-height:0}.central-hero:after,.central-person-hero:after,body.central-mode #central-edit>.page-heading:after{width:260px;height:260px;right:-60px}}
@media(max-width:640px){.central-hero{padding:22px 18px 18px;border-radius:20px}body.central-mode .central-hero h1{font-size:29px}.central-ring{width:112px;height:112px}.central-ring-label strong{font-size:26px}.central-tile-value{font-size:28px}.central-person-hero{padding:20px 16px 16px;border-radius:20px}body.central-mode main .central-person-hero h1{font-size:27px}body.central-mode #central-edit>.page-heading{padding:20px 16px;border-radius:20px}body.central-mode #central-edit>.page-heading h1{font-size:26px}body.central-mode .central-person-hero .central-journey-box{padding:12px 4px 8px}.sc-login{border-radius:20px}.sc-login-intro{padding:28px 22px}.sc-seal{width:74px;height:74px;margin-bottom:12px}.sc-seal img{max-width:50px;max-height:58px}body.central-mode main .sc-login-intro h1{font-size:36px}.sc-features li{font-size:14px}.sc-login-form{padding:26px 22px}body.central-mode main .panel:before{left:16px}.sc-eyebrow{font-size:12px}}
@media(prefers-reduced-motion:reduce){.central-ring-value,.sc-seal:after{animation:none}body.central-mode main .btn,.central-tile{transition:none}}
body.central-mode .central-person-hero .central-st .central-swatch,body.central-mode #central-edit>.page-heading .central-st .central-swatch{box-shadow:0 0 0 1.5px #ffffffb3}
@media(max-width:640px){body.central-mode .central-hero h1{font-size:25px}.sc-chip{font-size:12px;padding:2px 10px}}
/* PA presentation pages: same school theme as the central system. */
.pa-hero{position:relative;overflow:hidden;isolation:isolate;color:#fff;background:var(--sc-pattern),radial-gradient(600px 300px at 88% 0%,#e2b84f2e,transparent 65%),linear-gradient(135deg,var(--sc-900),var(--sc-700) 55%,#6a2c78);border:1px solid #e2b84f59;box-shadow:0 26px 60px -30px #1b0420e6;border-radius:24px;padding:34px 36px 28px;margin-bottom:18px}.pa-hero:after{content:'';position:absolute;z-index:-1;right:-70px;top:50%;width:380px;height:380px;transform:translateY(-50%);background:repeating-radial-gradient(circle,transparent 0 30px,#e2b84f2e 30px 31px);-webkit-mask:radial-gradient(circle,#000 0,#000 35%,transparent 70%);mask:radial-gradient(circle,#000 0,#000 35%,transparent 70%);pointer-events:none}
body.central-mode main .pa-hero h1{color:#fff;font-size:40px;line-height:1.25;margin:6px 0 4px}.pa-hero-main{display:flex;align-items:center;gap:22px}.pa-role{color:#dccbe2;margin:0;font-size:16px}.pa-headline{font-size:24px;font-weight:700;line-height:1.45;margin:20px 0 6px;max-width:820px}.pa-intro{color:#e6d6ea;font-size:16px;max-width:760px;margin:0 0 6px}
.pa-avatar{display:grid;place-items:center;flex:none;width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,#fbe7a8,#e2b84f 55%,#c8952f);color:var(--sc-900);font-size:24px;font-weight:700;box-shadow:0 0 0 3px #fff,0 0 0 4px #e2b84f80}.pa-avatar-lg{width:92px;height:92px;font-size:42px;box-shadow:0 0 0 4px #ffffff26,0 0 0 9px #e2b84f40,0 0 40px #e2b84f59}
.pa-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:22px}.pa-stat{background:#ffffff0d;border:1px solid #ffffff24;border-radius:16px;padding:12px 16px}.pa-stat strong{display:block;font-size:30px;line-height:1.2;color:var(--sc-gold-hi)}.pa-stat span{color:#dccbe2;font-size:14px}
body.central-mode main .pa-proto{margin-bottom:16px;background:#fff;border:1px solid var(--sc-line);border-left:3px solid var(--sc-gold);color:#6b4f74;border-radius:10px}.pa-actions{margin-bottom:16px}
.pa-search{margin-top:18px;max-width:560px;min-height:52px!important;border-radius:14px!important;border:1px solid #e2b84f80!important;background:#ffffff14!important;color:#fff!important;font-size:16px!important;padding:12px 18px!important}.pa-search::placeholder{color:#cdb6d3}
.pa-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.pa-card{display:flex;align-items:center;gap:16px;padding:18px 20px;background:#fff;border:1px solid var(--sc-line);border-radius:18px;text-decoration:none;color:var(--sc-ink);box-shadow:0 14px 34px -24px #30003166;transition:transform .15s,border-color .15s}.pa-card:hover{transform:translateY(-3px);border-color:var(--sc-gold)}.pa-card-body{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}.pa-card-body strong{font-size:17px}.pa-card-body small{color:var(--muted);font-size:13.5px}.pa-card-headline{font-size:14px;color:var(--sc-600)}.pa-card-body .tag{width:fit-content}.pa-card-go{font-size:22px;color:var(--sc-gold-deep)}
.pa-works{display:grid;gap:16px;margin-top:10px}.pa-work{border:1px solid var(--sc-line);border-radius:16px;padding:18px 20px;background:linear-gradient(180deg,#fff,#fcf9fd)}.pa-work-head{display:flex;align-items:center;gap:12px;margin-bottom:6px}.pa-work-head b{display:grid;place-items:center;flex:none;width:32px;height:32px;border-radius:10px;background:linear-gradient(135deg,var(--sc-800),var(--sc-600));color:var(--sc-gold-hi)}body.central-mode main .pa-work h3{margin:0;font-size:18px}.pa-outcome{display:inline-flex;flex-wrap:wrap;gap:8px;align-items:center;background:#fcf3df;border-radius:10px;padding:6px 12px;color:#6b4a0c}.pa-outcome span{font-weight:700}
.pa-evidence{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-top:12px}.pa-evidence a{display:block;text-decoration:none;color:var(--sc-ink);border:1px solid var(--sc-line);border-radius:14px;overflow:hidden;background:#fff;transition:transform .15s,border-color .15s}.pa-evidence a:hover{transform:translateY(-2px);border-color:var(--sc-gold)}.pa-evidence img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:var(--sc-50)}.pa-evidence span{display:block;padding:8px 12px;font-size:13.5px}.pa-file{padding:14px!important;font-weight:700}
.pa-summary{font-size:16px;line-height:1.8;white-space:pre-line}.pa-plan,.pa-timeline{list-style:none;margin:10px 0 0;padding:0!important;display:grid;gap:12px}.pa-plan li{display:flex;gap:12px}.pa-plan b{display:grid;place-items:center;flex:none;width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,#fbe7a8,#e2b84f);color:var(--sc-900)}.pa-plan li>div>strong,.pa-plan li>div>span{display:block}.pa-plan li>div>span{color:var(--muted);font-size:14px}
.pa-timeline li{position:relative;padding-left:22px;border-left:2px solid #eadff0}.pa-timeline li:before{content:'';position:absolute;left:-7px;top:6px;width:12px;height:12px;border-radius:50%;background:var(--sc-gold);box-shadow:0 0 0 3px #fff}.pa-timeline>li>span{display:block;color:var(--sc-gold-deep);font-size:13px;font-weight:700}.pa-timeline strong{display:block;font-size:15px}.pa-timeline small{color:var(--muted);font-size:13.5px}
.sc-public-link{display:block;margin-top:16px;text-align:center;font-size:14.5px;font-weight:700;color:var(--sc-600)!important;text-decoration:none}.sc-public-link:hover{text-decoration:underline;text-decoration-color:var(--sc-gold)}
@media(max-width:860px){.pa-stats{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.pa-hero{padding:22px 18px 18px;border-radius:20px}.pa-hero-main{gap:14px}.pa-avatar-lg{width:66px;height:66px;font-size:30px}body.central-mode main .pa-hero h1{font-size:27px}.pa-headline{font-size:19px;margin-top:14px}.pa-intro{font-size:15px}.pa-stat{padding:10px 12px}.pa-stat strong{font-size:24px}.pa-grid{grid-template-columns:1fr}.pa-work{padding:14px}.pa-evidence{grid-template-columns:1fr}.pa-hero:after{width:260px;height:260px;right:-60px}}
@media(prefers-reduced-motion:reduce){.pa-card,.pa-evidence a{transition:none}}
@media(min-width:861px){.pa-work{display:grid;grid-template-columns:minmax(0,1fr) 280px;column-gap:28px;align-items:start}.pa-work>*{grid-column:1}.pa-work>.pa-evidence{grid-column:2;grid-row:1/span 4;margin-top:0;grid-template-columns:1fr}.pa-work>p{margin-bottom:10px}}
.pa-work>.pa-outcome{justify-self:start}
.pa-review-head{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.pa-review-head>div{flex:1 1 260px}body.central-mode main .pa-review-head h2{margin:0;font-size:20px}.pa-review-head .muted{margin:0}.pa-chips{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.pa-chip{display:inline-flex;align-items:center;gap:8px;padding:5px 12px;border:1px solid var(--sc-line);border-radius:999px;background:var(--sc-50);font-size:13.5px}.pa-chip b{color:var(--sc-700)}.pa-review-notes{display:grid;gap:10px;margin-bottom:12px}.pa-review-notes>div{border-left:3px solid var(--sc-gold);background:#fcf9fd;border-radius:0 10px 10px 0;padding:10px 14px}.pa-review-notes p{margin:4px 0}.pa-review-by{display:block;color:var(--muted);font-size:12.5px;margin-top:6px}.pa-review-form{display:grid;gap:12px;border-top:1px solid var(--sc-line);padding-top:14px}.pa-review-form .btn{justify-self:start}.pa-radios{display:flex;flex-wrap:wrap;gap:10px}.pa-radios label{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border:1px solid #dccbe3;border-radius:12px;cursor:pointer;font-weight:400}.pa-radios input{width:auto;min-height:0;margin:0}.pa-radios label:has(input:checked){background:linear-gradient(135deg,var(--sc-800),var(--sc-600));color:#fff;border-color:var(--sc-gold)}.central-user .table-actions{gap:8px}
@media(max-width:640px){.central-mode .breadcrumb{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis}.central-mode #save-state{flex:none;white-space:nowrap}}

/* Public ID Plan pages and the review list. */
.pa-filters{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.pa-filters .pa-search{margin-top:0}.pa-filters select.pa-search{max-width:280px}.pa-filters select.pa-search option{color:var(--sc-ink)}.pa-card-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.pa-work.is-empty{background:#fbf9fc;border-style:dashed}.pa-columns{margin-top:10px}
body.central-mode main .central-person-hero .pa-hero-main{display:flex;align-items:center;gap:20px}.central-person-hero .pa-stats{margin:0 0 16px}
.pa-review{border:1px solid var(--sc-line);border-radius:16px;margin-bottom:10px;background:#fff}.pa-review>summary{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 16px;cursor:pointer;list-style:none}.pa-review>summary::-webkit-details-marker{display:none}.pa-review>summary:hover{background:var(--sc-50);border-radius:16px}.pa-review[open]>summary{border-bottom:1px solid var(--sc-line)}.pa-review-name{display:flex;flex-direction:column;flex:1 1 220px;min-width:0}.pa-review-name small{color:var(--muted);font-size:13px;display:flex;gap:6px;align-items:center;flex-wrap:wrap}.pa-review .pa-chips{margin:0}.pa-review-body{padding:14px 16px 16px;display:grid;gap:12px}.pa-review-body>.btn{justify-self:start}
@media(max-width:640px){.pa-filters select.pa-search{max-width:none}body.central-mode main .central-person-hero .pa-hero-main{gap:12px}.pa-review>summary{padding:12px}}
