:root{--page:#f4f5f7;--surface:#fff;--ink:#0b0b0b;--ink-2:#52514e;--muted:#898781;--hairline:#e4e3dd;--border:#0b0b0b14;--accent:#2a78d6;--accent-dark:#256abf;--accent-deep:#1c5cab;--accent-soft:#e7f0fb;--good:#0ca30c;--good-text:#006300;--warn:#fab219;--bad:#d03b3b;--good-bg:#e9f5e9;--warn-bg:#fdf3da;--bad-bg:#fae9e9;--side-bg:#1c2436;--side-bg-2:#141b2a;--side-ink:#c9d2df;--side-muted:#8b96a8;--r-sm:8px;--r-md:12px;--r-lg:16px;--shadow-sm:0 1px 2px #1018280f, 0 1px 3px #10182814;--shadow-md:0 4px 10px #10182814, 0 2px 4px #1018280d;--shadow-lg:0 12px 32px #10182824, 0 4px 10px #10182814;--ease:cubic-bezier(.2, .8, .3, 1)}*{box-sizing:border-box}html,body{color:var(--ink);margin:0;padding:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:15px;line-height:1.55}body{background:var(--page)}body:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(1100px 600px at 88% -10%,#2a78d61a,#0000 60%),radial-gradient(900px 550px at -12% 25%,#0ca30c0f,#0000 55%),radial-gradient(1000px 650px at 108% 95%,#eb68340f,#0000 60%);position:fixed;inset:0}h1{letter-spacing:-.02em;margin:0 0 4px;font-size:26px;font-weight:800}h2{letter-spacing:-.01em;margin:0 0 12px;font-size:17px;font-weight:700}h3{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin:18px 0 8px;font-size:12.5px;font-weight:700}a{color:var(--accent-dark)}::selection{background:#2a78d638}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.muted{color:var(--muted)}.empty{color:var(--muted);margin:8px 0;font-style:italic}.loading{color:var(--muted);text-align:center;padding:48px;animation:1.4s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.45}}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.camp-list-page,.wizard-page,.shell-loading{animation:fadeUp .35s var(--ease) both}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);margin-bottom:18px;padding:22px 24px}.panel-title{margin-bottom:14px}.panel-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px;display:flex}.panel-head .panel-title{margin-bottom:0}.panel-head-actions{align-items:center;gap:8px;display:flex}.read-list{margin:0;padding:0;list-style:none}.read-row{border-bottom:1px solid var(--hairline);border-radius:8px;flex-wrap:wrap;align-items:center;gap:16px;padding:12px 8px;transition:background .12s;display:flex}.read-row:hover{background:#2a78d609}.read-row:last-child{border-bottom:none}.read-main{flex-direction:column;flex:200px;min-width:0;display:flex}.read-name{font-weight:700}.read-sub{color:var(--ink-2);font-size:13px}.read-coords{flex-direction:column;flex:180px;min-width:0;font-size:13.5px;display:flex}.read-coords span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.read-chips{flex-wrap:wrap;flex:0 auto;gap:5px;display:flex}.read-pins{flex:none}.read-slot{color:var(--ink-2);white-space:nowrap;flex:0 auto;font-size:13.5px}.read-status{flex:none}.badge{color:var(--ink-2);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:4px 11px;font-size:12px;font-weight:700;display:inline-flex}.badge-dot{border-radius:50%;flex:none;width:8px;height:8px}.badge-good{background:var(--good-bg)}.badge-good .badge-dot{background:var(--good);box-shadow:0 0 0 3px #0ca30c26}.badge-warn{background:var(--warn-bg)}.badge-warn .badge-dot{background:var(--warn);box-shadow:0 0 0 3px #fab2192e}.badge-bad{background:var(--bad-bg)}.badge-bad .badge-dot{background:var(--bad);box-shadow:0 0 0 3px #d03b3b24}.chip{background:var(--page);border:1px solid var(--hairline);color:var(--ink-2);white-space:nowrap;border-radius:999px;padding:2px 9px;font-size:11px}.btn{cursor:pointer;transition:transform .16s var(--ease), box-shadow .16s var(--ease), background-color .16s var(--ease), border-color .16s var(--ease);will-change:transform;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:9px 16px;font-family:inherit;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex;position:relative}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)scale(.97)}.btn-sm{border-radius:8px;padding:5px 11px;font-size:12.5px}.btn-primary{background:linear-gradient(160deg, #3987e5, var(--accent-deep));color:#fff;overflow:hidden;box-shadow:0 2px 8px #2a78d659,inset 0 1px #ffffff2e}.btn-primary:hover{box-shadow:0 6px 16px #2a78d66b,inset 0 1px #ffffff2e}.btn-primary:after{content:"";transition:transform .55s var(--ease);pointer-events:none;background:linear-gradient(105deg,#0000 35%,#ffffff47 50%,#0000 65%);position:absolute;inset:0;transform:translate(-110%)}.btn-primary:hover:after{transform:translate(110%)}.btn-primary:disabled{background:var(--hairline);color:var(--muted);cursor:not-allowed;box-shadow:none;transform:none}.btn-primary:disabled:after{display:none}.btn-secondary{background:var(--surface);color:var(--ink);border-color:var(--border);box-shadow:var(--shadow-sm)}.btn-secondary:hover{box-shadow:var(--shadow-md);background:#fbfbfa;border-color:#2a78d659}.btn-danger-ghost{color:var(--bad);background:0 0;border-color:#0000}.btn-done{background:linear-gradient(160deg, #21bd21, var(--good));color:#fff;padding:10px 20px;font-size:15px;font-weight:700;box-shadow:0 2px 10px #0ca30c61,inset 0 1px #fff3}.btn-done:hover{box-shadow:0 6px 18px #0ca30c73,inset 0 1px #fff3}.btn-danger-ghost:hover{background:var(--bad-bg)}input,select,textarea{border:1.5px solid var(--hairline);color:var(--ink);background:#fff;border-radius:10px;padding:9px 12px;font-family:inherit;font-size:14px;transition:border-color .15s,box-shadow .15s}input:hover,select:hover,textarea:hover{border-color:#cfcec6}input:focus,select:focus,textarea:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #2a78d629}.inline-form{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.inline-form input{flex:140px;min-width:120px}.inline-form select{flex:0 auto}.field{flex-direction:column;gap:5px;margin-bottom:14px;display:flex}.field-label{color:var(--ink-2);font-size:13px;font-weight:600}.field-row{gap:16px;display:flex}.field-row .field{flex:1}.form-error{color:var(--bad);font-size:13px;font-weight:600}.file-btn{position:relative;overflow:hidden}.file-input-hidden{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.file-btn.is-uploading{cursor:progress;pointer-events:none}.file-btn .file-btn-label{z-index:2;align-items:center;gap:7px;display:inline-flex;position:relative}.file-progress{z-index:1;transition:width .2s var(--ease);pointer-events:none;background:#ffffff47;position:absolute;top:0;bottom:0;left:0}.btn-secondary .file-progress{background:#2a78d629}.file-progress.indeterminate{animation:1.1s ease-in-out infinite sweep;width:40%!important}@keyframes sweep{0%{left:-40%}to{left:100%}}.spinner-ring{border:2px solid #ffffff73;border-top-color:#fff;border-radius:50%;flex:none;width:13px;height:13px;animation:.7s linear infinite spin}.btn-secondary .spinner-ring{border-color:#2a78d64d;border-top-color:var(--accent)}@keyframes spin{to{transform:rotate(360deg)}}.combo{width:100%;position:relative}.combo>input{width:100%}@keyframes dropIn{0%{opacity:0;transform:translateY(-6px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.combo-dropdown{z-index:30;border:1px solid var(--hairline);border-radius:var(--r-md);box-shadow:var(--shadow-lg);max-height:240px;animation:dropIn .16s var(--ease) both;background:#fff;padding:5px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.combo-option{cursor:pointer;border-radius:8px;padding:8px 11px;font-size:14px;transition:background .1s}.combo-option:hover{background:var(--accent-soft)}.tag-combo{border:1.5px solid var(--hairline);background:#fff;border-radius:10px;flex-wrap:wrap;align-items:center;gap:6px;width:100%;min-height:40px;padding:5px;transition:border-color .15s,box-shadow .15s;display:flex}.tag-combo:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #2a78d629}.tag-chip{color:var(--accent-deep);white-space:nowrap;animation:dropIn .18s var(--ease) both;background:linear-gradient(160deg,#eaf2fc,#dcebfa);border:1px solid #2a78d638;border-radius:999px;flex:none;align-items:center;gap:4px;padding:3px 4px 3px 11px;font-size:13px;font-weight:600;display:inline-flex}.tag-chip-remove{color:inherit;cursor:pointer;background:0 0;border:none;border-radius:50%;padding:2px 6px;font-size:15px;line-height:1;transition:background .12s}.tag-chip-remove:hover{background:#1c5cab26}.tag-combo-input{flex:100px;min-width:100px;position:relative}.tag-combo-input input{border:none;width:100%;padding:4px 6px}.tag-combo-input input:focus{box-shadow:none;outline:none}.lang-picker{background:var(--surface);cursor:pointer;border-radius:8px;padding:6px 9px;font-size:13px}.header-actions{align-items:center;gap:10px;display:flex}.camp-list-page,.wizard-page{max-width:1200px;margin:0 auto;padding:40px 28px}.camp-list-header{justify-content:space-between;align-items:flex-start;margin-bottom:28px;display:flex}.camp-list-header h1{font-size:32px}.camp-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;display:grid}.camp-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);transition:transform .18s var(--ease), box-shadow .18s var(--ease);flex-direction:column;display:flex;overflow:hidden}.camp-card:before{content:"";background:linear-gradient(90deg, var(--accent), #6db3f2 55%, #6db3f240);height:4px}.camp-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.camp-card-main{color:var(--ink);flex:1;padding:18px 20px;text-decoration:none;display:block}.camp-card-main h3{text-transform:none;letter-spacing:-.01em;color:var(--ink);margin:0 0 6px;font-size:17px;font-weight:700}.camp-card-main p{color:var(--ink-2);margin:2px 0;font-size:13.5px}.camp-card>.btn{align-self:flex-end;margin:0 10px 10px}.welcome{text-align:center;padding:64px 32px}.welcome h2{font-size:24px}.welcome p{max-width:480px;color:var(--ink-2);margin:10px auto 24px}.back-link{transition:transform .15s var(--ease);margin-bottom:14px;font-size:14px;font-weight:600;text-decoration:none;display:inline-block}.back-link:hover{transform:translate(-3px)}.wizard{padding:28px 32px}.wizard h1{margin-bottom:20px}.wizard-steps{border-bottom:1px solid var(--hairline);flex-wrap:wrap;gap:6px;margin:0 0 26px;padding:0 0 18px;list-style:none;display:flex}.wizard-steps li{color:var(--muted);border-radius:999px;align-items:center;gap:8px;padding:7px 15px;font-size:13px;transition:background .2s,color .2s;display:flex}.wizard-steps li.active{background:var(--accent-soft);color:var(--accent-deep);font-weight:700;box-shadow:inset 0 0 0 1px #2a78d640}.wizard-steps li.done{color:var(--good-text)}.step-num{background:var(--hairline);width:22px;height:22px;color:var(--ink-2);transition:background .2s ease, color .2s ease, transform .2s var(--ease);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:11px;font-weight:800;display:inline-flex}.wizard-steps li.active .step-num{background:linear-gradient(160deg, #3987e5, var(--accent-deep));color:#fff;transform:scale(1.1);box-shadow:0 2px 6px #2a78d666}.wizard-steps li.done .step-num{background:var(--good);color:#fff}.wizard-body{max-width:640px;min-height:220px;animation:fadeUp .3s var(--ease) both;margin:0 auto}.wizard-body-wide{max-width:none;margin:0}.wizard-footer{border-top:1px solid var(--hairline);margin-top:26px;padding-top:18px;display:flex}.wizard-footer .spacer{flex:1}.added-list{margin:12px 0 0;padding:0;list-style:none}.added-list li{border-bottom:1px solid var(--hairline);justify-content:space-between;align-items:center;padding:9px 4px;font-size:14px;display:flex}.recap{margin:8px 0 16px}.recap-row{border-bottom:1px solid var(--hairline);justify-content:space-between;padding:9px 4px;font-size:14px;display:flex}.shell{min-height:100vh;display:flex}.shell-loading{text-align:center;padding:64px}.topbar,.menu-backdrop{display:none}.sidebar{background:linear-gradient(175deg, var(--side-bg), var(--side-bg-2));width:250px;color:var(--side-ink);flex-direction:column;flex:none;height:100vh;padding:20px 12px;display:flex;position:sticky;top:0;box-shadow:4px 0 18px #10182829}.sidebar-camp{border-bottom:1px solid #ffffff17;margin-bottom:14px;padding:4px 14px 18px}.sidebar-camp-name{color:#fff;letter-spacing:-.01em;font-size:16px;font-weight:800;display:block}.sidebar-camp-dates{color:var(--side-muted);margin-top:3px;font-size:12px;display:block}.sidebar-nav{flex-direction:column;flex:1;gap:5px;display:flex}.sidebar .nav-item{color:var(--side-ink);transition:background .15s ease, color .15s ease, border-color .15s ease, transform .15s var(--ease);background:#ffffff0b;border:1px solid #ffffff0f;border-radius:11px;align-items:center;gap:11px;padding:8px 12px;font-size:14px;font-weight:500;text-decoration:none;display:flex;position:relative}.sidebar .nav-item:hover{color:#fff;background:#ffffff1a;border-color:#ffffff24;transform:translate(3px)}.sidebar .nav-item.active{color:#fff;background:linear-gradient(90deg,#3987e552,#3987e51f);border-color:#5ea3ef66;font-weight:700}.sidebar .nav-item.active:before{content:"";background:#5ea3ef;border-radius:999px;width:3px;position:absolute;top:20%;bottom:20%;left:0;box-shadow:0 0 8px #5ea3efcc}.nav-icon{background:#ffffff14;border-radius:8px;flex:none;justify-content:center;align-items:center;width:30px;height:30px;font-size:15px;transition:background .15s;display:inline-flex}.sidebar .nav-item:hover .nav-icon{background:#ffffff24}.sidebar .nav-item.active .nav-icon{background:#5ea3ef4d}.nav-label{flex:1}.nav-pin{border-radius:50%;flex:none;width:9px;height:9px}.nav-pin.pin-good{background:var(--good);box-shadow:0 0 6px #0ca30cb3}.nav-pin.pin-warn{background:var(--warn);box-shadow:0 0 6px #fab219b3}.nav-pin.pin-bad{background:#e05252;box-shadow:0 0 6px #e05252b3}.sidebar-footer{border-top:1px solid #ffffff17;padding-top:12px}.sidebar-footer .lang-picker{width:calc(100% - 28px);color:var(--side-ink);background:#ffffff14;border-color:#ffffff29;margin:10px 14px 0}.sidebar-footer .lang-picker option{color:var(--ink)}.content{min-width:0;max-width:1500px;animation:fadeUp .35s var(--ease) both;flex:1;padding:32px 44px}.dash-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.dash-header h1{font-size:28px}.dash-meta{color:var(--ink-2);flex-wrap:wrap;gap:6px 0;margin:6px 0 0;font-size:14px;display:flex}.dash-meta span+span:before{content:"·";color:var(--muted);margin:0 9px}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;display:grid}.kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);color:var(--ink);box-shadow:var(--shadow-sm);transition:transform .18s var(--ease), box-shadow .18s var(--ease);padding:18px 20px;text-decoration:none;display:block;position:relative;overflow:hidden}.kpi:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.kpi:before{content:"";background:var(--hairline);height:4px;position:absolute;top:0;left:0;right:0}.kpi:has(.badge-good):before{background:linear-gradient(90deg, var(--good), #0ca30c40)}.kpi:has(.badge-warn):before{background:linear-gradient(90deg, var(--warn), #fab21940)}.kpi:has(.badge-bad):before{background:linear-gradient(90deg, var(--bad), #d03b3b40)}.kpi-top{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.kpi-title{text-transform:uppercase;letter-spacing:.07em;color:var(--ink-2);font-size:12.5px;font-weight:800}.kpi-value{letter-spacing:-.02em;font-size:36px;font-weight:800;line-height:1.15}.kpi-sub{color:var(--ink-2);margin-top:7px;font-size:13px}.dash-header-right{flex-direction:column;align-items:flex-end;gap:10px;display:flex}.countdown{border-radius:var(--r-md);background:linear-gradient(160deg, #3987e5, var(--accent-deep));color:#fff;flex-direction:column;align-items:center;min-width:120px;padding:12px 22px;display:flex;box-shadow:0 4px 14px #2a78d659}.countdown-value{letter-spacing:-.02em;font-size:30px;font-weight:800;line-height:1.1}.countdown-label{opacity:.85;text-align:center;margin-top:2px;font-size:11.5px}.countdown-running{background:linear-gradient(160deg,#12b012,#0a7d0a);box-shadow:0 4px 14px #0ca30c59}.countdown-done{background:linear-gradient(160deg,#6c7687,#4d5666);box-shadow:0 4px 14px #4d56664d}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin-bottom:18px;display:grid}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);color:var(--ink);box-shadow:var(--shadow-sm);transition:transform .16s var(--ease), box-shadow .16s var(--ease);flex-direction:column;align-items:center;gap:2px;padding:18px 12px 14px;text-decoration:none;display:flex;position:relative}.stat:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.stat-pin{border-radius:50%;width:11px;height:11px;position:absolute;top:12px;right:12px}.stat-pin.pin-good{background:var(--good);box-shadow:0 0 0 3px #0ca30c29}.stat-pin.pin-warn{background:var(--warn);box-shadow:0 0 0 3px #fab2192e}.stat-pin.pin-bad{background:var(--bad);box-shadow:0 0 0 3px #d03b3b24}.stat-value{letter-spacing:-.02em;font-size:30px;font-weight:800}.stat-label{color:var(--ink-2);text-align:center;font-size:12.5px;font-weight:600}.staffing-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:14px;display:grid}.staffing-cell{border:1px solid var(--border);border-radius:var(--r-md);background:var(--page);flex-direction:column;align-items:center;gap:2px;padding:14px 10px;display:flex}.staffing-cell-accent{background:var(--accent-soft);border-color:#2a78d64d}.staffing-value{letter-spacing:-.02em;font-size:28px;font-weight:800}.staffing-label{color:var(--ink-2);text-align:center;font-size:12.5px;font-weight:600}.staffing-basis{margin:0 0 6px;font-size:13px}.staffing-disclaimer{color:var(--muted);margin:0;font-size:12px;font-style:italic;line-height:1.45}.alert-list{flex-direction:column;gap:8px;display:flex}.alert-row{border-radius:var(--r-md);border:1px solid var(--border);background:var(--surface);color:var(--ink);transition:transform .15s var(--ease), box-shadow .15s var(--ease), border-color .15s ease;align-items:center;gap:14px;padding:12px 16px;text-decoration:none;display:flex}.alert-row:hover{box-shadow:var(--shadow-md);transform:translate(3px)}.alert-urgent{border-left:4px solid var(--bad);background:linear-gradient(90deg,#d03b3b0d,#0000 40%)}.alert-soon{border-left:4px solid var(--warn);background:linear-gradient(90deg,#fab2190f,#0000 40%)}.alert-later{border-left:4px solid #9ec5f4}.alert-row .badge{flex:none;justify-content:center;min-width:86px}.alert-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.alert-label{font-size:14.5px;font-weight:600}.alert-detail{text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.alert-arrow{color:var(--muted);transition:transform .15s var(--ease);font-size:16px}.alert-row:hover .alert-arrow{color:var(--accent-dark);transform:translate(3px)}.badge-later{background:#e8f0fa}.badge-later .badge-dot{background:#9ec5f4}.all-ready{border-radius:var(--r-md);background:var(--good-bg);color:var(--good-text);align-items:center;gap:12px;padding:18px;font-weight:600;display:flex}.all-ready-icon{font-size:24px}.progress-track{background:var(--hairline);border-radius:999px;height:8px;margin-top:12px;overflow:hidden}.progress-fill{height:100%;transition:width .5s var(--ease);border-radius:999px}.fill-good{background:linear-gradient(90deg,#0ca30c,#3fbf3f)}.fill-warn{background:linear-gradient(90deg, #e89c00, var(--warn))}.fill-bad{background:linear-gradient(90deg, var(--bad), #e46464)}.page-header{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:14px;display:flex}.page-header h1{margin:0}.count-chip{border:1px solid var(--hairline);background:var(--surface);border-radius:999px;align-items:baseline;gap:7px;padding:5px 12px;display:inline-flex}.count-chip-value{letter-spacing:-.01em;font-size:17px;font-weight:800}.count-chip-label{color:var(--muted);font-size:12.5px;font-weight:600}.count-good{background:var(--good-bg);border-color:#0ca30c4d}.count-good .count-chip-value{color:var(--good-text)}.count-warn{background:var(--warn-bg);border-color:#d68d2a52}.count-warn .count-chip-value{color:#8a5b00}.count-bad{background:var(--bad-bg);border-color:#d03b3b4d}.count-bad .count-chip-value{color:var(--bad)}.data-table{border-collapse:collapse;width:100%}.data-table th{text-align:left;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);border-bottom:1px solid var(--hairline);padding:8px 10px;font-size:11.5px;font-weight:700}.data-table td{border-bottom:1px solid var(--hairline);vertical-align:middle;padding:10px;font-size:14px}.data-table tbody tr{transition:background .12s}.data-table tbody tr:hover{background:#2a78d609}.data-table td .badge{margin-left:8px}.data-table input,.data-table select{width:100%;max-width:180px;margin:1px 0}.row-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.status-select{font-weight:600}.sel-good{background:var(--good-bg);border-color:var(--good)}.sel-warn{background:var(--warn-bg);border-color:var(--warn)}.sel-bad{background:var(--bad-bg);border-color:var(--bad)}.editable-table-wrap{overflow-x:auto}.editable-table td{vertical-align:top;padding:8px}.editable-table input,.editable-table select{width:100%;min-width:96px;max-width:none}.editable-table td.actions-cell{vertical-align:middle;white-space:nowrap;width:1%}.editable-table td.pins-cell{vertical-align:middle}.editable-table .row-actions{flex-wrap:nowrap}.time-range{white-space:nowrap;align-items:center;gap:6px;display:flex}.time-range input{flex:none;width:94px}.time-range-sep{color:var(--muted)}.row-remove{border-radius:50%;justify-content:center;width:36px;height:36px;padding:0;font-size:22px;line-height:1}.row-remove:hover{transform:translateY(-1px)rotate(90deg)}.btn-details{padding:10px 18px;font-size:15px;font-weight:700}.add-row-btn{border-radius:50%;justify-content:center;align-self:flex-start;width:42px;height:42px;padding:0;font-size:20px;font-weight:800}.add-row-btn:hover{border-color:var(--accent);color:var(--accent-dark);transform:translateY(-2px)scale(1.06)}.drag-cell{width:1%;vertical-align:middle!important;padding-right:0!important}.drag-handle{cursor:grab;width:26px;height:30px;color:var(--muted);-webkit-user-select:none;user-select:none;border-radius:6px;justify-content:center;align-items:center;font-size:15px;line-height:1;transition:background .12s,color .12s;display:inline-flex}.drag-handle:hover{background:var(--page);color:var(--ink-2)}.drag-handle:active{cursor:grabbing}.drag-handle-off{opacity:.25;cursor:default}.drag-handle-off:hover{color:var(--muted);background:0 0}.drag-over>td,.drag-over{box-shadow:inset 0 3px 0 -1px var(--accent)}.print-cols{flex-wrap:wrap;gap:8px;margin:0 0 10px;padding:0;list-style:none;display:flex}.print-cols li{border:1px solid var(--hairline);background:var(--surface);border-radius:9px;align-items:center;gap:4px;padding:4px 6px 4px 2px;display:inline-flex}.print-col-label{white-space:nowrap;font-size:14px;font-weight:600}.print-cols .btn{border-radius:8px;justify-content:center;width:30px;height:30px;padding:0;font-size:24px;line-height:1}.print-cols .drag-over{box-shadow:inset 3px 0 0 -1px var(--accent)}.print-available{flex-wrap:wrap;gap:8px;display:flex}.print-hint{margin:0 0 8px;font-size:12.5px}.print-area{background:#fff}.print-header h1{margin:0 0 2px;font-size:20px}.print-header p{color:var(--ink-2);margin:0 0 14px;font-size:13px}.print-table{border-collapse:collapse;width:100%;font-size:13px}.print-table th,.print-table td{text-align:left;vertical-align:top;border:1px solid #c9c8c2;padding:6px 8px}.print-table th{background:#f1f0ec;font-weight:700}@media print{html,body{height:auto!important}body:before{display:none!important}.shell{min-height:0!important;display:block!important}.sidebar{display:none!important}.content{max-width:none!important;padding:0!important;animation:none!important;display:block!important}.page>:not(.modal-overlay){display:none!important}.modal-overlay{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;z-index:auto!important;background:0 0!important;padding:0!important;animation:none!important;display:block!important;position:static!important}.modal-panel{max-width:none!important;max-height:none!important;box-shadow:none!important;border-radius:0!important;animation:none!important;overflow:visible!important}.modal-header{display:none!important}.modal-body{padding:0!important}.modal-body>:not(.print-area){display:none!important}.print-area{-webkit-print-color-adjust:exact;print-color-adjust:exact;width:100%;position:static!important}.print-table{font-size:11pt}.print-table tr{break-inside:avoid}.print-table thead{display:table-header-group}@page{margin:12mm}}.req-docs{flex-direction:column;display:flex}.req-doc-row{border-bottom:1px solid var(--hairline);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:11px 0;display:flex}.req-doc-row:last-child{border-bottom:none}.req-doc-info{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.req-doc-label{font-weight:600}.req-doc-files{flex-direction:column;align-items:flex-end;gap:4px;display:flex}.doc-file{align-items:center;gap:10px;font-size:14px;display:flex}.doc-group{margin-top:8px}.doc-list{margin:4px 0;padding:0;list-style:none}.doc-list li{border-bottom:1px solid var(--hairline);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:9px 0;font-size:14px;display:flex}.doc-date{margin-left:10px;font-size:12px}.doc-size{color:var(--muted);white-space:nowrap;margin-left:8px;font-size:11.5px}.doc-row{border-bottom:1px solid var(--hairline);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:9px 0;display:flex}.doc-row:last-child{border-bottom:none}.doc-row-main{flex-direction:column;flex:320px;gap:4px;min-width:0;display:flex}.doc-name-input{background:0 0;border-color:#0000;width:100%;max-width:460px;padding:4px 8px;font-weight:600}.doc-name-input:hover{border-color:var(--hairline);background:#fff}.doc-name-input:focus{background:#fff}.doc-name-line{flex-wrap:wrap;align-items:center;gap:10px;padding:4px 8px;display:flex}.doc-name-text{word-break:break-word;font-weight:600}.doc-row-meta{flex-wrap:wrap;align-items:center;gap:8px;padding-left:8px;display:flex}.doc-cat-select{border-radius:8px;padding:4px 8px;font-size:12.5px}.chip-origin{color:var(--accent-deep);background:#eaf2fc;border-color:#2a78d640}.chip-required{background:var(--warn-bg);color:#8a5b00;border-color:#fab21966}.doc-pins{flex-wrap:wrap;align-items:center;gap:7px;height:100%;display:flex}.doc-pin{cursor:default;width:13px;height:13px;transition:transform .15s var(--ease);border-radius:50%;flex:none}.doc-pin:hover{transform:scale(1.35)}.pin-good{background:var(--good);box-shadow:0 0 0 3px #0ca30c29}.pin-bad{background:var(--bad);box-shadow:0 0 0 3px #d03b3b24}@keyframes overlayIn{0%{opacity:0}to{opacity:1}}@keyframes modalIn{0%{opacity:0;transform:translateY(14px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:100;background:#0d121c8c;justify-content:center;align-items:center;padding:24px;animation:.2s both overlayIn;display:flex;position:fixed;inset:0}.modal-panel{background:var(--surface);border-radius:var(--r-lg);width:100%;max-width:740px;max-height:90vh;animation:modalIn .25s var(--ease) both;overflow-y:auto;box-shadow:0 24px 64px #0d121c59}.modal-header{border-bottom:1px solid var(--hairline);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:1;background:#ffffffeb;justify-content:space-between;align-items:center;gap:16px;padding:18px 26px;display:flex;position:sticky;top:0}.modal-header h2{margin:0;font-size:19px}.modal-body{padding:22px 26px 30px}.modal-body .field-row{margin-bottom:4px}.modal-actions{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.page-header-action{margin-left:auto}.doc-header-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.btn-download-all{padding:11px 20px;font-size:15px;font-weight:700}.org-options{flex-direction:column;gap:10px;margin-bottom:8px;display:flex}.org-option{border:1px solid var(--hairline);cursor:pointer;transition:border-color .14s var(--ease), background .14s var(--ease);border-radius:12px;align-items:flex-start;gap:11px;padding:12px 14px;display:flex}.org-option:hover{border-color:#2a78d666}.org-option.org-on{border-color:var(--accent);background:#2a78d60f}.org-option input{accent-color:var(--accent);width:16px;height:16px;margin-top:3px}.org-option-title{font-size:14.5px;font-weight:700;display:block}.org-option-desc{margin-top:2px;font-size:12.5px;display:block}.check-line{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:9px;margin:2px 0 14px;font-size:14.5px;font-weight:600;display:inline-flex}.check-line input[type=checkbox]{cursor:pointer;width:17px;height:17px;accent-color:var(--accent)}.doc-type-select{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--ink-2);border-radius:7px;max-width:160px;padding:3px 6px;font-size:12px}.req-list{margin:0 0 14px;padding:0;list-style:none}.req-list-row{border-bottom:1px solid var(--hairline);align-items:center;gap:10px;padding:9px 4px 9px 12px;display:flex}.req-list-row:last-child{border-bottom:0}.req-list-label{flex:1;font-size:14.5px;font-weight:600}.req-add-input{flex:240px;min-width:180px}.child-comment{resize:vertical;width:100%;min-height:84px;padding:11px;font-family:inherit;font-size:14px}.modal-panel-wide{max-width:1000px}.preview-body{justify-content:center;align-items:flex-start;display:flex}.preview-img{max-width:100%;max-height:75vh;box-shadow:var(--shadow-md);border-radius:10px}.preview-frame{background:var(--page);border:none;border-radius:10px;width:100%;height:75vh}.checklist-progress{align-items:baseline;gap:12px;display:flex}.check-list{margin:0;padding:0;list-style:none}.check-row{border-bottom:1px solid var(--hairline);border-radius:8px;align-items:center;gap:14px;padding:13px 6px;transition:background .15s;display:flex}.check-row:hover{background:#2a78d609}.check-row:last-child{border-bottom:none}.check-label{flex:1;font-size:15px;transition:color .2s}.check-row.done .check-label{color:var(--muted);text-decoration:line-through}.check-state{font-size:12px;font-weight:700}.check-row.done .check-state{color:var(--good-text)}.switch{flex:none;width:42px;height:24px;display:inline-block;position:relative}.switch input{opacity:0;width:0;height:0}.slider{cursor:pointer;background:#d6d5cd;border-radius:999px;transition:background .2s;position:absolute;inset:0}.slider:before{content:"";width:18px;height:18px;transition:transform .2s var(--ease);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0b0b0b4d}.switch input:checked+.slider{background:var(--good)}.switch input:checked+.slider:before{transform:translate(18px)}.switch input:focus-visible+.slider{outline:2px solid var(--accent);outline-offset:2px}.contact-list{margin:0;padding:0;list-style:none}.contact-row{border-bottom:1px solid var(--hairline);flex-wrap:wrap;align-items:center;gap:16px;padding:11px 6px;transition:background .12s;display:flex}.contact-row:hover{background:#2a78d609}.contact-row:last-child{border-bottom:none}.contact-main{flex-direction:column;flex:180px;display:flex}.contact-name{font-weight:700}.contact-coords{flex-direction:column;flex:180px;font-size:14px;display:flex}.useful-numbers{margin-top:14px;font-size:13px}.timeline{padding-left:8px;position:relative}.tl-item{align-items:center;gap:14px;padding:12px 0;display:flex;position:relative}.tl-item:before{content:"";background:linear-gradient(180deg, var(--hairline), #d8d7d0);width:2px;position:absolute;top:0;bottom:0;left:130px}.tl-item:first-child:before{top:50%}.tl-item:last-child:before{bottom:50%}.tl-date{text-align:right;width:110px;color:var(--ink-2);flex-direction:column;flex:none;gap:2px;font-size:13px;display:flex}.tl-time{color:var(--muted);font-size:12px}.tl-dot{background:var(--muted);border:2.5px solid var(--surface);z-index:1;border-radius:50%;flex:none;width:13px;height:13px;box-shadow:0 0 0 2px #89878140}.tl-start .tl-dot,.tl-end .tl-dot{background:var(--accent);width:15px;height:15px;box-shadow:0 0 0 3px #2a78d640}.tl-provider .tl-dot{background:#6a5ae0;box-shadow:0 0 0 3px #6a5ae038}.timeline-note{margin:12px 0 0;font-size:13px}.tl-start .tl-label,.tl-end .tl-label{font-weight:800}.tl-label{flex-wrap:wrap;align-items:center;gap:10px;font-size:14px;display:flex}.edit-camp{background:linear-gradient(#f4f8fd,#eef4fb);border-color:#2a78d633}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=899px){.shell{display:block}.topbar{z-index:60;background:linear-gradient(175deg, var(--side-bg), var(--side-bg-2));align-items:center;gap:12px;height:54px;padding:0 12px;display:flex;position:sticky;top:0;box-shadow:0 2px 10px #10182833}.topbar-toggle{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff29;border-radius:10px;flex:none;justify-content:center;align-items:center;width:40px;height:40px;font-size:19px;line-height:1;display:inline-flex}.topbar-title{color:#fff;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:800;overflow:hidden}.sidebar{z-index:55;opacity:0;visibility:hidden;width:auto;height:auto;max-height:calc(100vh - 54px);transition:transform .2s var(--ease), opacity .2s var(--ease), visibility .2s;border-radius:0 0 16px 16px;padding:12px;position:fixed;top:54px;left:0;right:0;overflow-y:auto;transform:translateY(-12px);box-shadow:0 18px 34px #10182857}.sidebar--open{opacity:1;visibility:visible;transform:translateY(0)}.sidebar-camp{display:none}.menu-backdrop{z-index:50;background:#0d121c6b;animation:.2s both overlayIn;display:block;position:fixed;inset:54px 0 0}.content{max-width:none;padding:16px}.field-row{flex-direction:column;gap:0}.tl-item:before{display:none}.camp-list-page,.wizard-page{padding:22px 16px}.dash-header{flex-direction:column;align-items:stretch}.dash-header-right{flex-direction:row;justify-content:space-between;align-items:center;gap:12px}}@media (width<=560px){.content{padding:12px}.panel{padding:16px 15px}.modal-overlay{padding:10px}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}h1{font-size:22px}.dash-header h1{font-size:24px}.page-header{gap:8px}}.segmented{border:1px solid var(--border);background:var(--surface-2,#f2f2f0);border-radius:10px;gap:2px;padding:3px;display:inline-flex}.seg-btn{font:inherit;color:var(--muted);cursor:pointer;transition:background-color .16s var(--ease), color .16s var(--ease);background:0 0;border:0;border-radius:8px;padding:5px 12px;font-size:13px;font-weight:600}.seg-btn:hover{color:var(--ink)}.seg-on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm)}.todo-form{flex-wrap:wrap;align-items:center}.todo-form .todo-form-label{flex:240px;min-width:180px}.todo-form input[type=date]{flex:none;width:165px}.todo-form .combo{flex:none;width:170px}.prio-picker{gap:4px;display:inline-flex}.prio-btn{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--muted);cursor:pointer;transition:background-color .16s var(--ease), border-color .16s var(--ease);border-radius:8px;padding:6px 10px;font-size:12.5px;font-weight:600}.prio-btn.prio-on{color:var(--ink);border-color:currentColor}.prio-high.prio-on{background:var(--bad-bg);color:var(--bad)}.prio-normal.prio-on{background:var(--surface-2,#f2f2f0);color:var(--ink)}.prio-low.prio-on{background:var(--good-bg);color:var(--good-text)}.chip.prio-high{background:var(--bad-bg);color:var(--bad);border-color:#d03b3b4d}.chip.prio-low{background:var(--good-bg);color:var(--good-text);border-color:#0ca30c4d}.todo-list{margin:0;padding:0;list-style:none}.todo-row{border-bottom:1px solid var(--hairline);border-left:3px solid #0000;border-radius:2px;align-items:center;gap:12px;padding:10px 12px;display:flex}.todo-row:last-child{border-bottom:0}.todo-urgent{border-left-color:var(--bad);background:#d03b3b0a}.todo-soon{border-left-color:var(--warn)}.todo-later{border-left-color:var(--hairline)}.todo-row.done{opacity:.62}.todo-row.done .todo-label{text-decoration:line-through}.todo-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.todo-label{font-size:14.5px;font-weight:600}.todo-detail{font-size:12.5px}.todo-due{white-space:nowrap;flex-direction:column;align-items:flex-end;gap:1px;display:flex}.todo-due-date{font-size:13px;font-weight:600}.todo-due-rel{font-size:11.5px}.todo-actions{align-items:center;gap:4px;display:flex}.todo-group+.todo-group{margin-top:14px}.todo-group-title{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin:0 0 4px;font-size:11.5px}.todo-done-list .todo-row{border-left-color:#0000}@media (width<=720px){.todo-row{flex-wrap:wrap}.todo-due{align-items:flex-start}}.sched2-wrap{border:1px solid var(--hairline);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:14px;overflow-x:auto}.sched2{min-width:max-content;display:grid}.sched2-corner,.sched2-allday-label,.sched2-hour{z-index:4;background:var(--surface);border-right:1px solid var(--hairline);position:sticky;left:0}.sched2-corner{border-bottom:1px solid var(--hairline)}.sched2-allday-label,.sched2-hour{color:var(--muted);justify-content:flex-end;font-size:11.5px;font-weight:700;display:flex}.sched2-hour{border-top:1px solid var(--hairline);align-items:flex-start;padding:5px 9px 0 6px}.sched2-allday-label{border-bottom:1px solid var(--hairline);align-items:center;padding:0 9px}.sched2-dayhead{text-transform:capitalize;background:var(--surface-2,#f7f7f5);border-bottom:1px solid var(--hairline);border-left:1px solid var(--hairline);justify-content:center;align-items:center;padding:11px 8px;font-size:12.5px;font-weight:700;display:flex}.sched2-allday-cell{border-bottom:1px solid var(--hairline);border-left:1px solid var(--hairline);cursor:pointer;flex-wrap:wrap;align-content:flex-start;gap:4px;min-height:30px;padding:5px;transition:background .12s;display:flex}.sched2-allday-cell:hover{background:#2a78d60d}.sched2-pill{color:var(--accent-deep,#1c5cab);background:#2a78d624;border-radius:999px;padding:2px 9px;font-size:11px;font-weight:600}.sched2-pill.sched2-ev-provider{color:#6b3fb0;background:#8a5bd629}.sched2-slot{border-top:1px solid var(--hairline);border-left:1px solid var(--hairline);cursor:pointer;transition:background .12s;position:relative}.sched2-slot:hover{background:#2a78d614}.sched2-clickable{cursor:pointer}.sched2-clickable:hover{filter:brightness(.97)}.tl-edit-label{font:inherit;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;padding:0;font-weight:600}.tl-edit-label:hover{color:var(--accent-dark);text-decoration:underline}.sched2-slot:hover:after{content:"+";color:#2a78d68c;justify-content:center;align-items:center;font-size:20px;font-weight:700;display:flex;position:absolute;inset:0}.sched2-event{z-index:1;box-sizing:border-box;border-left:3px solid var(--accent);color:var(--ink);background:#2a78d626;border-radius:9px;flex-direction:column;gap:1px;margin:2px 0;padding:4px 8px;display:flex;overflow:hidden}.sched2-event-time{color:var(--accent-deep,#1c5cab);font-size:10.5px;font-weight:700}.sched2-event-label{font-size:12.5px;font-weight:600;line-height:1.2}.sched2-ev-provider{background:#8a5bd629;border-left-color:#8a5bd6}.sched2-ev-provider .sched2-event-time{color:#6b3fb0}.sched2-chip{text-transform:uppercase;letter-spacing:.04em;color:#6b3fb0;background:#fff9;border-radius:999px;align-self:flex-start;margin-top:2px;padding:1px 7px;font-size:9.5px;font-weight:700}.sched2-del{width:20px;height:20px;color:var(--bad);cursor:pointer;opacity:0;background:#ffffffbf;border:0;border-radius:6px;justify-content:center;align-items:center;font-size:17px;line-height:1;transition:opacity .12s;display:flex;position:absolute;top:2px;right:3px}.sched2-event{position:relative}.sched2-event:hover .sched2-del{opacity:1}.auth-page{background:var(--page);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-card{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-lg);width:100%;max-width:400px;box-shadow:var(--shadow-lg);flex-direction:column;gap:14px;padding:32px 28px;display:flex}.auth-title{text-align:center;margin:0;font-size:1.5rem}.auth-subtitle{text-align:center;margin:-6px 0 6px;font-size:.92rem}.auth-field{color:var(--ink);flex-direction:column;gap:5px;font-size:.86rem;font-weight:600;display:flex}.auth-field .input{width:100%}.auth-roles{gap:8px;display:flex}.auth-role-btn{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);color:var(--ink);cursor:pointer;flex:1;padding:10px;font-weight:600;transition:all .12s}.auth-role-btn.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-deep)}.auth-submit{width:100%;margin-top:4px;padding:11px;font-size:1rem}.auth-toggle{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:4px;font-size:.88rem}.auth-toggle:hover{text-decoration:underline}.auth-error{border-radius:var(--r-sm);background:var(--bad-bg);color:var(--bad);margin:0;padding:9px 12px;font-size:.88rem}.account-bar{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-md);justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding:10px 14px;display:flex}.account-who{flex-direction:column;display:flex}.account-name{font-weight:700}.account-role{color:var(--muted);font-size:.82rem}.org-code{text-align:center;margin-bottom:16px}.org-code .muted{margin:0 0 6px}.org-code-value{letter-spacing:3px;color:var(--accent-deep);font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:1.5rem;font-weight:700}.join-org{margin-bottom:16px}.join-org .muted{margin:0 0 8px}.join-org-row{gap:8px;display:flex}.join-org-row .input{flex:1}.org-overview{flex-direction:column;gap:22px;display:flex}.org-director-name{border-bottom:1px solid var(--hairline);margin:0 0 10px;padding-bottom:6px;font-size:1.1rem}.btn-danger{background:var(--bad);color:#fff;border:1px solid var(--bad)}.btn-danger:hover:not(:disabled){filter:brightness(.94)}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.form-success{color:var(--good-text);font-size:13px;font-weight:600}.account-actions{gap:8px;display:flex}.profile-page{max-width:640px;margin:0 auto;padding:24px 18px 48px}.profile-page>h1{margin:8px 0 18px}.profile-section{margin-bottom:18px}.profile-section .auth-field{margin-bottom:12px}.profile-section .btn{margin-top:4px}.profile-danger{border:1px solid var(--bad);margin-bottom:18px}.profile-danger .panel-title{color:var(--bad)}.profile-danger .auth-field{margin-bottom:12px}.org-link{margin-bottom:16px}.org-link .join-org-row{margin-top:8px}.legal-page{max-width:820px;margin:0 auto;padding:24px 18px 56px}.legal h1{margin-bottom:6px}.legal-article{margin-top:24px}.legal-article h2{margin-bottom:8px;font-size:1.12rem}.legal-article p{margin:8px 0;line-height:1.6}.legal-article ul{margin:8px 0;padding-left:20px}.legal-article li{margin:4px 0;line-height:1.6}.legal-note{background:var(--warn-bg);border-radius:var(--r-sm);margin-top:10px;padding:10px 13px}.health-section{margin-bottom:16px}.health-section h4{color:var(--ink);margin:0 0 8px;font-size:.98rem}.health-text{resize:vertical;width:100%;min-height:52px;font:inherit;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);color:var(--ink);padding:8px 10px}.check-grid{flex-wrap:wrap;gap:8px 18px;display:flex}.check-grid .check-line{margin:0}.health-row{align-items:center;gap:10px}.chip-warn{background:var(--warn-bg);color:#8a5a00}.read-row-drag .drag-handle{cursor:grab;color:var(--muted);-webkit-user-select:none;user-select:none;flex:none;font-size:1.1rem;line-height:1}.read-row-drag .drag-handle:active{cursor:grabbing}.health-card{margin-bottom:4px}.health-row{flex-wrap:wrap;align-items:center;gap:10px}.health-validated{color:var(--good-text);margin:8px 0 0;font-weight:600}.doc-info-btn{cursor:pointer;color:var(--accent);font:inherit;text-align:left;background:0 0;border:none;padding:0;font-weight:600}.doc-info-btn:hover{text-decoration:underline}.print-presets{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.print-tam-footer{border-top:1px solid var(--hairline);margin-top:18px;padding-top:14px}.print-tam-footer h3{margin:0 0 6px}.health-print .hp-block{margin-bottom:12px}.health-print .hp-block h3{border-bottom:1px solid var(--hairline);margin:0 0 6px;padding-bottom:3px;font-size:1rem}.health-print .hp-row{gap:8px;padding:2px 0;display:flex}.health-print .hp-label{min-width:220px;color:var(--muted);font-weight:600}
