/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.hidden{display:none}.table{display:table}}:root{--navy:#071a33;--navy-2:#0e2b50;--royal:#1f5fbf;--royal-2:#2f7dec;--emerald:#0f6b57;--emerald-2:#174f45;--cream:#f7f0df;--gold:#d8a93a;--gold-2:#f5d77b;--deep-gold:#8a641c;--ink:#162033;--muted:#5d6a7c;--line:#d9e1ee;--surface:#fff;--soft:#f3f7fc;--teal:#14776f;--rose:#b42342;--focus:#ffbf47}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:0;color:var(--ink);background:radial-gradient(circle at 10% 0,#0f6b571a,#0000 26%),radial-gradient(circle at 92% 10%,#d8a93a24,#0000 28%),linear-gradient(#e8f0fa 0%,#f7fbff 42%,#eef4fb 100%);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button,.file-button{background:var(--royal);color:#fff;cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:.45rem;min-height:42px;padding:.65rem .9rem;font-weight:800;transition:transform .14s,box-shadow .14s,background .14s;display:inline-flex}button:hover,.file-button:hover{background:#194fa1;transform:translateY(-1px);box-shadow:0 8px 20px #0a1f4426}button:disabled{cursor:not-allowed;box-shadow:none;background:#9aa8ba;transform:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:4px solid var(--focus);outline-offset:3px}label{color:var(--navy);gap:.45rem;font-size:.88rem;font-weight:800;display:grid}input,select,textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #bcc9db;border-radius:8px;padding:.7rem .75rem}textarea{resize:vertical;min-height:112px}.app-shell{width:min(1480px,100%);min-width:0;margin:0 auto;padding:1.2rem}.skip-link{z-index:100;background:var(--navy);color:#fff;border-radius:8px;padding:.7rem .9rem;position:fixed;top:.75rem;left:.75rem;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.topbar{background:radial-gradient(circle at 73% 50%, #f6d36b3d 0 15%, transparent 16%), repeating-linear-gradient(90deg, #ffffff0a 0 1px, transparent 1px 34px), linear-gradient(135deg, #071733, var(--navy) 45%, #123a75);color:#fff;border:1px solid #ffffff73;border-radius:8px;grid-template-columns:minmax(300px,1fr) 190px auto;align-items:center;gap:1rem;padding:1.1rem;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff2e,0 22px 54px #0a1f443d}.topbar:after{content:"";background:linear-gradient(90deg, var(--gold), var(--gold-2), var(--gold));height:8px;position:absolute;inset:auto 0 0}.brand-lockup{align-items:center;gap:1rem;display:flex}.bb-seal{aspect-ratio:1;width:76px;color:var(--gold-2);background:radial-gradient(circle at 34% 24%,#ffffff59 0 9%,#0000 10%),radial-gradient(circle,#17365f 0 39%,#06172d 40% 62%,#f2d071 63% 68%,#7b581a 69% 75%,#f8dc85 76%);border-radius:50%;flex:none;place-items:center;display:inline-grid;position:relative;box-shadow:inset 0 2px #ffffff59,inset 0 -10px 18px #00000057,0 12px 22px #0003}.bb-seal:before,.bb-seal:after{content:"";pointer-events:none;border-radius:50%;position:absolute}.bb-seal:before{border:1px solid #f5d77bb8;inset:9px;box-shadow:inset 0 0 0 4px #ffffff12}.bb-seal:after{border:1px solid #f5d77b7a;inset:18px}.bb-seal-ring{border-radius:inherit;border:2px solid #ffffff24;position:absolute;inset:6px}.bb-seal-mark{z-index:1;color:var(--gold-2);letter-spacing:0;text-shadow:0 2px #00000038;font-family:Georgia,Times New Roman,serif;font-size:1.6rem;font-weight:900;position:relative}.bb-seal.small{width:50px}.bb-seal.small .bb-seal-mark{font-size:1rem}.bb-seal.mini-seal{width:32px}.bb-seal.mini-seal .bb-seal-mark{font-size:.68rem}.bb-seal.nav-seal{width:62px}.bb-seal.bank-seal{width:112px;margin-top:-18px}.bb-seal.login-seal{width:54px}.vault-home{color:#fff;background:radial-gradient(circle at 78% 12%,#f5d77b33,#0000 28%),radial-gradient(circle at 16% 28%,#0f6b5733,#0000 25%),linear-gradient(160deg,#06172d 0%,#0c2548 42%,#0f3c43 100%);min-height:100vh;padding:1.1rem;overflow-x:hidden}.home-nav{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#051123ad;border:1px solid #f7f0df2e;border-radius:8px;justify-content:space-between;align-items:center;gap:1rem;width:min(1420px,100%);margin:0 auto 1.1rem;padding:.85rem 1rem;display:flex;box-shadow:0 18px 44px #0000003d}.home-brand,.home-actions,.login-card-heading,.receipt-with-seal{align-items:center;gap:.75rem;display:flex}.home-brand div,.login-card-heading div{gap:.18rem;display:grid}.home-brand strong{color:var(--cream);font-size:1.35rem}.home-brand span,.login-card-heading span,.vault-notice{color:#dbe8e1;font-weight:750}.home-actions{flex-wrap:wrap;justify-content:end}.admin-home-button{min-height:36px;color:var(--cream);background:#f7f0df1a;border-color:#f5d77b5c;font-size:.86rem}.vault-hero{grid-template-columns:minmax(560px,1.15fr) minmax(410px,.85fr);align-items:center;gap:2rem;width:min(1420px,100%);min-height:650px;margin:0 auto;padding:1rem 0 .6rem;display:grid}.bank-scene{perspective:1000px;place-items:end center;min-height:620px;display:grid;position:relative}.bank-glow{filter:blur(8px);background:radial-gradient(circle at 50% 34%,#f5d77b47,#0000 30%),radial-gradient(circle at 48% 72%,#0f6b573d,#0000 54%);border-radius:50%;position:absolute;inset:5% 1% 0}.premium-bank{background:linear-gradient(90deg,#ffffff1f 0 1px,#0000 1px 12%),linear-gradient(#ffffff38,#0000 20%),linear-gradient(90deg,#c8b178 0 2.5%,#0000 2.5% 97.5%,#856329 97.5%),linear-gradient(#f7f0df 0%,#d6c399 32%,#172c41 32% 36%,#efe3c9 36% 68%,#b49f73 100%);border-radius:8px 8px 4px 4px;justify-items:center;width:min(720px,100%);min-height:520px;padding-top:24px;display:grid;position:relative;box-shadow:inset 0 2px #ffffffc2,inset 0 -34px 52px #37291557,0 52px 90px #00000075}.premium-bank:after{z-index:0;content:"";background:linear-gradient(90deg,#0f6b5733,#0000 16% 84%,#0f6b572e),linear-gradient(#081d331f,#0000 48%,#081d331f);border:1px solid #f5d77b3d;border-radius:8px;position:absolute;inset:128px 4% 64px;box-shadow:inset 0 0 28px #0000001f,0 12px 22px #00000024}.premium-bank:before{content:"";clip-path:polygon(50% 0,100% 74%,96% 100%,4% 100%,0 74%);filter:drop-shadow(0 24px 34px #00000042);background:linear-gradient(#ffffff6b,#0000 44%),linear-gradient(135deg,#f7f0df 0%,#f5d77b 34%,#bf8e2e 72%,#6d4d16 100%);width:94%;height:126px;position:absolute;top:-86px}.bank-pediment{z-index:5;color:var(--navy);justify-items:center;display:grid;position:absolute;top:-26px}.bank-nameplate{z-index:6;min-width:330px;min-height:58px;color:var(--gold-2);background:linear-gradient(#fff3,#0000 42%),linear-gradient(135deg,#102b50,#071a33 58%,#0f6b57);border:1px solid #ffffff38;border-radius:8px;place-items:center;display:grid;position:absolute;top:116px;box-shadow:inset 0 0 0 2px #d8a93a66,inset 0 -10px 18px #0000003d,0 18px 28px #0000003d}.bank-nameplate span{letter-spacing:0;text-shadow:0 2px #00000057;font-family:Georgia,Times New Roman,serif;font-size:2.2rem;font-weight:900}.bank-columns{z-index:2;grid-template-columns:repeat(4,1fr);gap:2.25rem;display:grid;position:absolute;inset:190px 7% 98px}.bank-columns span{background:linear-gradient(90deg,#ffffff7a,#0000 15% 77%,#4a341538),repeating-linear-gradient(90deg,#4c35141c 0 2px,#0000 2px 11px),linear-gradient(#fff9ec,#d1ba87);border:1px solid #ffffff70;border-radius:7px 7px 3px 3px;box-shadow:inset 0 0 0 3px #ffffff29,0 14px 22px #0003}.vault-entrance{z-index:4;background:radial-gradient(circle at 50% 43%,#f5d77b42,#0000 31%),linear-gradient(#12314d,#061126);border:9px solid #10233f;border-bottom-width:15px;border-radius:122px 122px 8px 8px;place-items:center;width:244px;height:268px;display:grid;position:absolute;bottom:66px;overflow:hidden;box-shadow:inset 0 0 0 3px #f5d77b38,inset 0 0 38px #0009,0 22px 38px #00000057}.vault-door-leaf{transform-origin:0;background:linear-gradient(#ffffff61,#0000 18% 82%,#0000002e),radial-gradient(circle at 100% 54%,#f5d77b 0 6%,#0000 7%),repeating-conic-gradient(from 5deg at 100% 54%,#9caab6 0deg 9deg,#edf2f6 9deg 18deg);transition:transform .42s;position:absolute;inset:0 50% 0 0}.vault-door-leaf.right{transform-origin:100%;background:linear-gradient(#ffffff61,#0000 18% 82%,#0000002e),radial-gradient(circle at 0 54%,#f5d77b 0 6%,#0000 7%),repeating-conic-gradient(from -5deg at 0 54%,#9caab6 0deg 9deg,#edf2f6 9deg 18deg);inset:0 0 0 50%}.vault-open .vault-door-leaf.left{transform:translate(-72%)}.vault-open .vault-door-leaf.right{transform:translate(72%)}.vault-lock{z-index:2;aspect-ratio:1;background:radial-gradient(circle at 33% 25%,#ffffff94,#0000 18%),linear-gradient(145deg,#f8fbff,#8e9ba9);border:6px solid #52606e;border-radius:50%;place-items:center;width:66px;margin-top:42px;transition:opacity .24s;display:grid;position:relative;box-shadow:0 10px 18px #00000057}.vault-open .vault-lock{opacity:0}.vault-lock span{background:var(--gold);transform-origin:50% 100%;border-radius:999px;width:9px;height:42px;position:absolute}.vault-lock span:first-child{transform:translateY(-28px)}.vault-lock span:nth-child(2){transform:rotate(90deg)translateY(-28px)}.vault-lock span:nth-child(3){transform:rotate(180deg)translateY(-28px)}.vault-lock span:nth-child(4){transform:rotate(270deg)translateY(-28px)}.bank-steps{gap:8px;width:86%;display:grid;position:absolute;bottom:0}.bank-steps span{background:linear-gradient(#fff5dd,#b59d74);border-radius:5px;height:18px;box-shadow:0 8px 16px #0000002e}.bank-steps span:nth-child(2){width:110%;margin-left:-5%}.bank-steps span:nth-child(3){width:122%;margin-left:-11%}.hero-copy{align-content:center;gap:1.1rem;display:grid}.hero-copy h1{max-width:620px;color:var(--cream);text-shadow:0 16px 36px #00000059;font-size:5.25rem;line-height:.92}.hero-subtitle{color:#dbe8e1;font-size:1.7rem;font-weight:850}.enter-bank-button{background:linear-gradient(180deg, var(--gold-2), var(--gold));color:#06172d;width:max-content;min-height:54px;padding:.8rem 1.2rem;box-shadow:0 16px 32px #00000047}.enter-bank-button:hover{background:linear-gradient(#ffe49a,#d8a93a)}.vault-login-card{opacity:0;background:#f7f0df00;border:1px solid #f5d77b00;border-radius:8px;gap:1rem;max-height:0;padding:0 1rem;transition:max-height .36s,padding .24s,opacity .26s,transform .26s,background .26s,border-color .26s;display:grid;overflow:hidden;transform:translateY(10px)}.vault-open .vault-login-card{opacity:1;background:#f7f0dff5;border-color:#f5d77b57;max-height:760px;padding:1rem;transform:translateY(0);box-shadow:0 20px 45px #0000003d}.vault-login-card label{color:var(--navy)}.vault-login-card strong{color:var(--navy);font-size:1.1rem}.vault-login-card .form-grid{grid-template-columns:1fr 1fr}.admin-mini-login{border-top:1px solid #d9c58b;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:.75rem;padding-top:.8rem;display:grid}.admin-mini-login button{min-height:38px;font-size:.84rem}.admin-code-actions{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;display:grid}.admin-code-actions button,.admin-mini-login>button{width:100%}.admin-mini-login label:first-child,.admin-mini-login>button{grid-column:1/-1}.vault-notice{border-left:5px solid var(--gold);background:#f7f0df1f;border-radius:8px;align-items:center;gap:.55rem;width:min(1420px,100%);margin:0 auto 1rem;padding:.8rem .95rem;display:flex}.premium-feature-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;width:min(1420px,100%);margin:0 auto;padding-bottom:1rem;display:grid}.premium-feature-card{background:linear-gradient(#f7f0df1f,#f7f0df12),#05112394;border:1px solid #f5d77b42;border-radius:8px;align-content:start;gap:.65rem;min-height:178px;padding:1rem;display:grid;box-shadow:0 18px 40px #0003}.premium-feature-card strong{color:var(--cream);font-size:1.2rem}.premium-feature-card span{color:#dbe8e1;font-weight:700}.bb-shield{border:2px solid var(--gold-2);background:linear-gradient(180deg, var(--royal-2), var(--royal));color:#fff;letter-spacing:0;border-radius:8px 8px 18px 18px;place-items:center;width:72px;height:82px;font-size:1.35rem;font-weight:1000;display:grid;box-shadow:inset 0 -12px #0000001a}.bb-shield.small{width:46px;height:52px;font-size:.9rem}.vault-door{aspect-ratio:1;background:radial-gradient(circle,#f9fcff 0 9%,#0000 10%),repeating-conic-gradient(from 8deg,#ced8e7 0deg 9deg,#eef3fa 9deg 18deg),radial-gradient(circle,#f7fbff 0 26%,#aab8ca 27% 30%,#dfe7f2 31% 47%,#7d8da3 48% 51%,#edf3fb 52%);border:8px solid #d5deeb;border-radius:50%;justify-self:center;place-items:center;width:156px;display:grid;position:relative;box-shadow:inset 0 0 22px #0a1f4442,0 16px 34px #0000003d}.vault-door:before,.vault-door:after{content:"";background:#65758c;border-radius:999px;position:absolute;box-shadow:inset 0 1px #ffffff61}.vault-door:before{width:76%;height:10px}.vault-door:after{width:10px;height:76%}.vault-wheel{z-index:1;aspect-ratio:1;background:linear-gradient(145deg,#f8fbff,#acbad0);border:5px solid #64758e;border-radius:50%;place-items:center;width:52px;display:grid;position:relative;box-shadow:0 5px 14px #0a1f4459}.vault-wheel span{background:var(--gold);transform-origin:50% 100%;border-radius:999px;width:8px;height:32px;position:absolute}.vault-wheel span:first-child{transform:translateY(-22px)}.vault-wheel span:nth-child(2){transform:rotate(90deg)translateY(-22px)}.vault-wheel span:nth-child(3){transform:rotate(180deg)translateY(-22px)}.vault-wheel span:nth-child(4){transform:rotate(270deg)translateY(-22px)}.eyebrow,.value-label{color:var(--gold-2);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.77rem;font-weight:900}h1,h2,p{margin-top:0}h1{margin-bottom:.25rem;font-size:4.2rem;line-height:.95}h2{margin-bottom:0;font-size:1.1rem}.session-panel,.role-toggle,.button-row,.stacked-buttons{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.role-toggle{background:#ffffff1a;border:1px solid #ffffff3d;border-radius:8px;padding:.25rem}.role-toggle button,.ghost-button{background:0 0;border-color:#fff3}.role-toggle button.active,.section-tabs button.active{background:var(--gold);color:var(--navy)}.role-toggle.locked{padding:.55rem .75rem}.role-toggle.locked span,.security-lock-panel{color:var(--cream);align-items:center;gap:.5rem;font-weight:850;display:flex}.security-lock-panel{border:1px solid #f5d77b47;border-left:5px solid var(--gold);background:#06172d7a;border-radius:8px;padding:.75rem}.privacy-strip{border:1px solid #c5d7ee;border-left:6px solid var(--gold);color:var(--navy);background:linear-gradient(90deg,#ffffffeb,#f7fbffe0),#fff;border-radius:8px;align-items:center;gap:.7rem;margin:1rem 0;padding:.85rem 1rem;font-weight:750;display:flex}.section-tabs{z-index:12;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f7fbffe0;border-bottom:1px solid #c5d7eeb3;gap:.45rem;margin:0 -.35rem .6rem;padding:.35rem;display:flex;position:sticky;top:0;overflow-x:auto}.section-tabs button{min-width:max-content;color:var(--navy);background:#fff;border:1px solid #c9d6e7}.dashboard-grid{align-items:start;gap:1rem;display:grid}.teacher-layout{grid-template-columns:290px 1fr}.control-rail,.workspace-panel,.section-panel,.tool-panel,.metric-card,.student-hero,.balance-card,.job-card,.store-card,.detail-strip,.empty-state,.setup-step{border:1px solid var(--line);background:var(--surface);border-radius:8px;box-shadow:0 12px 28px #0a1f4414}.control-rail{gap:1rem;padding:1rem;display:grid;position:sticky;top:1rem}.rail-create{background:#f8fbff;border:1px solid #d9e4f2;border-radius:8px;gap:.65rem;padding:.8rem;display:grid}.selected-account{background:var(--soft);border-radius:8px;gap:.3rem;padding:1rem;display:grid}.selected-account strong{color:var(--navy);font-size:1.7rem}.workspace-panel{background:linear-gradient(#fffffff5,#f8fbfff5),#fff;padding:1rem}.setup-dashboard{grid-template-columns:1fr}.setup-command-center{gap:1rem;min-height:540px;display:grid}.setup-hero-panel{color:#fff;background:radial-gradient(circle at 90% 0,#f5d77b3d,#0000 28%),linear-gradient(135deg,#071a33,#0e2b50 50%,#0f6b57);border:1px solid #d8a93a57;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1.35rem;display:grid;overflow:hidden;box-shadow:inset 0 1px #ffffff2e}.setup-hero-panel h2{color:#fff;max-width:840px;font-size:2.35rem;line-height:1.02}.setup-hero-panel p{color:#dbe8e1;max-width:800px;font-weight:750}.setup-action-panel{background:#f7fbff;border:1px solid #cfe0f4;border-radius:8px;grid-template-columns:minmax(280px,1fr) auto;align-items:end;gap:.8rem;padding:1rem;display:grid}.setup-action-panel button{min-height:48px}.setup-step-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;display:grid}.setup-step{align-content:start;gap:.45rem;min-height:148px;padding:1rem;display:grid}.setup-step span{aspect-ratio:1;background:var(--navy);width:34px;color:var(--gold-2);border-radius:999px;place-items:center;font-weight:1000;display:grid}.setup-step strong{color:var(--navy);font-size:1.08rem}.setup-step small{color:var(--muted);font-weight:700}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;margin-bottom:1rem;display:grid}.metric-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr))}.metric-card{background:linear-gradient(#fff,#f8fbff);min-height:152px;padding:1rem}.metric-icon,.store-icon{width:44px;height:44px;color:var(--royal);background:#eaf2ff;border-radius:8px;place-items:center;margin-bottom:.85rem;display:grid}.metric-card span,.metric-card small,.muted,.job-card small,.store-card small,.pay-stub small,.access-card small{color:var(--muted)}.metric-card strong{color:var(--navy);overflow-wrap:anywhere;font-size:1.75rem;line-height:1.05;display:block}.action-grid,.content-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-bottom:1rem;display:grid}.action-grid{grid-template-columns:1.1fr 1.1fr .9fr}.tool-panel,.section-panel{gap:1rem;padding:1rem;display:grid}.section-panel{background:linear-gradient(#fff,#fbfdff)}.strong-panel{background:var(--navy);color:#fff}.strong-panel h2,.strong-panel p{color:#fff}.panel-heading{color:var(--navy);align-items:center;gap:.55rem;display:flex}.strong-panel .panel-heading{color:var(--gold-2)}.form-grid{grid-template-columns:1fr 120px;gap:.7rem;display:grid}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.inline-tool{box-shadow:none;background:#f7fbff;border-color:#cfe0f4}.empty-state{background:linear-gradient(#ffffffdb,#f7fbffe6),#fff;border-style:dashed;justify-items:start;gap:.45rem;padding:1.05rem;display:grid}.empty-state strong{color:var(--navy)}.empty-state span{color:var(--muted);font-weight:700}.secondary-button{color:var(--navy);background:#fff;border-color:#c7d3e3}.secondary-button:hover{background:#eaf2ff}.check-row{align-items:center;gap:.55rem;display:flex}.check-row input{width:1.1rem;height:1.1rem;accent-color:var(--royal)}.credential-stack,.preview-grid,.job-detail-grid{background:#f8fbff;border:1px solid #dce6f4;border-radius:8px;gap:.45rem;padding:.8rem;display:grid}.credential-stack span,.preview-grid span,.job-detail-grid span{color:var(--muted);font-weight:750}.preview-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.preview-grid strong{color:var(--navy)}.compact-list{color:var(--muted);gap:.25rem;margin:0;padding-left:1.1rem;font-size:.9rem;display:grid}.mini-list,.record-table,.student-table,.job-grid,.store-grid,.chart-list{gap:.65rem;display:grid}.mini-list>div,.record-row,.student-row,.ledger-row,.ledger-heading,.pay-stub,.tax-grid article,.chart-list>div{background:#f9fbfe;border:1px solid #e3ebf5;border-radius:8px;align-items:center;gap:.6rem;padding:.75rem;display:grid}.mini-list>div{grid-template-columns:minmax(0,1fr) minmax(130px,auto) auto}.student-row{grid-template-columns:minmax(170px,1fr) 112px 136px 126px 110px 140px}.student-row div,.mini-list div{gap:.15rem;display:grid}.job-grid,.store-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.job-card,.store-card{align-content:start;gap:.65rem;padding:1rem;display:grid}.job-topline{justify-content:space-between;align-items:start;gap:.5rem;display:flex}.store-icon{color:#8a5b00;background:#fff7df;font-weight:1000}.status-pill{width:max-content;color:var(--navy);text-transform:capitalize;background:#fff;border:1px solid #cad7e7;border-radius:999px;align-items:center;padding:.25rem .55rem;font-size:.76rem;font-weight:900;display:inline-flex}.status-active,.status-approved,.status-fulfilled,.status-open,.status-accepted{color:#0d5f58;background:#e8f7f5;border-color:#9ed8d1}.status-frozen,.status-pending,.status-offered{color:#75500a;background:#fff7df;border-color:#f2d586}.status-archived,.status-rejected,.status-denied,.status-canceled,.status-refunded,.status-filled,.status-closed{color:var(--rose);background:#fff0f3;border-color:#f0b8c4}.ledger-table{gap:.45rem;display:grid;overflow-x:auto}.ledger-heading,.ledger-row{grid-template-columns:minmax(140px,1.1fr) 116px 98px 100px 120px 90px;min-width:760px}.job-permission-stack,.job-tools-grid{gap:1rem;display:grid}.emergency-control,.job-tools-banner{color:var(--navy);background:#fff7df;border:2px solid #f2d586;border-radius:8px;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.emergency-control div,.job-tools-banner div{gap:.25rem;display:grid}.danger-button{background:var(--rose)}.danger-button:hover{background:#8f1b35}.permission-table,.approval-table{gap:.45rem;display:grid;overflow-x:auto}.permission-row,.approval-row{background:#f9fbfe;border:1px solid #e3ebf5;border-radius:8px;align-items:center;gap:.55rem;padding:.7rem;display:grid}.permission-row{grid-template-columns:170px 180px 150px 90px 150px 130px 150px 150px 130px 120px 120px 80px;min-width:1690px}.approval-row{grid-template-columns:140px 135px 155px 190px 105px 170px 120px 210px 210px;min-width:1440px}.permission-heading,.approval-heading{background:var(--navy);color:#fff;text-transform:uppercase;font-size:.78rem;font-weight:900}.check-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;display:grid}.ledger-heading{background:var(--navy);color:#fff;text-transform:uppercase;font-size:.78rem;font-weight:900}.positive{color:var(--teal)}.negative{color:var(--rose)}.small-button{min-height:32px;padding:.4rem .6rem;font-size:.78rem}.file-button{position:relative}.file-button input{opacity:0;cursor:pointer;position:absolute;inset:0}.print-sheet{display:none}.access-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.access-card{border:2px dashed var(--line);border-radius:8px;gap:.35rem;padding:1rem;display:grid}.tax-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;display:grid}.record-row{grid-template-columns:1fr 110px 1fr 100px 120px}.pay-stub{grid-template-columns:42px 1.2fr 120px 120px 120px}.chart-list>div{grid-template-columns:140px 1fr 90px}.bar-track{background:#dce7f5;border-radius:999px;height:12px;overflow:hidden}.bar-track div{border-radius:inherit;background:linear-gradient(90deg, var(--royal), var(--gold));height:100%}.detail-strip{gap:.5rem;margin-top:1rem;padding:.85rem 1rem;display:flex}.student-layout{gap:1rem;display:grid}.student-hero{color:#fff;background:linear-gradient(135deg,#1f5fbfeb,#0a1f44f5),#0a1f44;grid-template-columns:1.2fr minmax(260px,.8fr);gap:1rem;padding:1.2rem;display:grid}.student-hero label{color:#fff;max-width:320px}.student-hero h2{color:#fff;margin:.35rem 0;font-size:4rem;line-height:.95}.student-hero p{color:#d8e6fb}.balance-card{color:var(--navy);background:#fff;align-content:center;gap:.3rem;padding:1.2rem;display:grid}.balance-card strong{color:var(--royal);font-size:4.2rem;line-height:.95}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}.vault-open .vault-door-leaf.left,.vault-open .vault-door-leaf.right{opacity:.12;transform:none}}@media (width<=980px){.vault-home{padding:.8rem}.home-nav,.vault-hero,.premium-feature-grid{width:100%}.home-nav,.vault-hero{grid-template-columns:1fr}.home-nav{justify-items:stretch;display:grid}.home-actions{justify-content:stretch}.home-actions button{flex:1}.vault-hero{gap:1rem;min-height:auto}.bank-scene{min-height:420px}.premium-bank{width:min(560px,100%);min-height:350px}.premium-bank:before{height:84px;top:-56px}.bank-nameplate{min-width:260px;min-height:48px;top:78px}.bank-nameplate span{font-size:1.65rem}.bb-seal.bank-seal{width:76px}.bank-columns{gap:1rem;inset:122px 8% 78px}.vault-entrance{width:180px;height:210px;bottom:50px}.hero-copy h1{font-size:3.3rem}.hero-subtitle{font-size:1.2rem}.premium-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid,.teacher-layout,.content-columns,.action-grid,.setup-hero-panel,.setup-action-panel{grid-template-columns:1fr}.setup-step-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.control-rail{position:static}}@media (width<=620px){.home-brand{align-items:start}.bb-seal.nav-seal{width:52px}.bank-scene{min-height:280px}.premium-bank{min-height:245px;padding-top:12px}.premium-bank:before{height:54px;top:-34px}.premium-bank:after{inset:76px 5% 44px}.bank-pediment{top:-15px}.bank-nameplate{min-width:190px;min-height:36px;top:45px}.bank-nameplate span{font-size:1.2rem}.bb-seal.bank-seal{width:50px;margin-top:-8px}.bank-columns{display:none}.vault-entrance{border-width:7px;width:138px;height:158px;bottom:40px}.vault-lock{width:50px;margin-top:28px}.bank-steps{width:78%}.bank-steps span{height:12px}.hero-copy h1{font-size:2.6rem}.vault-login-card .form-grid,.admin-mini-login,.premium-feature-grid,.metric-grid,.metric-grid.compact,.setup-step-grid,.form-grid,.form-grid.three{grid-template-columns:1fr}.enter-bank-button{width:100%}}@media print{body{background:#fff}.no-print,.section-tabs,.control-rail,.privacy-strip,.session-panel,button{display:none!important}.app-shell{padding:0}.topbar,.workspace-panel,.section-panel,.metric-card,.student-hero,.balance-card{box-shadow:none;break-inside:avoid}.print-sheet{display:grid}}
