:root{color:#213d34;font-synthesis:none;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fafbf9;font-family:Segoe UI,system-ui,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.7}:focus-visible{outline-offset:4px;outline:3px solid #bd560c}.login-layout{grid-template-columns:1fr 1fr;min-height:100svh;display:grid}.login-intro{background:#eef3ec;border-top:6px solid #cb5b12;flex-direction:column;padding:48px 12%;display:flex}.brand{color:#234b3d;align-items:center;gap:12px;font-size:22px;font-weight:750;display:inline-flex}.brand-mark{color:#fff;background:#295844;border-radius:10px 10px 10px 2px;place-items:center;width:38px;height:42px;font-size:25px;display:grid}.intro-copy{max-width:470px;margin:auto 0;padding:70px 0}.eyebrow{color:#92501c;letter-spacing:.15em;font-size:12px;font-weight:750}.intro-copy h1{letter-spacing:-.04em;margin:24px 0;font-size:clamp(32px,3.5vw,52px);font-weight:650;line-height:1.16}.intro-copy>p:last-child{color:#51685c;max-width:360px;font-size:17px;line-height:1.8}.intro-footer,.panel-footer{color:#566b60;font-size:12px;line-height:1.6}.login-panel{background:#fff;flex-direction:column;justify-content:center;align-items:center;padding:70px 36px 30px;display:flex}.login-card{width:100%;max-width:380px;margin:auto 0;padding:45px 0}.login-card h2{letter-spacing:-.035em;margin:16px 0 10px;font-size:34px}.muted{color:#64716b;margin-bottom:32px;font-size:14px;line-height:1.7}form{flex-direction:column;display:flex}label{margin:0 0 9px;font-size:14px;font-weight:600}input{color:#213d34;background:#fff;border:1px solid #a6b1aa;border-radius:7px;width:100%;height:48px;margin-bottom:24px;padding:10px 12px}.primary-button,.secondary-button{border-radius:7px;min-height:46px;padding:11px 18px;font-size:14px;font-weight:650}.primary-button{color:#fff;background:#af470b;border:1px solid #af470b}.primary-button:hover:not(:disabled){background:#943b08}.secondary-button{color:#295844;background:#fff;border:1px solid #80998b}.login-help{color:#64716b;text-align:center;margin-top:26px;font-size:12px;line-height:1.7}.form-error{color:#8c2622;background:#fff3ef;border-left:3px solid #a8372d;margin:0 0 20px;padding:12px;font-size:14px;line-height:1.5}.session-header{background:#fff;border-top:4px solid #cb5b12;border-bottom:1px solid #dce4de;justify-content:space-between;align-items:center;gap:24px;padding:22px 5%;display:flex}.session-user{align-items:center;gap:22px;min-width:0;display:flex}.session-user>span{overflow-wrap:anywhere}.shell-content{padding:40px 5%}:is(.shell-content:has(>.app-shell),.shell-content:has(>.shell-content>.app-shell)){padding:0}.protected-layout:has(.app-shell) .shell-content{padding:0}.session-status{max-width:600px;margin:15vh auto;padding:32px}.session-status>p{line-height:1.7}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=760px){.login-layout{grid-template-columns:1fr}.login-intro{padding:24px}.intro-copy{padding:22px 0 0}.intro-copy h1{margin:14px 0;font-size:30px}.intro-copy h1 br,.intro-copy>p:last-child,.intro-footer{display:none}.login-panel{padding:12px 24px 24px}.login-card{padding:28px 0}.session-header,.session-user{flex-wrap:wrap}}.school-card{background:#fff;border:1px solid #dce4de;border-radius:12px;max-width:600px;margin:32px auto;padding:36px}.school-card h1{letter-spacing:-.03em;font-size:28px}.school-card>p{line-height:1.7}.school-card form{margin-top:28px}.school-card select{font:inherit;color:#213d34;background:#fff;border:1px solid #a6b1aa;border-radius:7px;width:100%;min-height:48px;margin-bottom:24px;padding:10px}.school-refresh{color:#295844;font:inherit;background:0 0;border:0;margin-top:24px;padding:10px 0;text-decoration:underline}.active-school-bar{background:#eef3ec;border-left:4px solid #295844;border-radius:6px;justify-content:space-between;align-items:center;gap:24px;padding:16px 24px;display:flex}.active-school-bar h2{overflow-wrap:anywhere;margin:6px 0}.active-school-bar .eyebrow{margin:0}@media (width<=760px){.school-card{margin:16px auto;padding:24px}.active-school-bar{flex-direction:column;align-items:flex-start}}.establishment{text-align:left;max-width:1180px;margin:0 auto;padding:1.5rem}.est-header{border-left:5px solid #e87a21;margin-bottom:1.8rem;padding-left:1.2rem}.est-header h1{margin:.4rem 0}.est-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);align-items:start;gap:1.5rem;display:grid}.est-panel{color:#173042;background:#fff;border:1px solid #dce4e5;border-radius:12px;margin-bottom:1.5rem;padding:1.4rem;box-shadow:0 4px 18px #17304208}.est-panel h2{margin-top:0;font-size:1.25rem}.est-panel fieldset{border:0;min-width:0;margin:1rem 0;padding:0}.est-panel legend{margin-bottom:.8rem;font-weight:650}.est-panel label{gap:.35rem;margin-bottom:.8rem;font-weight:550;display:grid}.est-panel input,.est-panel select,.est-panel textarea{box-sizing:border-box;color:#173042;width:100%;min-width:0;font:inherit;background:#fff;border:1px solid #a6b6ba;border-radius:6px;padding:.65rem}.est-panel button{color:#fff;font:inherit;cursor:pointer;background:#12664e;border:0;border-radius:6px;padding:.65rem .9rem}.est-panel button:disabled{opacity:.5;cursor:default}.est-panel :focus-visible{outline-offset:3px;outline:3px solid #b9560b}.date-row{grid-template-columns:1fr 1fr;gap:.8rem;display:grid}.record-list{margin:0;padding:0;list-style:none}.record-list li{border-bottom:1px solid #e4ebeb;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;padding:.7rem 0;display:flex}.record-list button{color:#14543f;text-align:left;background:#e9f4ef}.record-list span,.hint{color:#49616d;font-size:.85rem}.page-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8rem;margin:.8rem 0;display:flex}.page-controls button{font-size:.8rem}.record-detail{background:#f1f6f4;border-radius:6px;margin:1rem 0;padding:.8rem}.school-logo{object-fit:contain;width:110px;height:110px;margin:1rem 0;display:block}.logo-area{border-top:1px solid #e4ebeb;margin-top:1.6rem;padding-top:.8rem}@media (width<=800px){.est-grid{grid-template-columns:1fr}.establishment{padding:1rem}}@media (width<=440px){.date-row{grid-template-columns:1fr}.est-panel{padding:1rem}}.results-area{gap:1.2rem;padding:1.4rem;display:grid}.results-header h1{color:#12302a;margin:.2rem 0 .4rem;font-size:1.6rem}.results-filters{background:#fff;border:1px solid #e4ebeb;border-left:4px solid #12664e;border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1rem;padding:1rem 1.1rem;display:grid}.results-filters label{color:#294a41;gap:.35rem;font-size:.85rem;font-weight:600;display:grid}.results-filters select{font:inherit;color:#213d34;background:#fff;border:1px solid #c9d8d3;border-radius:6px;padding:.55rem .6rem}.results-filters select:disabled{color:#7b8d88;background:#f2f5f4}.composition-tabs{flex-wrap:wrap;gap:.6rem;display:flex}.composition-tabs button{min-width:5.5rem}.result-panel{background:#fff;border:1px solid #e4ebeb;border-radius:8px;padding:1.1rem}.result-panel-header{border-bottom:1px solid #eef3f1;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.7rem;margin-bottom:.9rem;padding-bottom:.7rem;display:flex}.result-panel-header h3{color:#12302a;margin:0;font-size:1.1rem}.result-badge{white-space:nowrap;border-radius:999px;padding:.2rem .7rem;font-size:.78rem;font-weight:600}.result-badge-ok{color:#11553f;background:#e4f2ea;border:1px solid #b7dcc8}.result-badge-pending{color:#8a4408;background:#fdf0e3;border:1px solid #f0cfab}.result-summary{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.9rem;margin:0 0 1rem;display:grid}.result-summary div{background:#f7faf9;border-radius:6px;padding:.7rem .8rem}.result-summary dt{text-transform:uppercase;letter-spacing:.04em;color:#53706a;font-size:.78rem}.result-summary dd{color:#12302a;margin:.25rem 0 0;font-size:1.3rem;font-weight:600}.result-max{color:#53706a;font-size:.95rem;font-weight:500}.result-empty{color:#7b8d88}.result-hint{color:#49616d;margin:0 0 .8rem;font-size:.88rem}.result-table-scroll{overflow-x:auto}.result-table{border-collapse:collapse;width:100%;font-size:.92rem}.result-table th,.result-table td{text-align:left;border-bottom:1px solid #eef3f1;padding:.6rem .7rem}.result-table thead th{text-transform:uppercase;letter-spacing:.04em;color:#53706a;border-bottom:2px solid #dbe6e2;font-size:.78rem}.result-table tbody th{color:#12302a;font-weight:600}.result-progress{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.8rem;margin:0 0 1rem;padding:0;list-style:none;display:grid}.result-progress-card{background:#f7faf9;border:1px solid #e8efec;border-radius:6px;gap:.2rem;padding:.7rem;display:grid}.result-progress-label{text-transform:uppercase;letter-spacing:.04em;color:#53706a;font-size:.78rem}.result-progress-value{color:#12302a;font-size:1.2rem;font-weight:600}.result-progress-state{color:#49616d;font-size:.8rem}.result-decision{border-radius:6px;padding:.25rem .7rem;font-size:1rem;display:inline-block}.result-decision-admitted{color:#11553f;background:#e4f2ea;border:1px solid #b7dcc8}.result-decision-refused{color:#8c2f21;background:#f6eceb;border:1px solid #e3c2bd}.standing-switch{gap:.5rem;display:flex}.result-rank{font-variant-numeric:tabular-nums;color:#12302a;white-space:nowrap;font-weight:600}.result-appreciation{white-space:nowrap;color:#12302a}@media (width<=640px){.results-area{padding:1rem .8rem}.result-summary dd{font-size:1.1rem}.composition-tabs button{flex:auto}.standing-switch{width:100%}.standing-switch button{flex:auto}}@media (prefers-reduced-motion:reduce){.results-area *{transition:none!important;animation:none!important}}.entry-table th[scope=row]{min-width:9rem}.entry-score,.entry-max{white-space:nowrap;font-variant-numeric:tabular-nums}.entry-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.entry-form{align-items:center;gap:.4rem;display:flex}.entry-form input{width:6.5rem;font:inherit;color:#213d34;border:1px solid #c9d8d3;border-radius:6px;padding:.4rem .5rem}.entry-form input:disabled{background:#f2f5f4}.entry-form button{padding:.4rem .8rem;font-size:.85rem}@media (width<=640px){.entry-form{width:100%}.entry-form input{flex:auto;width:auto}.entry-table th[scope=row]{min-width:7rem}}.reportcards-area{grid-template-columns:minmax(0,1fr);gap:1.2rem;padding:1.6rem 2rem 2.4rem;display:grid}.reportcard-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8rem;display:flex}.reportcard-controls>.composition-tabs{flex:auto;min-width:0}.bulletin-sheet{justify-content:center;display:flex}.bulletin{color:#17211f;background:#fff;border:1px solid #d8e2de;border-radius:4px;width:100%;max-width:210mm;padding:16mm 14mm;font-size:.92rem;line-height:1.45;box-shadow:0 1px 2px #12302a0f}.bulletin-nation{text-align:center;letter-spacing:.08em;color:#12302a;margin:0 0 .9rem;font-size:.82rem;font-weight:600}.bulletin-header{border-bottom:3px solid #cb5b12;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;padding-bottom:.9rem;display:flex}.bulletin-eyebrow{letter-spacing:.16em;text-transform:uppercase;color:#6d8079;margin:0;font-size:.68rem}.bulletin-school{letter-spacing:.01em;color:#12302a;margin:.15rem 0 0;font-size:1.25rem}.bulletin-kind{text-align:right;border-left:3px solid #1d6b46;padding-left:.9rem}.bulletin-kind-title{text-transform:uppercase;letter-spacing:.06em;color:#12302a;margin:0;font-size:1.05rem;font-weight:700}.bulletin-kind-subtitle{color:#4b625c;margin:.15rem 0 0;font-size:.86rem}.bulletin-identity{background:#fbfcfb;border:1px solid #e0e9e5;border-radius:3px;margin-top:1rem;padding:.75rem .9rem}.bulletin-identity dl{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.6rem 1.2rem;margin:0;display:grid}.bulletin-identity dt{letter-spacing:.12em;text-transform:uppercase;color:#6d8079;font-size:.68rem}.bulletin-identity dd{color:#12302a;margin:.1rem 0 0;font-weight:600}.bulletin-state{color:#6b3310;background:#fdf4ed;border-left:4px solid #cb5b12;margin:1rem 0 0;padding:.5rem .75rem;font-size:.85rem}.bulletin-table{border-collapse:collapse;width:100%;margin-top:1rem;font-size:.9rem}.bulletin-table caption{text-align:left}.bulletin-table th,.bulletin-table td{text-align:left;border-bottom:1px solid #e6edea;padding:.5rem .6rem}.bulletin-table thead th{text-transform:uppercase;letter-spacing:.08em;color:#12302a;background:#eef3ec;border-bottom:2px solid #1d6b46;font-size:.7rem}.bulletin-table tbody th{color:#12302a;font-weight:600}.bulletin-table tbody tr:nth-child(2n){background:#fbfcfb}.bulletin-table thead th:nth-child(2),.bulletin-table thead th:nth-child(3),.bulletin-table td:nth-child(2),.bulletin-table td:nth-child(3),.bulletin-table tfoot td{text-align:center;white-space:nowrap}.bulletin-table tfoot th,.bulletin-table tfoot td{color:#12302a;border-top:2px solid #c9d8d3;border-bottom:none;font-weight:700}.bulletin-number{font-variant-numeric:tabular-nums}.bulletin-empty{color:#7b8d88}.bulletin-empty-row{color:#4b625c;font-style:italic}.bulletin-aggregate{color:#6d8079;font-size:.78rem;font-weight:400}.bulletin-summary{background:#fbfcfb;border:1px solid #d8e2de;border-radius:3px;margin-top:1.1rem;padding:.85rem 1rem}.bulletin-summary dl{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.7rem 1.2rem;margin:0;display:grid}.bulletin-summary-row dt{letter-spacing:.12em;text-transform:uppercase;color:#6d8079;font-size:.68rem}.bulletin-summary-row dd{color:#12302a;margin:.15rem 0 0;font-size:1.05rem}.bulletin-average{font-variant-numeric:tabular-nums}.bulletin-of{color:#4b625c;font-size:.85rem;font-weight:400}.bulletin-decision{border-radius:3px;padding:.1rem .5rem;font-size:.95rem;display:inline-block}.bulletin-decision-admitted{color:#11553f;border:1px solid #1d6b46}.bulletin-decision-refused{color:#8c2f21;border:1px solid #a2453a}.bulletin-footnote{color:#4b625c;margin:.6rem 0 0;font-size:.78rem}.bulletin-visas{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1rem;margin-top:1.6rem;display:grid}.bulletin-visa-label{letter-spacing:.08em;text-transform:uppercase;color:#6d8079;margin:0 0 .3rem;font-size:.72rem}.bulletin-visa-space{border:1px solid #d8e2de;border-radius:3px;height:22mm}@media (width<=760px){.reportcards-area{padding:1rem .8rem}.bulletin{padding:1rem}.bulletin-kind{text-align:left;border-top:3px solid #1d6b46;border-left:none;padding:.6rem 0 0}.reportcard-controls .composition-tabs button{flex:auto}}@page{size:A4 portrait;margin:12mm}@media print{:root{background:#fff}.session-header,.active-school-bar,.page-controls,.reportcard-controls,.results-header,.results-filters,.no-print{display:none!important}.protected-layout,.shell-content,.reportcards-area,.bulletin-sheet{box-shadow:none;background:#fff;margin:0;padding:0;display:block}.bulletin{width:auto;max-width:none;box-shadow:none;border:none;border-radius:0;padding:0;font-size:11pt}.bulletin-table tbody tr:nth-child(2n),.bulletin-identity,.bulletin-summary,.bulletin-state{background:0 0}.bulletin-table thead th{background:0 0;border-bottom:2px solid #000}.bulletin-table,.bulletin-identity,.bulletin-summary,.bulletin-visas,.bulletin-table tr{break-inside:avoid}.bulletin-table thead{display:table-header-group}.bulletin-visas{break-before:avoid}}:root{--ink:#16241f;--ink-soft:#5b6b65;--line:#dfe7e3;--line-strong:#c7d5cf;--surface:#fff;--canvas:#f4f7f5;--accent:#c25410;--accent-dark:#9c410a;--accent-wash:#fdf2e9;--green:#1d6b46;--green-wash:#e9f3ed;--radius:8px;--shadow:0 1px 2px #16241f0f;--gap-page:1rem;--gap-card:.75rem;--gap-field:.75rem;--pad-card:1rem 1.1rem}.app-shell{background:var(--canvas);grid-template-columns:248px minmax(0,1fr);min-height:calc(100vh - 78px);display:grid}.app-sidebar{background:var(--surface);border-right:1px solid var(--line);flex-direction:column;align-self:start;gap:.4rem;max-height:100vh;padding:1rem .75rem 1.5rem;display:flex;position:sticky;top:0;overflow-y:auto}.app-sidebar-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;margin-bottom:.5rem;padding:.25rem .5rem .9rem;display:flex}.app-sidebar-brand{color:var(--ink);letter-spacing:-.01em;align-items:center;gap:.55rem;font-size:1rem;font-weight:700;display:inline-flex}.app-sidebar-brand .brand-mark{border-radius:7px 7px 7px 2px;width:26px;height:28px;font-size:16px}.app-nav{flex-direction:column;gap:2px;display:flex}.app-nav-item{border-radius:var(--radius);width:100%;color:var(--ink-soft);text-align:left;background:0 0;border:1px solid #0000;align-items:center;gap:.7rem;padding:.55rem .7rem;font-size:.88rem;font-weight:600;line-height:1.25;display:flex}.app-nav-item:hover{background:var(--canvas);color:var(--ink)}.app-nav-icon{color:inherit;flex:none}.app-nav-item-active,.app-nav-item-active:hover{background:var(--accent-wash);color:var(--accent-dark);box-shadow:inset 3px 0 0 var(--accent);border-color:#f0d6bf;font-weight:700}.app-drawer-close,.app-drawer-open{border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);background:0 0;padding:.35rem;line-height:0;display:none}.app-body{flex-direction:column;min-width:0;display:flex}.app-topbar{background:var(--surface);border-bottom:1px solid var(--line);align-items:center;gap:.9rem;padding:1.05rem 1.75rem .95rem;display:flex}.app-topbar-titles h1{letter-spacing:-.015em;color:var(--ink);margin:0;font-size:1.3rem}.app-topbar-titles p{color:var(--ink-soft);margin:.15rem 0 0;font-size:.84rem}.app-main{min-width:0;padding:1.5rem 1.75rem 2.5rem}.app-main:focus{outline:none}.app-scrim{display:none}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.1rem 1.25rem}.panel-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.9rem;display:flex}.panel-head h2,.panel-head h3{color:var(--ink);margin:0;font-size:1rem}.state-hint{border:1px dashed var(--line-strong);border-radius:var(--radius);background:var(--surface);color:var(--ink-soft);margin:0;padding:.9rem 1rem;font-size:.88rem}.badge{letter-spacing:.02em;white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:.3rem;padding:.12rem .6rem;font-size:.74rem;font-weight:700;display:inline-flex}.badge-neutral{background:var(--canvas);border-color:var(--line-strong);color:var(--ink-soft)}.badge-ok{background:var(--green-wash);color:#11553f;border-color:#bcdbc8}.badge-warn{background:var(--accent-wash);color:#8a3c07;border-color:#f0d6bf}.button-icon{flex:none;width:16px;height:16px}.dashboard{grid-template-columns:minmax(0,1fr);gap:1.1rem;display:grid}.dashboard-welcome{border-left:4px solid var(--green);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1.2rem;display:flex}.dashboard-welcome h2{letter-spacing:-.02em;color:var(--ink);margin:.2rem 0 .3rem;font-size:1.45rem}.dashboard-welcome .muted{margin:0;font-size:.9rem}.dashboard-actions{flex-wrap:wrap;gap:.6rem;display:flex}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.9rem;display:grid}.kpi-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);border-top:3px solid var(--accent);padding:.95rem 1.1rem}.kpi-label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);margin:0;font-size:.72rem}.kpi-value{font-variant-numeric:tabular-nums;color:var(--ink);margin:.3rem 0 0;font-size:1.85rem;font-weight:700;line-height:1.1}.kpi-hint{color:var(--ink-soft);margin:.15rem 0 0;font-size:.78rem}.chip-list{flex-wrap:wrap;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.chip{border:1px solid var(--line-strong);color:var(--ink);background:var(--canvas);border-radius:999px;padding:.25rem .75rem;font-size:.82rem;font-weight:600}.flow-steps{counter-reset:step;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.7rem;margin:0;padding:0;list-style:none;display:grid}.flow-steps li{border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);background:var(--canvas);align-items:center;gap:.6rem;padding:.7rem .8rem;font-size:.85rem;display:flex}.flow-icon{color:var(--green);flex:none}.app-main label{color:var(--ink-soft);margin:0 0 .3rem;font-size:.78rem;font-weight:650;display:block}.app-main input,.app-main select,.app-main textarea{border:1px solid var(--line-strong);background:var(--surface);width:100%;height:auto;min-height:38px;color:var(--ink);border-radius:6px;margin-bottom:0;padding:.45rem .6rem;font-size:.88rem}.app-main input:hover,.app-main select:hover{border-color:#a9bcb4}.app-main input:disabled,.app-main select:disabled{background:var(--canvas);color:#8d9c96;cursor:not-allowed}.app-main form{gap:.85rem}.app-main .primary-button,.app-main .secondary-button{white-space:nowrap;border-radius:6px;justify-content:center;align-items:center;gap:.45rem;min-height:38px;padding:.45rem .9rem;font-size:.86rem;font-weight:650;display:inline-flex}.app-main .primary-button{background:var(--accent);border-color:var(--accent)}.app-main .primary-button:hover:not(:disabled){background:var(--accent-dark);border-color:var(--accent-dark)}.app-main .secondary-button{color:var(--ink);border-color:var(--line-strong)}.app-main .secondary-button:hover:not(:disabled){background:var(--canvas);border-color:#a9bcb4}.app-main .form-error{border-radius:6px;font-size:.85rem}.form-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));align-items:end;gap:.85rem;display:grid}.app-main table{border-collapse:collapse;width:100%;font-size:.88rem}.app-main thead th{text-align:left;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);background:var(--canvas);border-bottom:1px solid var(--line-strong);white-space:nowrap;padding:.55rem .7rem;font-size:.7rem}.app-main tbody td,.app-main tbody th{text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;padding:.5rem .7rem}.app-main tbody tr:hover{background:#fafcfb}.app-main tbody th{color:var(--ink);font-weight:650}.table-scroll{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow-x:auto}.numeric{font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right!important}@media (width<=900px){.app-shell{grid-template-columns:minmax(0,1fr)}.app-sidebar{z-index:40;width:262px;box-shadow:0 0 0 1px var(--line);max-height:100vh;transition:transform .18s ease-out;position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.app-shell-open .app-sidebar{transform:translate(0)}.app-scrim{z-index:30;background:#16241f59;border:0;padding:0;display:block;position:fixed;inset:0}.app-drawer-close,.app-drawer-open{justify-content:center;align-items:center;display:inline-flex}.app-topbar,.app-main{padding-left:1rem;padding-right:1rem}.dashboard-welcome{align-items:flex-start}}@media (prefers-reduced-motion:reduce){.app-sidebar{transition:none}}.protected-layout:has(.app-shell){background:var(--surface)}.protected-layout:has(.app-shell) .session-header .brand{display:none}.protected-layout:has(.app-shell) .session-header{border-top:3px solid var(--accent);border-bottom:1px solid var(--line);justify-content:flex-end;gap:.9rem;padding:.55rem 1.25rem}.protected-layout:has(.app-shell) .session-user{color:var(--ink-soft);gap:.8rem;font-size:.84rem}.protected-layout:has(.app-shell) .session-user .secondary-button{border-radius:6px;min-height:32px;padding:.3rem .75rem;font-size:.8rem}.protected-layout:has(.app-shell) .active-school-bar{background:var(--surface);border:none;border-bottom:1px solid var(--line);border-radius:0;align-items:center;gap:.9rem;margin:0;padding:.5rem 1.25rem}.protected-layout:has(.app-shell) .active-school-bar .eyebrow{letter-spacing:.14em;color:var(--ink-soft);margin:0;font-size:.62rem}.protected-layout:has(.app-shell) .active-school-bar h2{letter-spacing:-.01em;color:var(--ink);margin:0;font-size:.98rem}.protected-layout:has(.app-shell) .active-school-bar .secondary-button{border-radius:6px;min-height:32px;padding:.3rem .75rem;font-size:.8rem}.app-main .results-header,.app-main .est-header{margin-bottom:1rem}.app-main h2{letter-spacing:-.01em;color:var(--ink);margin:0 0 .2rem;font-size:1.05rem}.app-main h3{color:var(--ink);font-size:.95rem}.app-main .muted{margin-bottom:.75rem;font-size:.86rem;line-height:1.55}.app-main .eyebrow{letter-spacing:.14em;font-size:.64rem}.app-main section{min-width:0}@media (width<=900px){.protected-layout:has(.app-shell){grid-template-columns:minmax(0,1fr);grid-template-areas:"session""school""shell"}:is(.protected-layout:has(.app-shell)>.session-header,.protected-layout:has(.app-shell) .active-school-bar){border-top:none}.protected-layout:has(.app-shell)>.session-header{border-top:3px solid var(--accent);border-bottom:none}}.app-main .results-area,.app-main .reportcards-area{gap:1rem;padding:0}.app-main .results-header{margin:0}.app-main .results-header h2{margin:0 0 .15rem;font-size:1.05rem}.app-main .results-filters{border-left-width:3px;border-left-color:var(--green);border-radius:var(--radius);box-shadow:var(--shadow);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:end;gap:.75rem;padding:.75rem .9rem}.app-main .results-filters label{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);gap:.25rem;font-size:.72rem;font-weight:650}.app-main .results-filters select{border-color:var(--line-strong);min-height:36px;padding:.35rem .5rem;font-size:.86rem}.app-main .result-panel{border-color:var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:1rem 1.1rem}.app-main .result-panel-header h3{font-size:.98rem}.app-main .result-table{font-size:.87rem}.app-main .result-table thead th{background:var(--canvas);border-bottom:1px solid var(--line-strong);color:var(--ink-soft)}.app-main .result-table tbody tr:hover{background:#fafcfb}.app-main .result-table-scroll{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.app-main .result-hint{border:1px dashed var(--line-strong);border-radius:var(--radius);background:var(--surface);color:var(--ink-soft);margin:0;padding:.75rem .9rem;font-size:.85rem}.app-main .composition-tabs button{min-width:4.5rem}.app-main .entry-form input{text-align:right;font-variant-numeric:tabular-nums;width:5.5rem;min-height:34px}.app-main .entry-max{color:var(--ink-soft);font-size:.82rem}.app-main .entry-actions .secondary-button,.app-main .entry-actions .primary-button,.app-main .entry-form .primary-button,.app-main .entry-form .secondary-button{min-height:34px;padding:.3rem .7rem;font-size:.8rem}.app-main .result-badge{padding:.15rem .55rem;font-size:.72rem}.app-main .result-rank{font-size:.95rem}:is(.app-main .result-table td:has(.result-rank),.app-main .result-table td:has(.result-appreciation)){white-space:nowrap}.app-main .bulletin-sheet{background:var(--canvas);border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem 1rem}.app-main .bulletin{border-color:var(--line-strong);box-shadow:0 2px 10px #16241f1a}@media print{.app-main .bulletin-sheet{background:0 0;border:none;padding:0}.app-main .bulletin{box-shadow:none}.app-sidebar,.app-topbar,.app-scrim,.app-drawer-open,.session-header,.active-school-bar{display:none!important}.app-shell,.app-body,.app-main{background:#fff;margin:0;padding:0;display:block}}.app-main .results-area{grid-template-columns:minmax(0,1fr)}.app-main .result-panel,.app-main .result-table-scroll{min-width:0}.app-main .result-rank-1,.app-main .result-rank-2,.app-main .result-rank-3{border:1px solid var(--line-strong);background:var(--canvas);border-radius:999px;justify-content:center;align-items:center;min-width:2.3rem;padding:.1rem .45rem;font-weight:700;display:inline-flex}.app-main .result-rank-1{color:#7a4a08;background:#fdf5e8;border-color:#e4b878}.app-main .result-rank-2{background:#f4f7f8;border-color:#c9d2d6}.app-main .result-rank-3{background:#faf2eb;border-color:#dec4ac}.app-main .est-header{border-left:3px solid var(--accent);margin-bottom:1rem;padding-left:.85rem}.app-main .est-header p{color:var(--ink-soft);margin:.1rem 0 0;font-size:.86rem}.app-main .est-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:1rem}.app-main .est-panel{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);color:var(--ink);min-width:0;margin-bottom:1rem;padding:1rem 1.1rem;overflow:hidden}.app-main .est-panel h2{margin:0 0 .75rem;font-size:.98rem}.app-main .est-panel legend{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:.5rem;font-size:.78rem}.app-main .est-panel label{color:var(--ink-soft);gap:.25rem;margin-bottom:.65rem;font-size:.78rem;font-weight:650}.app-main .est-panel input,.app-main .est-panel select,.app-main .est-panel textarea{border-color:var(--line-strong);border-radius:6px;padding:.45rem .6rem;font-size:.88rem}.app-main .est-panel button{background:var(--surface);color:var(--ink);border:1px solid var(--line-strong);border-radius:6px;min-height:36px;padding:.4rem .85rem;font-size:.85rem;font-weight:650}.app-main .est-panel .primary-button{background:var(--accent);border-color:var(--accent);color:#fff}.app-main .est-panel .primary-button:hover:not(:disabled){background:var(--accent-dark);border-color:var(--accent-dark)}.app-main .est-panel button:not(.primary-button):hover:not(:disabled){background:var(--canvas)}.app-main .record-list{border-collapse:collapse;table-layout:fixed;width:100%;font-size:.86rem}.app-main .record-list thead th{letter-spacing:.07em;text-transform:uppercase;color:var(--ink-soft);background:var(--canvas);border-bottom:1px solid var(--line-strong);text-align:left;white-space:normal;overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto;padding:.45rem .55rem;font-size:.68rem}.app-main .record-list td,.app-main .record-list tbody th{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;overflow-wrap:anywhere;padding:.45rem .55rem}.app-main .record-list tbody tr:hover{background:#fafcfb}.app-main .record-list tbody tr:last-child td{border-bottom:none}.app-main .pagination{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;margin-top:.9rem;padding-top:.75rem;display:flex}.app-main .pagination .secondary-button{background:var(--surface);min-height:32px;color:var(--ink);border:1px solid var(--line-strong);border-radius:6px;padding:.3rem .7rem;font-size:.8rem}.app-main .pagination .secondary-button:hover:not(:disabled){background:var(--canvas)}.app-main .pagination .secondary-button:disabled{opacity:1;color:#8d9c96;background:var(--canvas);border-color:var(--line);cursor:default}.app-main .pagination-position{color:var(--ink-soft);font-variant-numeric:tabular-nums;padding:0 .35rem;font-size:.8rem;font-weight:650}.app-main .page-controls{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:.6rem;margin:0 0 .9rem;display:flex}.app-main fieldset{border:0;min-width:0;margin:0 0 .5rem;padding:0}.app-main .hint{color:var(--ink-soft);margin:.5rem 0 0;font-size:.78rem;line-height:1.5}@media (width<=760px){.app-main .est-panel{overflow-x:auto}.app-main .record-list{table-layout:auto;min-width:520px}.app-main .pagination{justify-content:space-between}}.dossier-pieces{grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));gap:1rem;display:grid}.dossier-piece{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-width:0;padding:.9rem 1rem 1rem}.dossier-piece h3{color:var(--ink);margin:0 0 .75rem;font-size:.95rem}.dossier-piece-body{flex-wrap:wrap;align-items:flex-start;gap:1rem;display:flex}.dossier-thumb{border:1px dashed var(--line-strong);background:var(--canvas);text-align:center;border-radius:4px;flex:0 0 7.5rem;place-items:center;height:9.5rem;padding:.5rem;display:grid;overflow:hidden}.dossier-thumb img{object-fit:cover;width:100%;height:100%}.dossier-thumb p{margin:0;font-size:.82rem}.dossier-thumb-doc{height:5.5rem}.dossier-piece-actions{flex:12rem;gap:.6rem;min-width:0;display:grid}.dossier-piece-actions .hint{margin:0}.file-field{color:var(--ink-soft);gap:.35rem;font-size:.85rem;display:grid}.file-field input[type=file]{max-width:100%;font-size:.82rem}.button-row{flex-wrap:wrap;gap:.5rem;display:flex}.danger-button{background:var(--surface);color:#96421d;border:1px solid #c0714f;border-radius:6px;padding:.45rem .85rem;font-size:.88rem}.danger-button:hover:not(:disabled){background:var(--accent-wash)}.form-notice{color:var(--green);margin:0;font-size:.85rem}.document-choices{flex-wrap:wrap;gap:.5rem;margin:.75rem 0;display:flex}.documents-panel{min-width:0}.document-area{gap:.75rem;min-width:0;margin-top:1rem;display:grid}.document-controls{flex-wrap:wrap;gap:.5rem;display:flex}.document-sheet{border:1px solid var(--line);color:#12302a;max-width:48rem;box-shadow:var(--shadow);background:#fff;border-radius:4px;margin:0 auto;padding:2rem clamp(1rem,4vw,2.5rem)}.sheet-nation{text-align:center;letter-spacing:.08em;margin:0 0 1.2rem;font-size:.82rem;font-weight:600}.sheet-header{text-align:center;border-bottom:2px solid #cb5b12;margin-bottom:1.4rem;padding-bottom:.9rem}.sheet-school{letter-spacing:.02em;margin:0;font-size:1.1rem}.sheet-title{letter-spacing:.1em;text-transform:uppercase;margin:.9rem 0 0;font-size:1rem}.sheet-identity{gap:1.2rem;margin-bottom:1.4rem;display:grid}.sheet-identity.with-photo{grid-template-columns:minmax(0,1fr) auto;align-items:start}.sheet-identity dl{grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));gap:.7rem 1.4rem;margin:0;display:grid}.sheet-identity dt{letter-spacing:.1em;text-transform:uppercase;color:#5c7169;font-size:.7rem}.sheet-identity dd{border-bottom:1px dotted var(--line-strong);min-height:1.4rem;margin:.15rem 0 0;font-size:.95rem}.sheet-blank{min-width:6rem;display:inline-block}.sheet-photo{border:1px solid var(--line-strong);width:7rem;height:9rem;margin:0;overflow:hidden}.sheet-photo img{object-fit:cover;width:100%;height:100%}.sheet-section{letter-spacing:.12em;text-transform:uppercase;color:#5c7169;margin:1.4rem 0 .5rem;font-size:.72rem}.sheet-table{border-collapse:collapse;width:100%;font-size:.88rem}.sheet-table th,.sheet-table td{text-align:left;border:1px solid var(--line-strong);padding:.45rem .6rem}.sheet-table thead th{letter-spacing:.08em;text-transform:uppercase;background:#f4f7f5;font-size:.72rem}.sheet-footer{justify-items:end;gap:1.4rem;margin-top:1.8rem;display:grid}.sheet-issued{margin:0;font-size:.85rem}.sheet-visa{width:min(100%,17rem)}.sheet-visa-label{letter-spacing:.08em;text-transform:uppercase;color:#5c7169;margin:0 0 .3rem;font-size:.72rem}.sheet-visa-space{border:1px solid var(--line-strong);border-radius:3px;height:5rem}@media print{.documents-panel{box-shadow:none;background:#fff;border:none;margin:0;padding:0}.document-area{margin:0}.document-sheet{box-shadow:none;border:none;border-radius:0;max-width:none;padding:0;font-size:11pt}.sheet-table thead th{background:0 0;border-bottom:2px solid #000}.sheet-table,.sheet-identity,.sheet-footer{break-inside:avoid}.sheet-visa{break-before:avoid}}.app-main .establishment{max-width:none;margin:0;padding:0}.app-main .est-grid{gap:var(--gap-page);grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));align-items:start}.app-main .est-grid.wide-first{grid-template-columns:minmax(0,1.75fr) minmax(0,1fr)}.app-main .est-grid.wide-last{grid-template-columns:minmax(0,1fr) minmax(0,1.75fr)}@media (width<=900px){.app-main .est-grid.wide-first,.app-main .est-grid.wide-last{grid-template-columns:minmax(0,1fr)}}@media (width>=760px) and (width<=1150px){.app-main .est-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.page-stack{gap:var(--gap-page);align-items:start;min-width:0;display:grid}.app-main .est-panel,.app-main .panel{padding:var(--pad-card);margin-bottom:0}.page-head{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.6rem 1rem;min-width:0;display:flex}.page-head-text{min-width:0}.page-head-text h1,.page-head-text h2{letter-spacing:-.01em;color:var(--ink);margin:0;font-size:1.3rem}.page-head-text p{color:var(--ink-soft);margin:.15rem 0 0;font-size:.85rem}.page-head-actions{flex-wrap:wrap;align-items:center;gap:.5rem;margin-left:auto;display:flex}.field-grid{gap:var(--gap-field) 1rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));align-items:end;display:grid}.field{gap:.25rem;min-width:0;display:grid}.field-wide{grid-column:1/-1}.app-main .field label,.app-main .est-panel .field label{margin-bottom:0}.form-actions{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.9rem;display:flex}.app-main .est-panel>h2,.app-main .est-panel>h3{margin:0 0 .6rem}.app-main .est-panel fieldset{margin:0}.app-main .est-panel legend{margin-bottom:.45rem}.app-main .est-panel>p:last-child,.app-main .est-panel>.hint:last-child{margin-bottom:0}.table-scroll{min-width:0;overflow-x:auto}.app-main .record-list{border-collapse:collapse;width:100%}.app-main .record-list td,.app-main .record-list th{padding:.45rem .7rem}.app-main .record-list .row-actions{justify-content:flex-end;gap:.4rem;display:flex}.app-main .record-list .row-actions button{min-height:28px;padding:.25rem .6rem;font-size:.8rem}.dossier-banner{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:var(--pad-card);flex-wrap:wrap;align-items:flex-start;gap:1rem 1.25rem;display:flex}.dossier-banner-photo{border:1px solid var(--line-strong);background:var(--canvas);width:76px;height:94px;color:var(--ink-soft);text-align:center;border-radius:4px;flex:0 0 76px;place-items:center;font-size:.68rem;display:grid;overflow:hidden}.dossier-banner-photo img{object-fit:cover;width:100%;height:100%}.dossier-banner-text{flex:22rem;min-width:0}.dossier-facts{grid-template-columns:repeat(auto-fit,minmax(min(100%,9.5rem),1fr));gap:.5rem 1.25rem;display:grid}.dossier-facts>div{gap:.1rem;min-width:0;display:grid}.dossier-facts .fact-label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);font-size:.66rem}.dossier-facts .fact-value{color:var(--ink);overflow-wrap:anywhere;font-size:.9rem;font-weight:600}.app-main .dashboard{gap:var(--gap-page)}.dashboard-split{gap:var(--gap-page);grid-template-columns:repeat(auto-fit,minmax(min(100%,24rem),1fr));align-items:start;display:grid}.dossier-banner-text h2{letter-spacing:-.01em;color:var(--ink);margin:.1rem 0 .6rem;font-size:1.3rem}:is(.app-main .est-panel label:has(input[type=checkbox]),.app-main .est-panel label:has(input[type=radio])){color:var(--ink);align-items:center;gap:.45rem;margin:0;font-weight:550;display:flex}.app-main .est-panel input[type=checkbox],.app-main .est-panel input[type=radio]{width:auto;min-width:0;accent-color:var(--green);margin:0}.check-row{flex-wrap:wrap;gap:.5rem 1.25rem;margin-top:.75rem;display:flex}.app-main .primary-button,.app-main .secondary-button,.app-main .danger-button{min-height:34px;padding:.4rem .85rem;font-size:.86rem}.app-main .est-panel button{min-height:34px}.app-main .app-topbar-titles h1,.app-topbar-titles h1{font-size:1.4rem}.app-main .est-panel h3{margin:1rem 0 .5rem;font-size:.9rem}.app-main .est-panel h3:first-child{margin-top:0}.app-main .entry-actions{flex-wrap:nowrap;justify-content:flex-end;gap:.4rem}.app-main .entry-actions .hint{white-space:nowrap}.app-main .entry-table tbody td,.app-main .entry-table tbody th{padding:.35rem .7rem}@media (width<=900px){.app-main .entry-actions{flex-wrap:wrap}}.app-main .entry-form{flex-direction:row;align-items:center;gap:.35rem;display:flex}.app-nav-group{flex-direction:column;gap:2px;display:flex}.app-nav-group+.app-nav-group{margin-top:.55rem}.app-nav-heading{letter-spacing:.12em;text-transform:uppercase;color:#8a9a94;margin:.35rem .7rem .2rem;font-size:.64rem;font-weight:750}.dialog-layer{z-index:60;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.dialog-scrim{cursor:default;background:#16241f6b;border:0;padding:0;position:absolute;inset:0}.dialog{background:var(--surface);border-radius:10px;outline:none;flex-direction:column;width:min(100%,34rem);max-height:calc(100dvh - 2rem);display:flex;position:relative;box-shadow:0 18px 50px #16241f40}.dialog-wide{width:min(100%,52rem)}.dialog-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1.1rem;display:flex}.app-main .dialog-head h2{margin:0;font-size:1.02rem}.app-main .dialog-close,.app-main .est-panel .dialog-close{width:34px;height:34px;min-height:34px;color:var(--ink-soft);background:0 0;border:1px solid #0000;border-radius:6px;place-items:center;padding:0;display:inline-grid}.app-main .dialog-close:hover{background:var(--canvas);color:var(--ink)}.dialog-body{overscroll-behavior:contain;gap:.75rem;padding:1rem 1.1rem 1.1rem;display:grid;overflow-y:auto}.app-main .dialog-form{gap:.9rem;display:grid}.dialog-actions{border-top:1px solid var(--line);justify-content:flex-end;margin-top:.25rem;padding-top:.85rem}.app-main .dialog h3{letter-spacing:.06em;color:var(--ink-soft);text-transform:uppercase;margin:.4rem 0 .1rem;font-size:.78rem}.app-main .dialog p{margin:0}.app-main .dialog textarea{resize:vertical;min-height:0;font-family:inherit;line-height:1.5}.fact-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr));gap:.6rem 1.25rem;display:grid}.fact-grid>div{gap:.1rem;min-width:0;display:grid}.fact-grid .fact-label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);font-size:.66rem}.fact-grid .fact-value{color:var(--ink);overflow-wrap:anywhere;font-size:.9rem;font-weight:600}.fact-grid .fact-value .muted{margin:0;font-weight:400}.toolbar{flex-wrap:wrap;align-items:flex-end;gap:.6rem .75rem;display:flex}.toolbar-end{margin-left:auto}.app-main .toolbar-field{gap:.25rem;min-width:11rem;margin:0;display:grid}.app-main .toolbar-field select{min-width:11rem}.app-main .search-field{flex:16rem;max-width:26rem;margin:0;position:relative}.app-main .search-field input{padding-left:2.1rem;font-weight:400}.search-icon{width:18px;height:18px;color:var(--ink-soft);pointer-events:none;position:absolute;top:50%;left:.6rem;transform:translateY(-50%)}.segmented{border:1px solid var(--line-strong);background:var(--surface);border-radius:7px;flex-wrap:wrap;place-self:start;gap:2px;padding:2px;display:inline-flex}.app-main .segmented button,.app-main .est-panel .segmented button{color:var(--ink-soft);background:0 0;border:0;border-radius:5px;min-height:32px;padding:.4rem .8rem;font-size:.84rem;font-weight:650}.app-main .segmented button:hover{color:var(--ink);background:var(--canvas)}.app-main .segmented .segmented-on,.app-main .segmented .segmented-on:hover,.app-main .est-panel .segmented .segmented-on{background:var(--green-wash);color:var(--green);box-shadow:inset 0 0 0 1px #b9d5c5}.stat-strip{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);flex-wrap:wrap;gap:.4rem 1.5rem;padding:.65rem .9rem;display:flex}.stat-strip p{color:var(--ink-soft);margin:0;font-size:.85rem}.stat-strip strong{color:var(--ink);margin-right:.15rem;font-size:1.05rem}.app-main .data-table{border-collapse:collapse;width:100%;font-size:.86rem}.app-main .data-table td,.app-main .data-table th{vertical-align:middle;padding:.5rem .7rem}.app-main .data-table tbody tr{border-bottom:1px solid var(--line)}.app-main .data-table tbody tr:last-child,.app-main .data-table tbody td{border-bottom:0}.app-main .data-table .row-selected{background:var(--green-wash)}.cell-title{color:var(--ink);font-weight:650;display:block}.cell-sub{color:var(--ink-soft);font-size:.78rem;display:block}.cell-actions{text-align:right;white-space:nowrap}.app-main .cell-actions .secondary-button,.app-main .est-panel .cell-actions .secondary-button{min-height:30px;padding:.25rem .65rem;font-size:.8rem}.cell-check{width:2.25rem}.app-main .cell-check input{width:18px;height:18px;min-height:0;accent-color:var(--green)}@media (width<=720px){.app-main .data-table thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.app-main .data-table,.app-main .data-table tbody,.app-main .data-table tr,.app-main .data-table td{width:100%;display:block}.app-main .data-table tbody tr{padding:.65rem .25rem;position:relative}.app-main .data-table tbody td{text-align:left;grid-template-columns:7.5rem minmax(0,1fr);gap:.5rem;padding:.2rem .25rem;display:grid}.app-main .data-table tbody td[data-label]:before{content:attr(data-label);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);padding-top:.15rem;font-size:.68rem;font-weight:700}.app-main .data-table tbody td[data-label]>*{grid-column:2}.app-main .data-table tbody td[data-label]>.badge,.app-main .data-table tbody td[data-label]>a{justify-self:start}.app-main .data-table td.cell-actions{justify-content:flex-end;padding-top:.4rem;display:flex}.app-main .data-table td.cell-check{width:auto;display:block;position:absolute;top:.7rem;right:.25rem}.app-main .data-table td.numeric{text-align:left!important}}.app-main .link-button,.app-main .est-panel .link-button{min-height:0;color:var(--green);text-underline-offset:2px;cursor:pointer;background:0 0;border:0;padding:0;font-size:.85rem;font-weight:650;text-decoration:underline}.panel-foot{margin:.75rem 0 0}.plain-list{gap:.25rem;margin:0;padding-left:1.1rem;font-size:.88rem;display:grid}.detail-status{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.detail-status .muted{margin:0}.inline-confirm{border-radius:var(--radius);background:var(--accent-wash);border:1px solid #ecc7ad;gap:.6rem;padding:.85rem .95rem;display:grid}.inline-confirm p{margin:0;font-size:.88rem}.inline-confirm .form-actions{margin-top:0}.app-main a.primary-button,.app-main a.secondary-button{border-radius:6px;align-items:center;gap:.45rem;text-decoration:none;display:inline-flex}.app-main a.secondary-button{color:var(--ink);border:1px solid var(--line-strong);background:var(--surface)}.app-main a.primary-button{color:#fff}.callout{border:1px solid #ecc7ad;border-left:4px solid var(--accent);border-radius:var(--radius);background:var(--accent-wash);justify-items:start;gap:.6rem;padding:.85rem 1rem;display:grid}.callout p{color:var(--ink);margin:0;font-size:.9rem}.callout .form-actions{margin-top:0}.page-head-start{margin-left:0;margin-right:auto}.page-head:has(.page-head-start){justify-content:flex-start}.tabs{border-bottom:1px solid var(--line-strong);scrollbar-width:none;gap:.25rem;display:flex;overflow:auto hidden}.app-main .tab{color:var(--ink-soft);white-space:nowrap;background:0 0;border:0;border-bottom:3px solid #0000;padding:.55rem .9rem;font-size:.9rem;font-weight:650}.app-main .tab:hover{color:var(--ink)}.app-main .tab-on{color:var(--ink);border-bottom-color:var(--accent)}.class-grid,.subject-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,15.5rem),1fr));gap:.8rem;margin:0;padding:0;list-style:none;display:grid}.app-main .class-card,.app-main .subject-card,.app-main .est-panel .subject-card{text-align:left;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);width:100%;height:100%;box-shadow:var(--shadow);color:var(--ink);align-content:start;gap:.45rem;padding:.9rem 1rem;font-size:.86rem;font-weight:400;display:grid}.app-main .class-card:hover,.app-main .subject-card:hover{border-color:#a9bcb4;box-shadow:0 4px 14px #16241f14}.class-card-head{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.class-card-title,.subject-card-title{font-size:1.05rem;font-weight:700}.class-card-meta,.subject-card-teacher{color:var(--ink-soft);font-size:.8rem}.class-card-teacher .muted{margin:0}.subject-card-summary{color:var(--ink-soft);font-size:.82rem;line-height:1.45}.fill{gap:.3rem;display:grid}.fill-text{font-variant-numeric:tabular-nums;font-weight:650}.fill-bar{background:var(--canvas);height:6px;box-shadow:inset 0 0 0 1px var(--line);border-radius:999px;display:block;overflow:hidden}.fill-bar>span{background:var(--green);height:100%;display:block}.fill-bar-near>span{background:#c98a12}.fill-bar-full>span{background:var(--accent)}.class-banner{padding:var(--pad-card);border:1px solid var(--line);border-left:4px solid var(--green);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.class-banner-main{flex:22rem;gap:.5rem;min-width:0;display:grid}.app-main .class-banner h2{margin:0;font-size:1.4rem}.app-main .class-banner .eyebrow{margin:0}.class-banner-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.programme-list{gap:.3rem;margin:0;padding-left:1.1rem;font-size:.9rem;display:grid}.dossier-banner-title{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.5rem 1rem;display:flex}.contact-list{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.contact-card{border:1px solid var(--line);border-radius:var(--radius);background:#fbfcfb;gap:.35rem;padding:.7rem .85rem;display:grid}.contact-card-head{flex-wrap:wrap;align-items:center;gap:.35rem .5rem;display:flex}.contact-card-head .muted{margin:0}.contact-card-body{color:var(--ink-soft);flex-wrap:wrap;gap:.25rem 1rem;font-size:.84rem;display:flex}.contact-card .link-button{justify-self:start}.mode-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));gap:1rem;display:grid}.app-main .mode-card{text-align:left;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);color:var(--ink);border-radius:10px;align-content:start;gap:.5rem;padding:1.2rem 1.25rem;font-weight:400;display:grid}.app-main button.mode-card:hover{border-color:var(--accent);box-shadow:0 6px 18px #c254101f}.app-main .mode-card-info{background:var(--canvas);box-shadow:none}.mode-icon{width:30px;height:30px;color:var(--accent)}.mode-title{font-size:1.05rem;font-weight:700}.mode-text{color:var(--ink-soft);font-size:.86rem;line-height:1.5}.wizard{gap:var(--gap-page);min-width:0;display:grid}.wizard-head{justify-content:space-between;align-items:center;gap:1rem;display:flex}.app-main .wizard-head h2{margin:0;font-size:1.2rem}.stepper{grid-template-columns:repeat(5,minmax(0,1fr));gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.stepper li{border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);color:var(--ink-soft);align-items:center;gap:.45rem;min-width:0;padding:.5rem .6rem;font-size:.82rem;font-weight:650;display:flex}.step-index{background:var(--canvas);border:1px solid var(--line-strong);border-radius:999px;flex:none;place-items:center;width:1.5rem;height:1.5rem;font-size:.75rem;display:inline-grid}.step-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.stepper .step-current{border-color:var(--accent);color:var(--ink);box-shadow:inset 0 -3px 0 var(--accent)}.stepper .step-current .step-index{background:var(--accent);border-color:var(--accent);color:#fff}.stepper .step-done{color:var(--green)}.stepper .step-done .step-index{background:var(--green-wash);color:var(--green);border-color:#b9d5c5}.wizard-actions{border-top:1px solid var(--line);justify-content:space-between;padding-top:.85rem}.wizard-actions .primary-button:only-child{margin-left:auto}.app-main .wizard .est-panel{gap:.9rem;display:grid}.choice-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,12.5rem),1fr));gap:.6rem;display:grid}.app-main .choice-card,.app-main .est-panel .choice-card{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);cursor:pointer;color:var(--ink);gap:.2rem;margin:0;padding:.7rem .85rem;font-size:.86rem;font-weight:400;display:grid;position:relative}.app-main .est-panel label.choice-card:has(input[type=radio]){align-content:start;align-items:start;gap:.2rem;margin:0;font-weight:400;display:grid}.app-main .choice-card input,.app-main .est-panel .choice-card input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.app-main .choice-card:has(input:focus-visible){outline-offset:2px;outline:3px solid #bd560c}.app-main .choice-card-on,.app-main .est-panel .choice-card-on{border-color:var(--green);background:var(--green-wash);box-shadow:inset 0 0 0 1px var(--green)}.app-main .choice-card-full{background:var(--canvas);border-style:dashed}.choice-title{font-size:.95rem;font-weight:700}.choice-meta{color:var(--ink-soft);font-size:.8rem}.recap-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:1rem 1.5rem;display:grid}.recap-grid p{margin:.1rem 0;font-size:.88rem}.app-main .recap-grid h3{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 .3rem;font-size:.72rem}.recap-grid .recap-title{font-size:1rem;font-weight:700}.outcome-list{gap:.3rem;margin:.75rem 0 0;padding:0;font-size:.88rem;list-style:none;display:grid}.outcome-ok{color:var(--green)}.outcome-failed{color:#8c2622}.app-main .wizard-done{border-left:4px solid var(--green)}.re-grid{gap:var(--gap-page);grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));align-items:start;display:grid}.re-summary{grid-column:1/-1}.check-head{border-bottom:1px solid var(--line);margin:.75rem 0 .35rem;padding-bottom:.35rem}.check-list{gap:.15rem;max-height:22rem;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.app-main .check-list label,.app-main .check-head label,.app-main .est-panel .check-list label,.app-main .est-panel .check-head label{color:var(--ink);align-items:center;gap:.5rem;margin:0;padding:.25rem 0;font-size:.88rem;font-weight:500;display:flex}.app-main .check-list label.muted{color:var(--ink-soft)}.app-main .check-list input,.app-main .check-head input{width:18px;height:18px;min-height:0;accent-color:var(--green)}.selection-bar{z-index:5;border-radius:var(--radius);background:var(--green-wash);box-shadow:var(--shadow);border:1px solid #b9d5c5;flex-wrap:wrap;align-items:center;gap:.6rem .9rem;padding:.6rem .85rem;font-size:.9rem;display:flex;position:sticky;top:.5rem}.selection-bar>span{margin-right:auto}.pupil-chips{gap:.3rem;margin:0;padding:0;list-style:none;display:grid}.pupil-chips li{flex-wrap:wrap;align-items:center;gap:.15rem .4rem;display:flex}.pupil-chips .chip{padding:.05rem .45rem;font-size:.72rem}.pupil-chips .cell-sub{flex-basis:100%}.recipient-list{border:1px solid var(--line);border-radius:var(--radius);max-height:18rem;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.recipient-list li{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.4rem 1rem;padding:.5rem .75rem;display:flex}.recipient-list li:last-child{border-bottom:0}.recipient-name{font-size:.88rem;font-weight:650}.app-main .recipient-list .secondary-button{min-height:30px;padding:.2rem .6rem;font-size:.8rem}.validation-panel{border:1px solid var(--line);border-left:4px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);gap:.6rem;margin:.75rem 0;padding:.8rem 1rem;display:grid}.validation-on{border-left-color:var(--green);background:var(--green-wash)}.validation-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem 1rem;display:flex}.validation-state{color:var(--ink);align-items:center;gap:.4rem;margin:0;font-weight:700;display:inline-flex}.app-main .validation-head .muted{margin:.1rem 0 0}.validation-history summary{cursor:pointer;color:var(--ink-soft);font-size:.84rem;font-weight:650}.validation-history ul{gap:.25rem;margin:.4rem 0 0;padding-left:1.1rem;font-size:.84rem;display:grid}.sheet-visas{flex-wrap:wrap;justify-content:space-between;gap:1.5rem;display:flex}.sheet-visas .sheet-visa{flex:14rem}.sheet-visas .sheet-visa:only-child{flex:0 18rem;margin-left:auto}@media (width<=720px){.app-main{padding-left:.75rem;padding-right:.75rem}.toolbar>*{flex:100%;max-width:none}.app-main .search-field{max-width:none}.toolbar-end{margin-left:0}.app-main .toolbar-field,.app-main .toolbar-field select{min-width:0}.dialog-layer{place-items:end stretch;padding:0}.dialog,.dialog-wide{border-radius:14px 14px 0 0;width:100%;max-height:92dvh}.dialog-actions{background:var(--surface);padding-bottom:.6rem;position:sticky;bottom:-1.1rem}.dialog-actions .primary-button,.dialog-actions .secondary-button,.dialog-actions .danger-button{flex:auto}.stepper{gap:.25rem}.stepper li{justify-content:center;padding:.45rem .2rem}.stepper .step-label{display:none}.stat-strip{gap:.3rem 1rem}.selection-bar{top:auto;bottom:.5rem}.class-banner{border-left-width:1px;border-top:4px solid var(--green)}.dossier-banner-photo{flex-basis:64px;width:64px;height:80px}.wizard-head{flex-wrap:wrap}}@media print{.dialog-layer,.selection-bar,.validation-panel{display:none!important}}.od-sheet{color:#111;border:1px solid var(--line);max-width:50rem;box-shadow:var(--shadow);background:#fff;border-radius:4px;margin:0 auto;padding:1.6rem clamp(1rem,4vw,2.4rem) 2rem;font-family:Arial,Helvetica Neue,Helvetica,sans-serif;font-size:.86rem;line-height:1.35}.od-sheet p{margin:0}.od-fiche{background:#fff8e8}.od-head{justify-content:space-between;gap:1rem;font-size:.8rem;line-height:1.3;display:flex}.od-head-left{text-transform:none;gap:.05rem;display:grid}.od-head-right{text-align:center;align-content:start;gap:.05rem;display:grid}.od-rule{border-bottom:1px dashed #333;width:5.5rem;height:0;margin:.1rem 0 .2rem 4rem!important}.od-head-right .od-rule{width:3.5rem;margin:.1rem auto 0!important}.od-mail{margin-top:.15rem!important}.od-underline{text-underline-offset:2px;text-decoration:underline}.od-strong{font-weight:700}.app-main .od-sheet h3.od-title-box,.od-title-box{letter-spacing:.02em;color:#222;border:1.5px solid #222;width:fit-content;margin:1.2rem auto 1.1rem;padding:.35rem 1.6rem;font-size:1.25rem;font-weight:800;box-shadow:3px 3px #555}.app-main .od-sheet h3.od-title-round,.od-title-round{letter-spacing:.06em;color:#333;border:2px solid #333;border-radius:12px;width:fit-content;margin:1rem auto;padding:.25rem 1.2rem;font-family:Georgia,Times New Roman,serif;font-size:1.7rem;font-weight:700}.od-body{gap:.15rem;margin-bottom:.9rem;display:grid}.od-line{white-space:nowrap;align-items:baseline;gap:.3em;min-width:0;display:flex}.od-fill{color:#0b2a6b;white-space:normal;border-bottom:1.5px dotted #555;min-width:4rem;min-height:1.15em;padding:0 .35em;font-family:Segoe Print,Comic Sans MS,Arial,sans-serif;font-size:.95em;font-weight:700;line-height:1.25;display:inline-block}.od-grow,.od-push{flex:auto}.od-strong-labels .od-line,.od-strong-labels .od-fill{font-weight:700}.od-center{text-align:center;margin:.6rem 0 .4rem!important}.app-main .od-table,.od-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:.8rem}.app-main .od-table th,.app-main .od-table td,.od-table th,.od-table td{text-align:left;color:#111;text-transform:none;letter-spacing:0;background:0 0;border:1px solid #333;height:1.2rem;padding:.12rem .35rem;font-size:.8rem}.app-main .od-table thead th,.od-table thead th{text-align:center;white-space:normal;font-weight:700}.od-table td{font-family:Segoe Print,Comic Sans MS,Arial,sans-serif;font-weight:700;color:#0b2a6b!important}.od-certificate .od-table tbody td:first-child{text-align:center;font-family:Arial,sans-serif;font-weight:400;color:#111!important}.od-blank-cell{border-top:none!important;border-left:none!important}.od-appreciations{grid-template-columns:15rem minmax(0,1fr);gap:.6rem;margin-top:1.1rem;display:grid}.od-appreciations-title{font-style:italic;font-weight:700;text-decoration:underline}.od-appreciations-lines{gap:.15rem;display:grid}.od-exact{text-align:center;gap:.8rem;width:min(100%,22rem);margin:1.1rem 0 .9rem auto;display:grid}.app-main .od-sign,.od-sign{border-collapse:collapse;table-layout:fixed;width:100%}.app-main .od-sign th,.app-main .od-sign td,.od-sign th,.od-sign td{text-align:center;color:#111;text-transform:none;letter-spacing:0;background:0 0;border:1px solid #333;padding:.25rem;font-size:.82rem;font-weight:700}.od-sign tbody td{vertical-align:middle;height:5.5rem;font-family:Segoe Print,Comic Sans MS,Arial,sans-serif;color:#0b2a6b!important}.od-nb{font-size:.72rem;font-weight:700;margin-top:.9rem!important}.od-fiche-head{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start;gap:1rem;font-size:.78rem;display:grid}.od-fiche-left{text-align:center;gap:.15rem;display:grid}.od-fiche-left .od-rule{border-bottom-style:solid;width:2.5rem;margin:.05rem auto .1rem!important}.od-fiche-left .od-line{text-align:left;justify-content:flex-start}.od-school-box{border:1px solid #333;padding:.45rem .5rem;margin-top:.4rem!important}.od-motto{text-align:right;letter-spacing:.04em;font-weight:700}.od-matricule{align-items:center;gap:.6rem;margin-top:1rem;display:flex}.od-bubble{border:1.5px solid #333;flex:auto;gap:.35rem;padding:.5rem .7rem;display:grid;position:relative}.od-bubble:before{content:"";border-top:1.5px solid #333;width:.75rem;position:absolute;top:45%;left:-.75rem}.od-bubble .od-fill{min-height:1.1em;display:block}.od-script{font-family:Segoe Script,Brush Script MT,cursive;font-style:italic;text-align:left!important;font-size:.8rem!important;font-weight:400!important}.od-parents{margin:.6rem 0 .8rem}.od-parents thead th{font-size:.8rem!important}.od-years th[scope=row]{width:6.4rem;font-family:Times New Roman,Georgia,serif;font-style:italic;font-weight:700;text-align:center!important;font-size:.82rem!important}.od-years td{text-align:center!important}.od-years td.od-small{font-family:Arial,sans-serif;font-weight:400;color:#111!important;font-size:.66rem!important}.od-years td.od-ordinal{font-family:Times New Roman,Georgia,serif;font-weight:400;color:#111!important}.od-years tr{height:1.9rem}.od-school-block{border-bottom:1.5px solid #333;gap:.15rem;margin-top:.9rem;padding-bottom:.4rem;font-size:.8rem;font-weight:700;display:grid}.od-school-block:last-child{border-bottom:none}.od-director{text-align:right;font-style:italic;margin-right:6rem!important}.od-copy{gap:0;display:grid}.od-attendance-foot{justify-content:space-between;align-items:flex-start;gap:1rem;margin-top:.6rem;display:flex}.od-attendance-foot>div{flex:0 22rem;gap:1.2rem;display:grid}.od-director-plain{text-align:center}@media (width<=720px){.document-area{overflow-x:auto}.od-sheet{min-width:40rem}}@media print{.od-sheet{box-shadow:none;-webkit-print-color-adjust:exact;print-color-adjust:exact;border:none;border-radius:0;min-width:0;max-width:none;padding:0;font-size:10.5pt}.od-fiche{background:#fff}.od-copy{break-inside:avoid}.od-attendance .od-title-box{margin:.7rem auto}}.app-main .est-panel{position:relative}.app-main .est-panel:has(>.data-table){overflow-x:auto}@media print{.od-sheet{font-size:10pt;line-height:1.25}.app-main .od-sheet h3.od-title-box,.app-main .od-sheet h3.od-title-round{margin:.6rem auto .7rem}.od-years tr{height:1.5rem}.od-school-block{margin-top:.5rem}.od-sign tbody td{height:4.2rem}}.platform-content{display:contents}.platform-content[hidden]{display:none}.platform-bar{color:#e9f3ed;background:#16241f;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem 1rem;padding:.4rem 1.25rem;font-size:.82rem;display:flex}.platform-bar .secondary-button{color:#fff;background:0 0;border:1px solid #ffffff73;border-radius:6px;min-height:30px;padding:.2rem .75rem;font-size:.8rem}.platform-bar .secondary-button:hover{background:#ffffff1f}.app-main.platform-page{background:var(--canvas);align-content:start;gap:1rem;max-width:72rem;min-height:calc(100vh - 80px);margin:0 auto;padding:1.25rem clamp(.75rem,3vw,2rem) 2.5rem;display:grid}.platform-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:.75rem 1rem;display:flex}.app-main .platform-head h1{letter-spacing:-.01em;margin:.15rem 0 0;font-size:1.5rem}.app-main .platform-head .eyebrow{margin:0}.platform-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));align-items:start;gap:1rem;display:grid}.platform-card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:10px;gap:.6rem;min-width:0;padding:1rem 1.15rem;display:grid;overflow-x:auto}.app-main .platform-card h2{margin:0;font-size:1rem}.subscription-state{border-radius:8px;margin:0;padding:.6rem .8rem;font-size:1.05rem}.subscription-on{background:var(--green-wash);color:var(--green)}.subscription-off{background:var(--accent-wash);color:var(--accent-dark)}.price-line{margin:0;font-size:.92rem}.pay-steps{gap:.2rem;margin:0;padding-left:1.2rem;font-size:.88rem;display:grid}.pay-numbers{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.pay-numbers li{border:1px solid var(--line);border-radius:8px;flex-wrap:wrap;align-items:center;gap:.4rem .9rem;padding:.6rem .8rem;display:flex}.pay-numbers strong{letter-spacing:.04em;font-variant-numeric:tabular-nums;font-size:1.15rem}.pay-label{min-width:7rem;font-weight:700}.pay-orange{border-left:5px solid #ff7900!important}.pay-wave{border-left:5px solid #1dc8ff!important}.pay-numbers .secondary-button{min-height:30px;margin-left:auto;padding:.2rem .65rem;font-size:.8rem}.app-main .declare-form{grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));align-items:end;gap:.8rem 1rem;display:grid}.declare-form .form-actions{margin:0}.platform-foot{color:var(--ink-soft);margin:0;font-size:.85rem}.role-list{gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.role-list li{flex-wrap:wrap;align-items:center;gap:.35rem .5rem;display:flex}.role-list .chip{align-items:center;gap:.25rem;display:inline-flex}.app-main .chip-remove,.app-main .dialog .chip-remove{color:var(--accent-dark);cursor:pointer;background:0 0;border:0;min-height:0;padding:0 .15rem;font-size:.95rem;font-weight:700;line-height:1}.app-main .inline-form{flex-wrap:wrap;align-items:flex-end;gap:.6rem;display:flex}.app-main .inline-form .field{flex:11rem}.inline-input{gap:.4rem;display:flex}.inline-input input{flex:auto;font-family:ui-monospace,Cascadia Mono,Consolas,monospace}.app-main .toggle-row{color:var(--ink);align-items:center;gap:.5rem;font-size:.92rem;font-weight:600;display:flex}.app-main .toggle-row input{width:20px;height:20px;min-height:0;accent-color:var(--accent)}.about-duo{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:1.25rem;display:grid}.about-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;grid-template-rows:auto 1fr;min-width:0;display:grid;overflow:hidden;box-shadow:0 10px 28px #16241f1a}.about-card-top{color:#fff;background:linear-gradient(135deg,#16241f 0%,#1d6b46 62%,#2a8a5c 100%);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:1.1rem;padding:1.25rem;display:grid}.about-card+.about-card .about-card-top{background:linear-gradient(135deg,#2a1d10 0%,#8a4a12 58%,#c25410 100%)}.about-portrait{aspect-ratio:480/601;object-fit:contain;background:#fff;border:3px solid #ffffffe6;border-radius:12px;width:10rem;height:auto;box-shadow:0 6px 18px #00000047}.about-card-title{gap:.45rem;min-width:0;display:grid}.about-badge{letter-spacing:.08em;text-transform:uppercase;background:#ffffff29;border-radius:999px;justify-self:start;margin:0;padding:.15rem .55rem;font-size:.68rem;font-weight:700}.app-main .about-card-title h2{color:#fff;letter-spacing:-.01em;margin:0;font-size:1.55rem;line-height:1.15}.about-role{color:#ffd29a;margin:0;font-size:.9rem;font-weight:650;line-height:1.4}.about-card-body{align-content:start;gap:1rem;padding:1.1rem 1.25rem 1.25rem;display:grid}.about-facts{gap:.6rem;margin:0;display:grid}.about-facts div{grid-template-columns:7rem minmax(0,1fr);align-items:baseline;gap:.75rem;display:grid}.about-facts dt{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);font-size:.7rem;font-weight:700}.about-facts dd{color:var(--ink);margin:0;font-weight:600}.about-contacts{border-top:1px solid var(--line);gap:.5rem;margin:0;padding:.9rem 0 0;list-style:none;display:grid}.about-contacts li{grid-template-columns:7rem minmax(0,1fr);align-items:baseline;gap:.75rem;display:grid}.about-contact-label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);font-size:.7rem;font-weight:700}.about-contacts a{color:var(--green);overflow-wrap:anywhere;font-weight:700;text-decoration:none}.about-card+.about-card .about-contacts a{color:var(--accent-dark)}.about-contacts a:hover,.about-contacts a:focus-visible{text-decoration:underline}@media (width<=900px){.about-duo{grid-template-columns:minmax(0,1fr)}}@media (width<=520px){.about-card-top{text-align:center;grid-template-columns:minmax(0,1fr);justify-items:center}.about-badge{justify-self:center}.about-portrait{width:9.5rem}.about-facts div,.about-contacts li{grid-template-columns:minmax(0,1fr);gap:.1rem}}@media (width<=720px){.platform-bar{justify-content:space-between}}.dash-section{gap:.7rem;display:grid;container-type:inline-size}.app-main form.filter-bar{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);grid-template-columns:repeat(auto-fit,minmax(min(100%,9.5rem),1fr));align-items:end;gap:.6rem .9rem;padding:.75rem .9rem;display:grid}.app-main form.filter-bar label{letter-spacing:.04em;text-transform:uppercase;min-width:0;color:var(--ink-soft);gap:.2rem;font-size:.72rem;font-weight:650;display:grid}.app-main form.filter-bar select{text-transform:none;letter-spacing:0;width:100%;height:36px;min-height:36px;padding:.25rem .55rem;font-size:.86rem}.app-main form.filter-bar .secondary-button{width:100%;min-height:36px}.filter-active{color:var(--ink-soft);margin:0;font-size:.8rem}.chart-grid{grid-template-columns:minmax(0,1fr);gap:.8rem;display:grid}@container (width>=440px){.chart-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@container (width>=860px){.chart-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.chart-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);min-width:0;min-height:12.5rem;box-shadow:var(--shadow);border-top:3px solid var(--green);grid-template-rows:auto auto auto auto 1fr;align-content:start;gap:.15rem;padding:.8rem .9rem .75rem;display:grid}.chart-card p{margin:0}.chart-card:has(.chart-none){border-top-color:var(--line-strong)}.chart-skeleton{background:linear-gradient(90deg, var(--canvas), var(--surface), var(--canvas));background-size:200% 100%;animation:1.6s ease-in-out infinite chart-shimmer}@keyframes chart-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (prefers-reduced-motion:reduce){.chart-skeleton{animation:none}}.chart-card-head{gap:.05rem;margin-bottom:.15rem;display:grid}.chart-title{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);font-size:.7rem;font-weight:700}.chart-scope{color:var(--ink-soft);opacity:.85;white-space:nowrap;text-overflow:ellipsis;font-size:.68rem;overflow:hidden}.chart-value{font-variant-numeric:tabular-nums;color:var(--ink);overflow-wrap:anywhere;font-size:1.35rem;font-weight:700;line-height:1.15}.chart-none{color:var(--ink-soft);font-size:.92rem;font-weight:650}.chart-note{color:var(--ink-soft);font-size:.72rem;line-height:1.35}.chart-trend{font-size:.74rem;font-weight:650}.chart-trend-up{color:var(--green)}.chart-trend-down{color:var(--accent-dark)}.chart-trend-flat{color:var(--ink-soft)}.chart-body{align-self:end;min-width:0;margin-top:.35rem}.chart-figure{margin:0}.chart-figure svg{width:100%;height:58px;display:block}.chart-base{stroke:var(--line);stroke-width:1px}.chart-line{fill:none;stroke:var(--green);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.chart-line-2{stroke:var(--accent);stroke-dasharray:4 3;stroke-width:1.6px}.chart-dot{fill:var(--surface);stroke:var(--green);stroke-width:1.6px}.chart-dot-2{stroke:var(--accent)}.chart-axis{color:var(--ink-soft);justify-content:space-between;gap:.2rem;font-size:.64rem;display:flex}.chart-columns{align-items:flex-end;gap:.35rem;height:70px;display:flex}.chart-column{text-align:center;height:100%;color:var(--ink-soft);flex:1 1 0;grid-template-rows:1fr auto;gap:.15rem;min-width:0;font-size:.62rem;display:grid}.chart-column-track{background:var(--canvas);border-radius:3px;align-items:flex-end;display:flex}.chart-column-bar{background:var(--line-strong);border-radius:3px 3px 0 0;width:100%}:is(.chart-column-on .chart-column-bar,.chart-columns:not(:has(.chart-column-on)) .chart-column-bar){background:var(--green)}.chart-column-on{color:var(--ink);font-weight:700}.chart-bars,.chart-stack{gap:.2rem;margin:0;padding:0;list-style:none;display:grid}.chart-bars li,.chart-stack li{grid-template-columns:3.2rem minmax(0,1fr) auto;align-items:center;gap:.35rem;font-size:.68rem;display:grid}.chart-bars-on .chart-bar-label{color:var(--accent-dark)}.chart-bars-on .chart-bar{background:var(--accent-dark)}.chart-bar-label{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-weight:650;overflow:hidden}.chart-bar-track,.chart-stack-track{background:var(--canvas);border-radius:999px;height:8px;display:flex;overflow:hidden}.chart-bar{background:var(--green);border-radius:999px;height:100%;display:block}.chart-bar-value{font-variant-numeric:tabular-nums;color:var(--ink-soft);white-space:nowrap}.chart-stack-part{height:100%;display:block}.chart-stack-ok{background:var(--green)}.chart-stack-warn{background:var(--accent)}.chart-donut{width:92px;height:92px;margin:0 auto;display:block}.chart-donut-track{fill:none;stroke:var(--canvas);stroke-width:9px}.chart-donut-part{fill:none;stroke-width:9px}.chart-donut-paid{stroke:var(--green)}.chart-donut-due{stroke:var(--accent)}.chart-donut-text{fill:var(--ink);font-size:11px;font-weight:700}.two-factor-key{border:1px dashed var(--line-strong);border-radius:8px;flex-wrap:wrap;align-items:center;gap:.4rem .9rem;margin:0;padding:.6rem .8rem;display:flex}.two-factor-key strong{letter-spacing:.06em;overflow-wrap:anywhere;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:1.05rem}.attendance-counts{color:var(--ink-soft);margin:0;font-size:.85rem}.attendance-list{gap:.25rem;margin:0;padding:0;list-style:none;display:grid}.attendance-list li{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.4rem 1rem;padding:.35rem .5rem;display:flex}.attendance-name{min-width:0;font-weight:600}.attendance-choices{gap:.3rem;display:inline-flex}.attendance-choice{border:1px solid var(--line-strong);cursor:pointer;width:2.3rem;height:2.1rem;color:var(--ink-soft);background:var(--surface);border-radius:6px;place-items:center;font-weight:700;display:inline-grid;position:relative}.attendance-choice input{opacity:0;cursor:pointer;position:absolute;inset:0}.attendance-choice:focus-within{outline:2px solid var(--accent);outline-offset:1px}.attendance-present.attendance-on{background:var(--green);border-color:var(--green);color:#fff}.attendance-late.attendance-on{color:#fff;background:#b7791f;border-color:#b7791f}.attendance-absent.attendance-on{background:var(--accent-dark);border-color:var(--accent-dark);color:#fff}.attendance-excused.attendance-on{color:#fff;background:#4a5568;border-color:#4a5568}.protected-layout:has(.app-shell) .session-header{display:none}@media (width>=901px){.protected-layout:has(.app-shell){flex-direction:column;height:100dvh;display:flex;overflow:hidden}.protected-layout:has(.app-shell) .shell-content{flex-direction:column;flex:auto;min-height:0;display:flex}:is(.protected-layout:has(.app-shell) .shell-content>*,.protected-layout:has(.app-shell) .active-school-bar){flex:none}.protected-layout .shell-content .app-shell{flex:auto;grid-template-rows:minmax(0,1fr);min-height:0}.protected-layout:has(.app-shell) .app-body{overscroll-behavior:contain;min-height:0;position:relative;overflow-y:auto}.protected-layout:has(.app-shell) .app-topbar{z-index:6;position:sticky;top:0}.protected-layout:has(.app-shell) .shell-content>main.platform-page{flex:auto;min-height:0;position:relative;overflow-y:auto}.protected-layout:has(.app-shell) .app-sidebar{overscroll-behavior:contain;align-self:stretch;height:100%;max-height:none;position:static;overflow-y:auto}}.app-sidebar-foot{border-top:1px solid var(--line);background:var(--surface);gap:.5rem;margin-top:auto;padding:.75rem .5rem 1.5rem;display:grid;position:sticky;bottom:-1.5rem}.app-sidebar-user{color:var(--ink-soft);gap:.1rem;min-width:0;margin:0;font-size:.78rem;display:grid}.app-sidebar-user strong{color:var(--ink);font-size:.84rem}.app-sidebar-user span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-sidebar-foot .secondary-button{width:100%;min-height:34px;font-size:.82rem}@media print{.protected-layout:has(.app-shell){height:auto;display:block;overflow:visible}.protected-layout:has(.app-shell) .shell-content{height:auto;display:block;overflow:visible}.protected-layout:has(.app-shell) .app-body{overflow:visible}.protected-layout:has(.app-shell) .shell-content>main.platform-page{overflow:visible}.platform-bar,.app-sidebar-foot{display:none!important}}.statistics-area{gap:var(--gap-page);min-width:0;display:grid}.statistics-picker{gap:var(--gap-card);padding:var(--pad-card);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);display:grid}.statistics-kinds{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:.5rem;display:grid}.statistics-kind{text-align:left;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);color:var(--ink);font:inherit;cursor:pointer;gap:.15rem;padding:.65rem .8rem;transition:border-color .15s,background-color .15s,box-shadow .15s;display:grid}.statistics-kind span{color:var(--ink-soft);font-size:.85rem}.statistics-kind:hover{border-color:var(--accent)}.statistics-kind:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.statistics-kind.is-active{border-color:var(--accent);background:var(--accent-wash);box-shadow:inset 3px 0 0 var(--accent)}.statistics-filters{align-items:flex-end;gap:var(--gap-field);flex-wrap:wrap;display:flex}.statistics-filters label{flex:11rem;gap:.3rem;max-width:18rem;font-size:.9rem;font-weight:600;display:grid}.statistics-filters select{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);min-height:2.5rem;font:inherit;padding:.45rem .6rem;font-weight:500}.statistics-print{margin-left:auto}.statistics-lead{margin:0;font-size:.88rem}.statistics-paper{background:var(--canvas);border:1px solid var(--line);border-radius:var(--radius);padding:1rem;overflow-x:auto}.stat-sheet{--stat-face:Arial, "Helvetica Neue", "Liberation Sans", "Segoe UI", sans-serif;--stat-red:#b00000;--stat-green:#006b35;--stat-blue:#0b2a6b;font-family:var(--stat-face);color:#000;-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#fff;width:100%;min-width:1000px;max-width:1180px;margin:0 auto;padding:1.4rem 1.5rem 1.2rem;font-size:14px;line-height:1.3;box-shadow:0 2px 10px #16241f1f}.stat-sheet.stat-measuring{width:var(--stat-page-width,281mm);min-width:0;max-width:none;box-shadow:none;padding:0}.stat-sheet p{margin:0}.stat-head-row{justify-content:space-between;gap:2rem;display:flex}.stat-head-left,.stat-head-right{text-align:center;align-content:start;justify-items:center;font-size:.93em;font-weight:700;line-height:1.35;display:grid}.stat-head-left{max-width:30rem}.stat-motto{font-style:italic;font-weight:400}.stat-sheet .stat-rule{border-top:1.5px solid #000;width:6rem;height:0;margin:.35rem 0}.stat-sheet .stat-service{text-align:center;margin:.6rem 0 .5rem;font-size:1.15em;font-weight:700;text-decoration:underline}.stat-blank{vertical-align:baseline;border-bottom:1.5px dotted #000;height:.9em;display:inline-block}.stat-title-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1.5rem;margin-bottom:.75rem;display:grid}.stat-title-row-results{justify-content:space-between;align-items:center;gap:.6rem 1.5rem;display:flex}.stat-sheet[data-orientation=portrait] .stat-title-row-results{flex-wrap:wrap}.stat-sheet[data-orientation=portrait] .stat-title-row-results .stat-title-box{flex-basis:100%;order:-1}.stat-title-row-results .stat-facts dd,.stat-sheet .stat-title-row-results .stat-title-box{white-space:nowrap}.stat-sheet .stat-title-row-results .stat-title-box{font-size:1.45em}.stat-sheet .stat-title-box{font-family:var(--stat-face);text-align:center;color:#000;letter-spacing:.01em;border:2.5px solid #000;justify-self:center;justify-items:center;margin:0;padding:.45rem 1.5rem;font-size:1.6em;font-weight:800;line-height:1.2;display:grid}.stat-sheet .stat-title-mono{padding:.55rem 1.6rem;font-family:Courier New,Courier,monospace;font-size:1.5em}.stat-facts{gap:.3rem;margin:0;font-size:1.1em;font-weight:700;display:grid}.stat-facts div{align-items:baseline;gap:.4rem;display:flex}.stat-facts dt{white-space:nowrap}.stat-facts dd{margin:0}.stat-facts-left{justify-self:start}.stat-sheet .stat-grid,.stat-sheet .stat-results{font-size:1em}.stat-sheet thead th{text-transform:none;letter-spacing:normal;color:#000;white-space:normal;background:0 0}.stat-sheet tbody tr:hover{background:0 0}.stat-sheet .stat-grid,.stat-sheet .stat-results{border-collapse:collapse;width:100%;font-family:var(--stat-face)}.stat-sheet .stat-grid{table-layout:fixed}.stat-sheet .stat-grid th,.stat-sheet .stat-grid td{text-align:center;white-space:nowrap;color:#000;border:1px solid #000;padding:.42em .1em;font-size:1.06em}.stat-sheet .stat-grid .stat-corner,.stat-sheet .stat-grid tbody th{width:12em}.stat-sheet .stat-grid thead th{font-weight:800}.stat-sheet .stat-grid thead tr:last-child th{font-weight:600}.stat-sheet .stat-grid thead tr:last-child th.stat-t,.stat-sheet .stat-grid td.stat-t{background:#f1f1f1;font-weight:800}.stat-sheet .stat-grid .stat-group,.stat-sheet .stat-grid th.stat-t,.stat-sheet .stat-grid td.stat-t{border-right-width:2px}.stat-sheet .stat-grid tbody th{text-align:left;border-left-width:2px;padding-left:.45em;font-weight:800}.stat-sheet .stat-grid .stat-corner{border-top-color:#0000;border-left-color:#0000}.stat-sheet .stat-grid .stat-rate th,.stat-sheet .stat-grid .stat-rate td{border-bottom-width:2px;font-weight:800}.stat-sheet .stat-grid .stat-rate td{letter-spacing:-.01em;font-size:.86em}.stat-sheet .stat-nb{margin-top:.55rem;font-size:1em;font-weight:700}.stat-foot{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:1.5rem;margin-top:.8rem;display:grid}.stat-sheet .stat-results th,.stat-sheet .stat-results td{text-align:center;vertical-align:middle;border:1px solid #000;padding:.3em .35em}.stat-sheet .stat-results thead th{max-width:8rem;height:3.6em;font-size:.98em;font-weight:800;line-height:1.2}.stat-sheet .stat-results th.stat-vertical span{writing-mode:vertical-rl;transform:rotate(180deg)}.stat-sheet .stat-results tbody td{font-size:1.08em;font-weight:700}.stat-sheet .stat-results .stat-name{text-align:left;white-space:nowrap}.stat-sheet .stat-results tbody .stat-name{color:var(--stat-red)}.stat-sheet .stat-results .stat-rank{color:var(--stat-green);white-space:nowrap}.stat-sheet .stat-results tbody td:nth-child(3){white-space:nowrap}.stat-sheet .stat-results .stat-mark{color:var(--stat-blue)}.stat-sheet .stat-results .stat-average{color:var(--stat-red)}.stat-sheet .stat-results .stat-empty{color:#3d4a45;padding:1rem;font-weight:400}.stat-sign{justify-items:center;gap:.2rem;display:grid}.stat-sign-director{min-width:22rem}.stat-sign-director p:first-child{justify-self:start;font-size:1.1em}.stat-sheet .stat-sign-title{margin-top:.35rem;font-size:1.15em;font-weight:800;text-decoration:underline}.stat-sign-hint{padding-bottom:3rem;font-size:.95em;font-style:italic}.stat-sheet .stat-sign-date{text-align:center;margin-top:.6rem;font-size:1.1em}.stat-sign-pair{grid-template-columns:1fr 1fr;align-items:start;margin-top:.5rem;display:grid}.stat-sign-title-left{justify-self:center;font-size:1.1em;font-weight:800}.stat-sheet .stat-sign-pair .stat-sign-title{margin-top:0;text-decoration:none}.stat-notes{font-family:var(--stat-face);color:#26332e;border-top:1px solid #9aa7a2;gap:.15rem;margin:0;padding:.45rem 0 0 1rem;font-size:.8em;display:grid}.stat-result-sheet .stat-notes{margin-top:.4rem}@media (width<=720px){.statistics-kinds{grid-template-columns:repeat(2,minmax(0,1fr))}.statistics-kind{padding:.55rem .6rem;font-size:.9rem}.statistics-kind span{display:none}.statistics-print{justify-content:center;width:100%;margin-left:0}.statistics-filters label{max-width:none}.statistics-paper{padding:.5rem}}@media print{.statistics-paper{background:#fff;border:none;padding:0;overflow:visible}.stat-sheet{width:var(--stat-page-width,281mm);min-width:0;max-width:none;margin:0 0 0 var(--stat-shift,0);box-shadow:none;zoom:var(--stat-zoom,1);padding:0}.stat-sheet tr{break-inside:avoid}}.etab{gap:var(--gap-page);min-width:0;display:grid}.etab-loading{color:var(--ink-soft);margin:0}.etab-hero{color:#fff;background:radial-gradient(130% 160% at 0 0,#2a8a5c 0%,#1d6b46 42%,#16241f 100%);border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1.25rem;padding:1.3rem 1.4rem 1.45rem;display:grid;position:relative;overflow:hidden;box-shadow:0 12px 30px #16241f29}.etab-hero:after{content:"";background:linear-gradient(90deg, var(--accent) 0 33.3%, #fff 33.3% 66.6%, #2a8a5c 66.6% 100%);opacity:.85;height:4px;position:absolute;inset:auto 0 0}.etab-hero-mark{background:#fff;border-radius:18px;place-items:center;width:5.5rem;height:5.5rem;display:grid;overflow:hidden;box-shadow:0 6px 16px #00000040}.etab-hero-mark img{object-fit:contain;width:100%;height:100%}.etab-hero-mark span{color:var(--green);letter-spacing:.02em;font-size:1.9rem;font-weight:800}.etab-hero-text{min-width:0}.etab-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:#b9d5c5;margin:0;font-size:.68rem;font-weight:700}.etab-hero-name{letter-spacing:-.01em;overflow-wrap:anywhere;margin:.15rem 0 .2rem;font-size:1.6rem;font-weight:800;line-height:1.15}.etab-hero-meta{color:#d7e8de;margin:0 0 .75rem;font-size:.92rem}.etab-hero-chips{flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.etab-hero-chips li{background:#ffffff1f;border:1px solid #fff3;border-radius:999px;align-items:baseline;gap:.4rem;max-width:100%;padding:.25rem .7rem;font-size:.82rem;display:inline-flex}.etab-hero-chips span{letter-spacing:.08em;text-transform:uppercase;opacity:.8;white-space:nowrap;font-size:.64rem;font-weight:700}.etab-hero-chips strong{overflow-wrap:anywhere}.etab-hero-chips li.is-missing{background:#c2541047;border-color:#ffd29a8c}.etab-hero-chips li.is-missing strong{color:#ffd29a;font-style:italic;font-weight:600}.etab-hero-score{text-align:center;background:#ffffff1a;border:1px solid #ffffff38;border-radius:12px;justify-items:center;gap:.2rem;min-width:7.5rem;padding:.75rem 1rem;display:grid}.etab-hero-score strong{font-size:1.7rem;line-height:1}.etab-hero-score span{opacity:.85;font-size:.72rem}.etab-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:dense;align-items:start;gap:1rem;display:grid}.etab-header{grid-column:span 2}.etab-card{border:1px solid var(--line);background:var(--surface);border-radius:12px;gap:.9rem;min-width:0;padding:1.1rem 1.2rem 1.2rem;transition:box-shadow .2s;display:grid;box-shadow:0 1px 2px #16241f0d,0 8px 24px #16241f0d}.etab-card:focus-within{box-shadow:0 1px 2px #16241f0d,0 10px 28px #16241f1a}.etab-card-head{border-left:3px solid var(--accent);padding-left:.7rem}.app-main .etab-card-head h2{margin:0;font-size:1rem}.etab-card-head p{color:var(--ink-soft);margin:.15rem 0 0;font-size:.82rem}.app-main .etab-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 1rem;margin:0;display:grid}.app-main .etab-fields label{gap:.3rem;min-width:0;margin:0;display:grid}.app-main .etab-fields legend{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:.55rem;padding:0;font-size:.72rem;font-weight:700}.etab-wide{grid-column:1/-1}.etab-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.6rem;margin-top:.9rem;display:flex}.etab-saved{color:var(--green);margin:0 auto 0 0;font-size:.85rem;font-weight:650}.etab-saved:before{content:"✓ "}.etab-muted{color:var(--ink-soft);margin:0;font-size:.86rem}.app-main .etab-identity .etab-fields{grid-template-columns:minmax(0,1fr)}.etab-preview{gap:.4rem;margin:.9rem 0 0;display:grid}.etab-preview figcaption{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);font-size:.7rem;font-weight:700}.etab-preview-sheet{border:1px solid var(--line-strong);color:#111;text-align:center;background:#fff;border-radius:8px;justify-content:space-between;gap:.8rem;padding:.9rem .8rem;font-size:.64rem;font-weight:700;line-height:1.35;display:flex;box-shadow:0 6px 16px #16241f14}.etab-preview-sheet>div:first-child{flex:60%}.etab-preview-sheet p{margin:0}.etab-preview-rule{border-top:1px solid #111;width:2.5rem;margin:.25rem auto!important}.etab-preview-mail{font-weight:500}.etab-preview-motto{font-style:italic;font-weight:500}.etab-preview-blank{color:var(--accent);letter-spacing:.05em}.etab-logo-body{grid-template-columns:7.5rem minmax(0,1fr);align-items:center;gap:1rem;display:grid}.etab-grid .etab-logo .etab-logo-body{grid-template-columns:minmax(0,1fr);justify-items:center}.etab-logo-form{width:100%}.etab-logo-tile{border:1px dashed var(--line-strong);background:var(--canvas);text-align:center;border-radius:14px;place-items:center;width:7.5rem;height:7.5rem;font-size:.8rem;display:grid;overflow:hidden}.etab-logo-tile img{object-fit:contain;background:#fff;width:100%;height:100%}.etab-logo-form .etab-actions{margin-top:.6rem}.etab-list{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.etab-list li{border:1px solid var(--line);background:#fbfcfb;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name badge""dates badge";align-items:center;gap:.1rem .6rem;padding:.55rem .75rem;transition:border-color .15s,background-color .15s;display:grid}.etab-list li:hover{border-color:var(--line-strong)}.etab-list li.is-open{border-color:var(--accent);background:var(--accent-wash)}.app-main .etab-list-name{color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-area:name;justify-self:start;padding:0;font-weight:700}.app-main .etab-list-name:hover,.app-main .etab-list-name:focus-visible{color:var(--accent-dark);text-decoration:underline}.etab-list-dates{color:var(--ink-soft);grid-area:dates;font-size:.8rem}.etab-list .badge{grid-area:badge}.etab-detail{background:var(--green-wash);border:1px solid #bcdbc8;border-radius:8px;padding:.75rem .9rem}.app-main .etab-detail h3,.etab-detail strong{margin:0;font-size:.95rem}.etab-detail p{margin:.2rem 0 0;font-size:.86rem}.app-main .etab-inline{flex-wrap:wrap;align-items:flex-end;gap:.6rem;margin-top:.6rem;display:flex}.app-main .etab-inline fieldset{flex:11rem;margin:0}.etab-add{border-top:1px dashed var(--line-strong);padding-top:.9rem}.etab-pages{color:var(--ink-soft);justify-content:flex-end;align-items:center;gap:.6rem;font-size:.82rem;display:flex}@media (width<=1240px){.etab-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.etab-grid{grid-template-columns:minmax(0,1fr)}.etab-header{grid-column:auto}.etab-hero{grid-template-columns:auto minmax(0,1fr)}.etab-hero-score{grid-column:1/-1;grid-template-columns:auto auto;justify-content:start;align-items:baseline;gap:.5rem}}@media (width<=520px){.etab-hero{text-align:center;grid-template-columns:minmax(0,1fr);justify-items:center}.etab-hero-chips,.etab-hero-score{justify-content:center}.app-main .etab-fields{grid-template-columns:minmax(0,1fr)}.etab-logo-body{grid-template-columns:minmax(0,1fr);justify-items:center}.etab-actions{justify-content:stretch}.etab-actions .primary-button,.etab-actions .secondary-button{flex:auto}}
