:root{color:#17211b;font-synthesis:none;background:#f4f7f5;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:#166534}.app-header{color:#fff;background:#14532d;padding:16px 20px}.app-header__inner{justify-content:space-between;align-items:center;gap:16px;width:min(100%,680px);margin:0 auto;display:flex}.app-brand{letter-spacing:.01em;font-size:15px;font-weight:750}.session-label{white-space:nowrap;background:#ffffff24;border-radius:999px;padding:7px 11px;font-size:14px}.page{width:min(100%,680px);margin:0 auto;padding:24px 18px 48px}.page--wide{width:min(100%,1180px)}.page-title{letter-spacing:-.025em;margin:0 0 8px;font-size:clamp(25px,7vw,34px);line-height:1.18}.page-subtitle{color:#526158;margin:0 0 22px;line-height:1.55}.eyebrow{color:#166534;letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px;font-size:13px;font-weight:800}.progress{background:#dbe5df;height:5px}.progress__bar{background:#16a34a;height:100%;transition:width .2s}.card{background:#fff;border:1px solid #dae4de;border-radius:14px;margin-bottom:16px;padding:18px;box-shadow:0 2px 12px #14532d0d}.card h2,.card h3{margin-top:0}.card--success{background:#f0fdf4;border-color:#86c99f}.card--warning{background:#fffbeb;border-color:#e7c66b}.stack{gap:16px;display:grid}.actions{flex-direction:column;gap:10px;margin-top:24px;display:flex}.button{color:#fff;cursor:pointer;background:#166534;border:0;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:50px;padding:12px 18px;font-weight:750;text-decoration:none;display:inline-flex}.button:hover{background:#14532d}.button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #86efac}.button:disabled{opacity:.58;cursor:not-allowed}.button--secondary{color:#166534;background:#fff;border:1px solid #86a693}.button--secondary:hover{background:#f0fdf4}.button--danger{background:#b42318}.button--small{min-height:38px;padding:8px 12px;font-size:14px}.field{gap:7px;margin-bottom:17px;display:grid}.field label{font-weight:700}.field input,.field select,.field textarea{color:#17211b;background:#fff;border:1px solid #aebbb3;border-radius:9px;width:100%;min-height:48px;padding:11px 12px}.field textarea{resize:vertical;min-height:96px}.field__hint{color:#65736a;font-size:13px}.error{color:#b42318;margin:4px 0 0;font-size:14px}.alert{color:#8a1c13;background:#fff1f0;border:1px solid #f0b6b1;border-radius:10px;margin:14px 0;padding:12px 14px}.muted{color:#65736a}.data-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.data-list li{overflow-wrap:anywhere;border-bottom:1px solid #edf1ee;padding-bottom:10px}.data-list li:last-child{border-bottom:0;padding-bottom:0}.data-label{color:#65736a;margin-bottom:3px;font-size:13px;display:block}.requirements{padding-left:22px;line-height:1.55}.requirements li{margin-bottom:12px}.spinner{border:4px solid #cfe2d5;border-top-color:#166534;border-radius:50%;width:34px;height:34px;margin:12px auto;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.admin-header{color:#fff;background:#17211b;padding:14px 18px}.admin-header__inner{width:min(100%,1180px);margin:0 auto}.admin-nav{gap:7px;padding:10px 0 2px;display:flex;overflow-x:auto}.admin-nav a{color:#d6e4db;white-space:nowrap;border-radius:7px;padding:7px 9px;font-size:13px;text-decoration:none}.admin-nav a.router-link-active{color:#fff;background:#355243}.grid{gap:14px;display:grid}.grid--stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.stat{font-size:28px;font-weight:800}.table-wrap{width:100%;overflow-x:auto}table{border-collapse:collapse;background:#fff;width:100%;font-size:14px}th,td{text-align:left;vertical-align:top;white-space:nowrap;border-bottom:1px solid #e4e9e6;padding:10px 11px}th{color:#526158;background:#f7f9f8}.badge{background:#e5eee8;border-radius:999px;padding:4px 8px;font-size:12px;font-weight:750;display:inline-block}.code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:13px}.split{gap:16px;display:grid}@media (width>=640px){.actions{flex-direction:row}.actions .button{flex:1}.split{grid-template-columns:1fr 1fr}}
