/* Presentation only. Workflow, form names, data attributes and state are unchanged. */
:root{--ink:#111d39;--muted:#52617b;--blue:#245bf5;--line:#d9e2f1;--radius:24px;--shadow:0 12px 32px #263f7210;--ceramic:linear-gradient(145deg,#fff 5%,#f9fbff 60%,#edf3ff);color-scheme:light}
body,.workspace{color:var(--ink);background:radial-gradient(ellipse at 88% 0,#fff 0,transparent 44%),radial-gradient(ellipse at 20% 55%,#e5eeff 0,transparent 60%),linear-gradient(125deg,#f8faff,#edf2fa 55%,#e4edfc);background-attachment:fixed}
body{font-size:16px}h1,h2,h3{color:var(--ink);letter-spacing:-.035em}p{line-height:1.65}.muted,.small-text{color:var(--muted)}
.workspace{background-image:url('/ceramic/ambient.svg'),linear-gradient(125deg,#f8faff,#edf2fa 55%,#e4edfc);background-position:right top,center;background-size:1600px 1100px,cover;background-repeat:no-repeat}
.sidebar,.admin-workspace .sidebar{background:linear-gradient(155deg,#fff,#f7f9fd 70%,#edf3fc);color:var(--ink);border-right:1px solid #fff;box-shadow:8px 0 32px #253a6310}
.sidebar .brand img,.admin-workspace .sidebar .brand img,.auth-story .brand img{filter:none}
.admin-workspace .workspace-label,.admin-workspace .profile small,.admin-workspace .profile .icon-button{color:#536681}.admin-workspace .profile{border-color:#dbe4f2}
.workspace-label,.sidebar .profile small,.owner-note{color:#536681}
.side-link,.help-button,.sidebar .icon-button{color:#354966}
.side-link:hover,.help-button:hover{background:#e9f0fd;color:#164dc4}
.side-link.active,.admin-workspace .side-link.active{background:linear-gradient(155deg,#377aff,#1250e8);color:#fff;border:1px solid #6596ff;box-shadow:inset 0 1px 1px #ffffff75,0 5px 14px #245bf52b;border-radius:16px;backdrop-filter:none}
.side-link.active::before{display:none}.side-link .icon,.help-button .icon{filter:drop-shadow(0 1px 0 #ffffff70)}
.sidebar .profile{border-color:#dbe4f2}.sidebar .avatar,.avatar{background:linear-gradient(145deg,#fff,#dee9fc);color:#2456ac;border:1px solid #fff;box-shadow:0 3px 8px #1d427317}
.nav-count{background:#fff3;color:inherit}.topbar{background:#ffffffb8;border-bottom:1px solid #fff;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.breadcrumbs{color:#405571}
.workspace main{position:relative}.page-heading h1{font-size:clamp(28px,3vw,42px);font-weight:750}.page-heading p{color:#52617b;font-size:17px}.eyebrow{color:#4b6386;letter-spacing:.09em}.blue-dot{color:#245bf5}
.surface,.work-section,.balance-card,.membership,.admin-metrics>div,.result-card{background:var(--ceramic);border:1px solid #fff;border-radius:24px;box-shadow:inset 0 1px 0 #fff,0 12px 32px #263f7210}
.section-title{border-color:#dfe7f4}.section-title h2,.section-caption h2{color:var(--ink)}.section-caption p{color:#52617b}.work-section{padding:28px 30px}
.section-caption>span,.student-number{background:linear-gradient(145deg,#fff,#e4edff);border:1px solid #fff;color:#2256bd;box-shadow:2px 3px 7px #1b42801a,inset 0 1px 0 #fff}
.student-pager{border:1px solid #fff;background:#ffffffd9;box-shadow:0 4px 15px #263f720b;border-radius:18px}.student-pager b{color:#172947}.student-pager small{color:#52617b}
.field>span,.field{color:#233956}.field input,.field select,.field textarea,.field>input,.search-input input{background:linear-gradient(180deg,#fff,#f8faff);border:1px solid #bdcce3;border-radius:13px;color:#14233e;box-shadow:inset 0 2px 4px #31517b06;font-size:16px}
.field input:focus,.field select:focus,.field textarea:focus,.search-input input:focus{outline:3px solid #245bf526;border-color:#245bf5;background:#fff}
input[type=checkbox],input[type=radio]{accent-color:#245bf5}.field small,.subtle-row{color:#52617b}.field input::placeholder,.field textarea::placeholder{color:#667792;opacity:1}
.password-input button{color:#47628b}.form-error{color:#a52632}.needs-input input,.needs-input select{border:1.5px solid #ad771b;background:#fffaf0}.needs-input small{color:#82560b}
input[type=file]{padding:10px;font-size:14px;max-width:100%}input[type=file]::file-selector-button{font:inherit;font-weight:600;color:#2054b4;background:linear-gradient(145deg,#fff,#eaf1ff);border:1px solid #c2d3ef;border-radius:9px;padding:9px 12px;margin-right:10px;cursor:pointer}
.button{border-radius:14px}.button.primary,.start-card .button.white,.single-calculator .button{background:linear-gradient(160deg,#387bff,#1754ed);color:#fff;border:1px solid #5b88f6;border-radius:15px;box-shadow:inset 0 1px 0 #ffffff65,0 5px 13px #245bf52b}
.button.primary:hover,.start-card .button.white:hover,.single-calculator .button:hover{background:linear-gradient(150deg,#2867f1,#1245ca);box-shadow:0 7px 18px #245bf533}
.button.secondary,.button.white{background:linear-gradient(160deg,#fff,#eff4ff);border:1px solid #c8d8f2;color:#214c9e;border-radius:14px;box-shadow:inset 0 1px 0 #fff,0 3px 8px #2b4d7b0a}
.button.secondary:hover{border-color:#86aaf4;background:#eaf2ff}.button.link,.table-action{color:#1d53c1}.button:disabled{box-shadow:none;opacity:.48}
:is(button,a,input,select,textarea):focus-visible{outline:3px solid #245bf5;outline-offset:3px}
.upload-card,.upload-card.has-file{background:linear-gradient(135deg,#fff,#eff5ff);border:1px dashed #98b2db;border-radius:18px;box-shadow:inset 0 1px 0 #fff}
.upload-card.has-file{border-style:solid;border-color:#b2c7e8}.upload-copy h3{color:#183565}.upload-copy p{color:#52617b}
.upload-glyph,.auth-icon,.modal-symbol,.metric-icon,.metric-icon.green,.metric-icon.purple,.balance-icon,.file-icon,.empty-symbol,.assist-icon{color:#245bf5;background:linear-gradient(145deg,#fff 20%,#e5edfb);border:1px solid #fff;box-shadow:inset -2px -3px 5px #c3d4f550,2px 4px 8px #25477c1c;border-radius:14px}
.upload-glyph .icon,.metric-icon .icon,.modal-symbol .icon,.auth-icon .icon,.file-icon .icon{stroke-width:1.8;filter:drop-shadow(1px 2px 0 #aac2f34d)}
.document-choice label{background:#fff;border-color:#c8d7ed;color:#344f76}.document-choice label:has(input:checked){background:#edf3ff;border-color:#4d7dea;color:#174bae;box-shadow:inset 0 1px 0 #fff}
.notice{background:#edf4ff;border-color:#bdd1ee;border-left-color:#447aea;color:#25456f;border-radius:14px}.notice.warning{background:#fff6df;border-color:#e6c271;border-left-color:#b97c19;color:#714a0b}.notice.success{background:#eaf7f0;border-color:#a4ccb4;color:#24593d}.notice.error{background:#fff0f1;border-color:#e9aab1;color:#962f3c}
.source-label{background:#e8f5ed;color:#275d42}.auto-values span{background:#f1f5fc;border-color:#d8e3f4;color:#4a6285}.inset{background:#f3f7fd;border-color:#dae4f3;border-radius:18px}
/* Preserve the proven one-column progress layout and semantic status colours. */
.recognition-progress{background:linear-gradient(135deg,#fff,#eaf2ff);border-color:#b1c8ee;border-left-color:#245bf5;border-radius:16px}.progress-heading{color:#1a3459}.progress-percent{color:#1750ca}.progress-track{background:#d5e2f8}.progress-track>span{background:linear-gradient(90deg,#478aff,#1c54eb)}.progress-caption small{color:#465f83}.recognition-progress .button{color:#2055bc}
.review-check{background:#edf7f1;border-color:#aecdbb;color:#23523a}.review-check small{color:#426651}.batch-bar{background:linear-gradient(135deg,#fff,#e9f1ff);border:1px solid #fff;color:#19355d;box-shadow:var(--shadow);border-radius:20px}.batch-bar small{color:#52617b}.batch-bar .secondary{background:#fff;color:#234d98;border-color:#c1d2ee}
/* Same dashboard content and actions, with the document illustration as decoration. */
.start-card{background:linear-gradient(130deg,#fff,#eef4ff);color:#14233e;border:1px solid #fff;box-shadow:var(--shadow);border-radius:26px;padding:30px;isolation:isolate}
.start-card::after{content:'';display:block;height:220px;margin:20px -10px 0;background:url('/ceramic/document-covers-cutout.png') center/contain no-repeat;mix-blend-mode:multiply;pointer-events:none}
.start-card::after{mask-image:radial-gradient(ellipse,#000 58%,#0009 80%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse,#000 58%,#0009 80%,transparent 100%)}
.muted-balance .balance-icon{background:linear-gradient(145deg,#fff,#e5edfb);color:#4c6896}
.start-card h2{color:#122544;font-size:clamp(27px,2.4vw,36px)}.start-card p{color:#475d7c;font-size:16px}.card-kicker{color:#2a508d}.card-badge{background:#e7efff;border-color:#c0d2f4;color:#2456af}.start-card-bottom{border-color:#d3e0f5;color:#435f88;font-size:14px}
.balance-card h2{color:#182c4d}.balance-row{border-color:#e0e8f5}.balance-row b{color:#153f96}.balance-row div>span{color:#52617b}.muted-balance{opacity:1}.muted-balance b{color:#64738a}
.assist-strip{background:linear-gradient(135deg,#fff,#eaf1ff);border:1px solid #fff;box-shadow:var(--shadow);border-radius:22px;color:#253b60}.assist-strip h3{color:#172d50}.assist-strip p{color:#52617b}.assist-strip .button{color:#1d53c1}
.membership{border-top:1px solid #fff}.membership-number b{color:#1b4bb3}.membership-number span{color:#52617b}.bank-tag{color:#256344!important}.consultation-card{background:var(--ceramic);border:1px solid #fff;box-shadow:var(--shadow);border-radius:24px;color:#193253}.consultation-card h2{color:#172d50}.consultation-card p{color:#52617b}.consultation-card .modal-symbol{background:#edf3ff;color:#245bf5}
.package-row,.ticket-row{border-color:#dce5f3}.ticket-row{background:transparent}.ticket-row:hover{background:#edf3ff}.package-row small,.ticket-row small{color:#52617b}.soft-tag,.plan-tag{background:#edf3ff;color:#3d5b8a;border-color:#d5e1f5}.soft-tag.success,.status-pill{background:#e8f5ed;color:#256344}.status-pill.paused{background:#fff3df;color:#805410}
/* Tariffs reuse the same imagery subjects and exact commercial rules. */
.plans-intro{background:radial-gradient(ellipse at top right,#dce9ff,transparent 60%),var(--ceramic);border:1px solid #fff;color:#152a4c;box-shadow:var(--shadow)}.plans-intro .eyebrow{color:#47658e}.plans-intro h1{color:#111d39}.plans-intro>p{color:#475d7c}.plan-guide{border-color:#d2dff2}.plan-guide b{color:#1b335b}.plan-guide span{color:#52617b}
.plan-card,.plan-card:nth-child(3),.plan-card:nth-child(4){background:var(--ceramic);border:1px solid #fff;border-radius:26px;box-shadow:var(--shadow)}.plan-card.featured{background:linear-gradient(145deg,#fff,#edf4ff);border:2px solid #6591ee;box-shadow:0 10px 28px #245bf51a}.plan-card.featured .plan-ribbon{background:linear-gradient(135deg,#397aff,#1c52df);border:1px solid #82a6f6;border-radius:10px}.plan-card h2{color:#172a49}.plan-card p,.plan-card ul,.plan-price small{color:#475d7c}.plan-price{color:#111d39}
.plan-illustration,.plan-illustration-start,.plan-illustration-school,.plan-illustration-unlimited,.plan-illustration-expert{background-image:url('/ceramic/illustrations.png');background-size:300% 200%;mix-blend-mode:multiply}.plan-illustration-single{background-position:0 0}.plan-illustration-start{background-position:50% 0}.plan-illustration-school{background-position:100% 0}.plan-illustration-unlimited{background-position:0 100%}.plan-illustration-expert{background-position:50% 100%}
.single-order{background:var(--ceramic);color:#18365c;border:1px solid #fff;box-shadow:var(--shadow);border-radius:24px}.single-order h2{color:#172a49}.single-order p{color:#475d7c}.single-order .eyebrow{color:#47658e}.single-calculator .field>span{color:#233956}.single-calculator output{color:#163e95}.single-order .plan-art{background:transparent}.plan-explainer{background:#ffffffc9;border:1px solid #fff;box-shadow:var(--shadow);border-radius:24px}.plan-explainer h2{color:#172a49}.plan-explainer p{color:#475d7c}
/* Owner tables, support and modal forms retain their existing responsive structure. */
.admin-tabs{background:#ffffff9e;border:1px solid #fff;border-radius:18px;padding:10px}.admin-metrics b{color:#1a3b74}.admin-metrics span:not(.metric-icon){color:#52617b}.table-toolbar{background:transparent}.account-table th{background:#eef4fd;color:#52617b}.account-table td{border-color:#e0e8f4}.school-cell b{color:#162f54}.school-cell small{color:#52617b}.account-table tr:hover{background:#f0f5ff}
dialog{background:linear-gradient(145deg,#fff,#f5f8fe);color:#152a49;border:1px solid #fff;border-radius:26px;box-shadow:0 24px 90px #142b5b38}dialog::backdrop{background:#263f674d;backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}dialog h2{color:#152a49}.close-button{background:#edf3fd;color:#466080;border-radius:50%}.ticket-message{background:#edf3fc;color:#243f65}.bank-switch{background:#edf7f1;border-color:#afcfbd;border-radius:16px}.bank-switch small{color:#3e6651}
.workspace-footer{color:#52617b;border-color:#d8e3f3}#toast{background:#142e54;color:#fff;box-shadow:0 8px 24px #183b5f30;border-radius:14px}
/* Entry and registration use the same light visual language. */
.auth-layout{background:radial-gradient(ellipse at 86% 4%,#fff 0,transparent 35%),radial-gradient(circle at 14% 84%,#dce9ff 0,transparent 31%),linear-gradient(135deg,#f8fbff 0%,#e7effd 52%,#f4f7fc 100%)}.auth-story{background:transparent;color:#14233e;border-right:1px solid #ffffffb8}.auth-story h1{color:#111d39}.auth-story h1 em{color:#245bf5}.auth-story-copy p{color:#475d7c}.auth-story-copy .eyebrow,.auth-story footer,.product-name{color:#52617b}.auth-story-copy{margin-top:42px}.auth-art img{border-radius:24px;max-height:330px;filter:drop-shadow(0 20px 34px #27456d24)}.art-caption{background:#ffffffe8;color:#38567f;border:1px solid #fff;box-shadow:var(--shadow);backdrop-filter:blur(12px)}
.auth-form-side{background:transparent;position:relative}.auth-form-side::before{content:"";position:absolute;inset:9% 8%;background:radial-gradient(circle,#ffffffa8 0,transparent 68%);pointer-events:none}.auth-card{position:relative;background:#fffffff0;border:1px solid #fff;border-radius:26px;box-shadow:0 20px 58px #25427418;backdrop-filter:blur(18px);padding:30px}.auth-description,.auth-bottom p{color:#52617b}.auth-tabs{background:#eaf0fb;border-radius:14px;padding:5px}.auth-tabs a{color:#52617b}.auth-tabs a.active{background:#fff;color:#1c51c1;border-radius:10px;box-shadow:0 2px 8px #25457715}.auth-bottom{border-color:#dae4f4}.auth-bottom .icon{color:#3567bd}.access-error{background:var(--ceramic);border-radius:24px}.loading-screen{color:#315989}.loader{border-top-color:#245bf5}
@media(min-width:1400px){.start-card{padding-right:44%;min-height:400px}.start-card::after{position:absolute;right:0;top:20%;width:43%;height:65%;margin:0;z-index:-1}.start-card-bottom{flex-wrap:wrap;gap:15px}.start-card h2{font-size:32px}.start-card p br{display:none}}
@media(max-width:900px){.topbar{background:#f9fbfff0}.auth-story-copy{margin-top:28px}}
@media(max-width:700px){.mobile-nav{background:#f9fbfff5;border-top:1px solid #fff;box-shadow:0 -5px 24px #26447812;backdrop-filter:blur(15px)}.mobile-nav button{color:#536b8c}.mobile-nav button.active{background:linear-gradient(140deg,#3a7aff,#1952e3);color:white;border:1px solid #84a8fa;border-radius:13px}.work-section{padding:22px 18px}.upload-card{padding:18px}.recognition-progress{padding:16px}.auth-card{padding:24px 20px}.start-card::after{height:190px}.start-card h2{font-size:28px}.auth-mobile-brand{color:#52617b}.page-heading p{font-size:16px}.single-order .plan-art{display:flex;width:110px;height:110px;justify-self:center}.single-order .plan-illustration{width:110px;height:110px}}
@media(prefers-reduced-transparency:reduce){.topbar,.mobile-nav{background:#f8faff;backdrop-filter:none}dialog::backdrop{backdrop-filter:none}}
@media(prefers-reduced-motion:reduce){.plan-card,.button{transition:none;transform:none}}
@media(forced-colors:active){.side-link.active,.button.primary{border:2px solid Highlight}.start-card::after,.plan-illustration{display:none}}

/* Shared allowance and clear report choices. */
.plan-card .plan-illustration-start{background:url('/ceramic/course-cohort.png') center/contain no-repeat;mix-blend-mode:normal}
.plan-card .plan-illustration-school{background:url('/ceramic/school-cohorts.png') center/contain no-repeat;mix-blend-mode:normal}
.workspace>.sidebar{z-index:40;isolation:isolate}
.workspace>.workspace-body{position:relative;z-index:0}
.sidebar .side-link:hover,.sidebar .side-link:focus-visible{z-index:2}
.sidebar .side-link .nav-tooltip{left:calc(100% + 10px);width:320px;max-width:calc(100vw - 260px);padding:18px 20px;background:#152f51;color:#fff;border:1px solid #496280;font-size:15px;font-weight:500;line-height:1.55;white-space:normal;overflow-wrap:break-word;text-align:left;box-shadow:0 10px 30px #10264435}
.sidebar .nav-tooltip::before{content:'';position:absolute;right:100%;top:0;width:12px;height:100%}
.start-card::after{mix-blend-mode:normal;mask-image:none;-webkit-mask-image:none}
.auth-art img{mix-blend-mode:normal}
.balance-card .balance-row b{font-size:36px}.usage-detail{display:grid;gap:9px;margin:18px 0;color:#475d7c}.usage-detail p{margin:0;display:flex;justify-content:space-between;gap:16px}.report-choice{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 30px;margin:20px 0;border:1px solid #d4e0f2;border-radius:24px;background:#f8faff}.report-choice p{margin:6px 0 0;color:#475d7c}.report-choice h2{font-size:20px;margin:0}.side-link{position:relative}.side-link .nav-tooltip{display:none;position:absolute;left:100%;top:0;z-index:30;width:280px;padding:14px;background:#152f51;color:#fff;border-radius:12px;font-size:14px;line-height:1.5;box-shadow:0 8px 24px #10264430}.side-link:hover .nav-tooltip,.side-link:focus-visible .nav-tooltip{display:block}.sidebar{overflow:visible}.sidebar nav .side-link{font-size:15px}.report-choice .button{flex-shrink:0}@media(max-width:700px){.report-choice{align-items:flex-start;flex-direction:column;padding:22px}.report-choice .button{width:100%}.nav-tooltip{display:none!important}}

.plan-card .school-ribbon{background:linear-gradient(135deg,#397aff,#1c52df);border:1px solid #82a6f6;border-radius:10px;color:#fff;padding:5px 10px;font-size:12px;top:10px;right:16px}.plan-card:has(.school-ribbon) .plan-heading{padding-top:12px}
