@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:100 900;src:url(/brand/dm-sans-variable.woff2)format("woff2-variations")}@font-face{font-family:Instrument Serif;font-style:normal;font-display:swap;font-weight:400;src:url(/brand/instrument-serif-400.woff2)format("woff2")}@font-face{font-family:Instrument Serif;font-style:italic;font-display:swap;font-weight:400;src:url(/brand/instrument-serif-400-italic.woff2)format("woff2")}:root{--deep-space:#002d47;--evergreen:#00332c;--pine-dark:#003d35;--pine:#00473e;--pine-light:#24524d;--granite:#475d5b;--rose:#c5848b;--linen:#e7e3d7;--site-white:#fffffe;--bg:#e7e3d7;--bg-soft:#f3f1ea;--panel:#fffffe;--surface-dark:#00332c;--surface-dark-2:#003d35;--text:#00332c;--text-strong:#002d47;--muted:#475d5b;--on-dark:#e7e3d7;--accent:#00473e;--accent-hover:#003d35;--rose-accent:#c5848b;--danger:#a93f35;--border:#00332c1f;--border-strong:#00332c38;--radius-sm:6px;--radius:8px;--radius-lg:12px;--font-dm:"DM Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-serif:"Instrument Serif", Georgia, "Times New Roman", serif;font-family:var(--font-dm);color:var(--text);font-optical-sizing:auto}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}html{scrollbar-gutter:stable}body{background:var(--bg);-webkit-font-smoothing:antialiased}button{font:inherit;cursor:pointer}.brand-serif{font-family:var(--font-serif);letter-spacing:.01em;font-style:italic;font-weight:400}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--rose)!important}button:focus:not(:focus-visible){outline:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.appbar :focus-visible,.login-page :focus-visible,.surface-dark :focus-visible{outline-color:var(--rose)}.appbar{background:var(--surface-dark);color:var(--on-dark);align-items:center;gap:12px;padding:12px 24px;display:flex}.appbar-left,.appbar-right{flex:none;align-items:center;gap:12px;display:flex}.appbar-center{flex:auto;justify-content:center;min-width:0;display:flex}.appbar-bare-nav{align-items:center;gap:10px;display:flex}.appbar-btn{border-radius:var(--radius-sm);color:var(--linen);white-space:nowrap;border:1px solid #e7e3d74d;align-items:center;padding:7px 14px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.appbar-btn:hover{background:#e7e3d71a;border-color:#e7e3d799}.appbar-brand{color:var(--linen);white-space:nowrap;font-size:22px}.appbar-tool{border-radius:var(--radius-lg);background:var(--rose);justify-content:space-between;align-items:center;gap:16px;width:100%;height:46px;padding:6px 8px 6px 20px;display:flex}.appbar-tool-left{align-items:center;min-width:0;display:flex}.appbar-tool-name{color:var(--evergreen);white-space:nowrap;font-size:20px}.appbar-back{width:26px;height:34px;color:var(--evergreen);cursor:pointer;background:0 0;border:none;flex:none;justify-content:center;align-items:center;margin-right:6px;font-size:30px;line-height:1;animation:.26s appbar-back-in;display:inline-flex;overflow:hidden}.appbar-back:hover{opacity:.7}@keyframes appbar-back-in{0%{opacity:0;width:0;margin-right:0}to{opacity:1;width:26px;margin-right:6px}}.appbar-tool-nav{scrollbar-width:none;align-items:center;gap:8px;display:flex;overflow-x:auto}.appbar-tool-nav::-webkit-scrollbar{display:none}.appbar-navlink{border:1px solid var(--evergreen);border-radius:var(--radius-sm);background:var(--evergreen);color:var(--linen);white-space:nowrap;justify-content:center;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.appbar-navlink:hover{background:var(--pine-dark);border-color:var(--pine-dark)}.appbar-navlink-active{box-shadow:0 0 0 2px var(--rose)}.appbar-icon-btn{border-radius:var(--radius-sm);width:38px;height:38px;color:var(--linen);cursor:pointer;background:0 0;border:1px solid #e7e3d740;justify-content:center;align-items:center;display:inline-flex}.appbar-icon-btn:hover{background:#e7e3d71a;border-color:#e7e3d780}.appbar-menu{display:inline-flex;position:relative}.appbar-menu-panel{z-index:50;background:var(--panel);min-width:240px;color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:6px;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 12px 32px #002d472e}.appbar-menu-profile{padding:8px 10px 6px}.appbar-menu-name{color:var(--text-strong);font-size:14px;font-weight:700}.appbar-menu-email{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.appbar-menu-divider{background:var(--border);height:1px;margin:4px 0}.appbar-menu-row{justify-content:space-between;align-items:center;padding:6px 10px;font-size:13px;display:flex}.appbar-menu-label{color:var(--muted);font-weight:600}.appbar-menu-logout{border-radius:var(--radius-sm);width:100%;color:var(--danger);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;padding:8px 10px;font-size:13px;font-weight:600;display:flex}.appbar-menu-logout:hover{background:#a93f3514}@media (width<=640px){.appbar{gap:8px;padding:10px 12px}.appbar-brand{font-size:18px}.appbar-tool{gap:10px;padding:5px 6px 5px 12px}.appbar-tool-name{font-size:17px}.appbar-right{gap:10px}}@keyframes echo-mic-rec{0%,to{color:var(--accent)}50%{color:#a93f35}}#root{overflow-wrap:break-word}.muted{color:var(--muted)}.login-page{background:var(--surface-dark);min-height:100vh;color:var(--on-dark);flex-direction:column;justify-content:center;align-items:center;padding:24px;display:flex;position:relative}.login-lang{position:absolute;top:16px;right:20px}.login-card{text-align:center;width:100%;max-width:420px}.login-title{color:var(--linen);margin:0 0 10px;font-size:clamp(32px,6vw,46px)}.login-lead{color:#e7e3d7bf;max-width:42ch;margin:0 auto 26px;font-size:14px;line-height:1.55}.login-submit{border:1px solid var(--rose);border-radius:var(--radius-sm);background:var(--rose);color:var(--evergreen);margin-top:8px;padding:12px 16px;font-weight:700}.login-submit:disabled{opacity:.6;cursor:progress}.login-error{color:#f0b3b3;white-space:pre-wrap;margin:4px 0 0;font-size:14px}.login-ms{flex-direction:column;align-items:stretch;gap:8px;margin-top:18px;display:flex}.login-ms-button{border:1px solid var(--linen);border-radius:var(--radius-sm);background:var(--site-white);color:#1b1b1b;min-height:48px;font:inherit;cursor:pointer;justify-content:center;align-items:center;gap:12px;padding:12px 16px;font-weight:600;display:inline-flex}.login-ms-button:hover:not(:disabled){background:var(--linen)}.login-ms-button:focus-visible{outline:2px solid var(--rose);outline-offset:3px}.login-ms-button:disabled{opacity:.6;cursor:progress}.login-ms-mark{flex:none}.login-ms-hint{color:#e7e3d799;margin:0;font-size:13px}.login-ms-error{text-align:left}.login-footer{align-items:center;gap:10px;display:flex;position:absolute;bottom:18px}.login-footer-link{color:#e7e3d773;font-size:12px;text-decoration:none}.login-footer-link:hover{color:var(--linen)}.login-footer-sep{color:#e7e3d74d;font-size:12px}.page-back{color:#e7e3d799;font-size:14px;text-decoration:none;position:absolute;top:18px;left:20px}.page-back:hover{color:var(--linen)}.page-plain{background:var(--bg);min-height:100vh}.page-plain-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.page-plain-back{color:var(--muted);font-size:14px;text-decoration:none}.page-plain-back:hover{color:var(--text)}.page-plain-body{padding:32px 24px 64px}.prose{max-width:68ch;margin:0 auto;line-height:1.65}.prose h1{color:var(--text-strong);margin:0 0 4px;font-size:clamp(30px,5vw,40px)}.prose h2{color:var(--text-strong);margin:32px 0 8px;font-size:19px}.prose ul{padding-left:20px}.prose li{margin-bottom:8px}.report-shell{background:var(--bg);flex-direction:column;min-height:100vh;display:flex}.report-shell>.home-main{flex:1 0 auto;width:100%}.portal-footer{text-align:center;padding:8px 28px 28px}.portal-footer-link{color:var(--muted);font-size:12px;text-decoration:none}.portal-footer-link:hover{color:var(--text);text-decoration:underline}.boot{background:var(--bg);flex-direction:column;justify-content:center;align-items:center;gap:18px;display:flex;position:fixed;inset:0}.boot-mark{color:var(--evergreen);font-size:44px}.boot-bar{background:var(--bg-soft);border-radius:2px;width:180px;height:4px;overflow:hidden}.boot-fill{background:var(--rose);border-radius:2px;width:30%;height:100%;animation:1.1s ease-in-out infinite boot-sweep}@keyframes boot-sweep{0%{transform:translate(-100%)}to{transform:translate(320%)}}.boot-msg{color:var(--muted);margin:0;font-size:14px}@media (prefers-reduced-motion:reduce){.boot-fill{opacity:.5;width:100%;animation:none}}.appbar-nav-slot{flex:1;justify-content:flex-end;min-width:0;display:flex;position:relative;overflow:hidden}.appbar-nav-measure{visibility:hidden;pointer-events:none;white-space:nowrap;gap:8px;display:flex;position:absolute;top:0;left:0}.appbar-menu-nav{flex-direction:column;gap:6px;padding:4px 0;display:flex}.appbar-menu-nav .appbar-navlink{justify-content:flex-start;width:100%}.appbar-navlink-icon{padding:6px 9px}.notice-main{max-width:980px;margin:0 auto;padding:40px 24px 64px}.notice-title{color:var(--text-strong);max-width:22ch;margin:0;font-size:clamp(26px,4vw,36px)}.notice-help{max-width:52ch;margin:10px 0 28px}.notice-actions{flex-wrap:wrap;gap:10px;display:flex}.home-main{max-width:980px;margin:0 auto;padding:40px 24px 64px}.home-title{color:var(--text-strong);margin:0;font-size:clamp(32px,5vw,44px)}.home-lead{margin:6px 0 28px}.trainings-main{text-align:center;max-width:1080px}.trainings-grid{text-align:left;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),460px));justify-content:center;gap:20px;margin:0;padding:0;list-style:none;display:grid}.training-card{border-radius:var(--radius-lg);background:var(--evergreen);height:100%;min-height:300px;color:var(--linen);flex-direction:column;gap:10px;padding:32px 34px 28px;text-decoration:none;transition:box-shadow .18s,transform .18s;display:flex;box-shadow:0 14px 36px #00332c38}.training-card:hover{transform:translateY(-3px);box-shadow:0 18px 44px #00332c52}.training-card:focus-visible{outline:3px solid var(--rose);outline-offset:3px}.training-card-customer{color:#e3b1b6;letter-spacing:.08em;text-transform:uppercase;font-size:13px;font-weight:600}.training-card-title{color:var(--site-white,#fffffe);font-size:clamp(34px,5vw,44px);line-height:1.08}.training-card-sub{color:#e7e3d7d1;max-width:36ch;font-size:16px;line-height:1.45}.training-card-foot{justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:24px;font-size:14px;display:flex}.training-card-time{color:#e7e3d7c7;align-items:center;gap:6px;display:inline-flex}.training-card-start{background:var(--linen);color:var(--evergreen);border-radius:999px;align-items:center;gap:8px;padding:9px 16px;font-weight:600;transition:gap .18s;display:inline-flex}.training-card:hover .training-card-start{gap:12px}@media (prefers-reduced-motion:reduce){.training-card,.training-card-start{transition:none}.training-card:hover{transform:none}}.btn{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--panel);color:var(--text);padding:8px 14px;font-size:14px;font-weight:600}.btn:hover{background:var(--bg-soft)}.btn-primary{border-color:var(--accent);background:var(--accent);color:var(--linen)}.admin-main{max-width:1080px}.admin-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.admin-head .btn{margin-top:10px}.admin-table-wrap{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--panel);overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;font-size:14px}.admin-table th,.admin-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:10px 14px}.admin-table thead th{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;font-size:12px;font-weight:700}.admin-table tbody tr:last-child td{border-bottom:none}.admin-table tfoot th,.admin-table tfoot td{border-top:1px solid var(--border-strong);border-bottom:none;font-weight:700}.admin-num{font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right!important}.admin-actions{white-space:nowrap;text-align:right!important}.admin-actions>*+*{margin-left:8px}.admin-actions .btn{text-decoration:none;display:inline-block}.admin-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px}.admin-small{font-size:12px}.admin-chip{white-space:nowrap;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700;display:inline-block}.admin-chip-on{color:var(--accent);background:#00473e1f}.admin-chip-off{background:var(--bg-soft);color:var(--muted);box-shadow:inset 0 0 0 1px var(--border-strong)}.admin-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--panel);margin:0 0 24px;padding:20px 22px}.admin-card-title{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin:0 0 16px;font-size:12px;font-weight:700}.admin-form{flex-direction:column;gap:16px;max-width:640px;display:flex}.admin-field{flex-direction:column;gap:6px;display:flex}.admin-fieldset{border:none;margin:0;padding:0}.admin-label{color:var(--text-strong);padding:0;font-size:13px;font-weight:700}.admin-field input,.admin-field textarea,.admin-field select{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--panel);width:100%;color:var(--text);font:inherit;padding:9px 11px;font-size:14px}.admin-field input:disabled{background:var(--bg-soft);color:var(--muted)}.admin-field textarea{resize:vertical}.admin-help{color:var(--muted);margin:0;font-size:12px}.admin-check{align-items:flex-start;gap:8px;font-size:14px;display:flex}.admin-check input{margin-top:3px}.admin-bad{color:var(--danger)}.admin-problems{border-radius:var(--radius-sm);color:var(--danger);background:#a93f3514;margin:0;padding:10px 14px 10px 30px;font-size:14px}p.admin-problems{padding-left:14px}.admin-ok{color:var(--accent);margin:0 0 16px;font-weight:600}.admin-alert{color:var(--danger);flex-wrap:wrap;align-items:center;gap:12px;display:flex}.admin-note{max-width:72ch;margin:16px 0;font-size:14px;line-height:1.5}.admin-toolbar{flex-wrap:wrap;align-items:flex-end;gap:12px 16px;margin:0 0 8px;display:flex}.admin-inline{min-width:200px}.appbar-tool-sub{color:#00332cb3;text-overflow:ellipsis;white-space:nowrap;margin-left:10px;font-size:13px;overflow:hidden}@media (width<=767px){.appbar{gap:8px;padding:10px 12px}.appbar-tool{padding:6px 6px 6px 14px}.appbar-tool-name{text-overflow:ellipsis;font-size:17px;overflow:hidden}.appbar-tool-sub{display:none}}
