@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAZMABQAAAAADFgAAAXfAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbbhwoP0hWQVJYP01WQVJGBmA/U1RBVIEcAEwvXBEICoMkgmELEAAwhAgBNgIkAxoEIAWGXAdRDAcbrAoRVazlgPh5YDtPuYeVhCwYIP8bOqRjg0Z4JTV4/v/b9Pe5o8xgTYmsvthrSWpU1KmJ/BVq7k9NiBP6v1/k/uGaFtC4yGKSAisaENwT3YcG2k3YBcD/HDNdpEVi/q11z0c6kSzqvKOofn5iN6CrTLDpWfGB8WxbVkKxh3CYTm1tsPc2HgKkgbtSCIKGIIBDmMaort37DsE/Z+KSefjRAV4czWZPXTQPGwxsdBSnEWwUWXQFIlRHUAAA6f0KjVzSHCxIL6QQmxYFFkXxigCEgRAAAEFMFAAgKAQIo4AMIIgAoOh+pSRa6iCop3kagI50BAHARpG9eMmi+YCsmDF9CRfuRYDsUFPiHRY5ZSa66iU7MEBtUiOAPtNCZBy1pDOQswBFSRkyoM8AnqZT/h3dnxoYQZmSj+wGUFnqFyAfDUGwUUAIGwijlk+fsUQ0mLlk4hxxEYJkU4uWdCXKGGYgAKLzMiAAYkgE0ACFkh2gHgcEQCz5XwVbjYD+Hjeyo+UraghKvOBGJS4PoSHT79NpCTjYKBSdeEZU/p0UoGJST+tEvooiYCkBgiiEEBb2NhvxMsgOWL4xiCY6YG5ugERATJcdiAXyP4gNagSIZ4tuccIvXZAUAgBYAPgBLzAN2ApkAyEAdFQK4ugIorNtPTNTrxAcLwGWHNh5r+nOdmc6w7xDRvtGudMv35b4sx86m95v6Jz+6CN38wcfELtRa8SmDz+U+O2H3As3iD3zgbv5oybuifffn5akbPxwd8hsL58be+I06ylxY1XanOpud7ck7uscbuDnYf1qh3S426/j3VFk7rucxbVXdi/JLWzRKade0yENew/9cBedUrdt56mNW41olRc0XvlAazayZV5+YvzqNa7EZoMnfXEvOrlur7ROBZ3Ch+hATFs5bO/0hXvRVzbpVhDuEulZ983atd+s2yNSo4tpPVQhAlgYPMI7nWTSad6GAC6ouPbT9HMLICggjAVALQAepgHtuMsL/N2Rp4kpvFRDqAb43MAvfzgq8edv/ooKSuJrzECAf/6pWnV1zPv7lGi5p9uQYWV5jYiebPbtt+Tmvvvu6iRI8w+YoESUuCXiIL9GpYjRVRAfYMqRC+stBFrkZGdhgaBtJv/8My3gmCZlJUWkvCype1y25fnxx98m/K8iaaSn//N/aYXremrFRJTGfcnKpDgZOThQwOvVKlcZSteMVPHsyvJkuWia0lL/9buijmz0f1LhFBU5Lbe6xc9ffIoFvi/WM+s0/PLz3yo1f3aNIhJpbCX//In95cfVIw2XKAyZ/379aaRenvvrr/n5dSKcuM/V/vrls1eewYE++uOPktQqoyLxT5ntxrN1J2CWJBLJKpkFLTqUVWpXreoRykOh8t8N4/dbhbT8LugrGp99s3q9Vi05fOLqmOTmrnFBZkxVKx/HI6KUKPlAnv8q+PHnP//+6NPvYnZlUeL33xNFleAObhvOrjZtxrjBvTp06sxWtrCK2avjXl9mKFTQAuYCft10dw0CqLR6icHdOo8PtE3YmvYzwBc3I1kAX5/fPSY1WdCI6mcBEwWAwNvQvNaB0HtjIFBbU8Voq7bgHr/tGC2A6UxHAIspWIzBCG6sIUAaXyrNdQ/wvDzKAKG6HACFXzaBRlfpDjqNJQQGrfkUTOpzhe+nOcvkRMPLLNAJMQwMHPqCiV82gYWXjmATpCF4sKkFDmlkgIsXR1vvT80gTCE70pCE9t6PlrDBxOn+GzfEFZqQZ0ineJOehn6gU5jM2QdX1VLp0rlaMqZsGeZaURUmFKXPLvZPLxOjjiEGqeEGMtW/dn2TgLx3pQoxI0PKZ4OV72nERL1wuqAj/rbUYGS4yFBCOqbP316ciNFcXXJHQ08vo+0W8195Y8vJkAs/uTUi3R5v5ziXEiPX1mRtdIDSZfDWIwv6If83xqI2pkxjjPo3dxkn2yWoTLmtXViE/0WJJroYZifrVx6+WDdZOOSbcRNso92vWdEap+IjPv2T1Nob+lYAAA==) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-vietnamese-wght-normal-Bnh6xcKr.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-ext-wght-normal-Ch-K9LVU.woff2) format("woff2-variations");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-wght-normal-BD2oGHtS.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--navy: #05293d;--navy-2: #0b3a54;--navy-3: #124a69;--blue: #3c8eb9;--sky: #52b4e5;--primary: #1d6a94;--primary-hover: #165778;--primary-soft: #e7f2f8;--bg: #f2f5f7;--surface: #ffffff;--surface-2: #f8fafb;--surface-3: #eef2f5;--line: #dde5ea;--line-strong: #c6d2da;--ink: #05293d;--text: #20384a;--muted: #566b7a;--subtle: #7d909d;--success: #136b43;--success-bg: #e3f3eb;--success-line: #b5dec8;--warn: #8a5000;--warn-bg: #fff3d9;--warn-line: #f1d397;--danger: #b42318;--danger-bg: #fdebe9;--danger-line: #f4c0bb;--info: #1d6a94;--info-bg: #e7f2f8;--info-line: #b8d8ea;--neutral: #4a5e6c;--neutral-bg: #edf1f4;--neutral-line: #d4dde4;--event: #6a43b5;--event-bg: #f1ecfa;--event-line: #d6c8f0;--site: #1d6a94;--site-bg: #e7f2f8;--site-line: #b8d8ea;--draft: #6d5a00;--draft-bg: #fffbe8;--radius: 8px;--radius-lg: 12px;--shadow-sm: 0 1px 2px rgba(5, 41, 61, .06);--shadow: 0 4px 16px rgba(5, 41, 61, .08), 0 1px 3px rgba(5, 41, 61, .06);--shadow-lg: 0 18px 48px rgba(5, 41, 61, .18);--focus: 0 0 0 2px #fff, 0 0 0 4px var(--sky);--sidebar-w: 236px;--topbar-h: 56px;--font: "Plus Jakarta Sans Variable", "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font);font-size:14px;line-height:1.45;color:var(--text);background:var(--bg);font-feature-settings:"tnum" 1,"cv11" 1;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{color:var(--ink);margin:0;line-height:1.25;letter-spacing:-.01em}h1{font-size:22px;font-weight:700}h2{font-size:16px;font-weight:650}h3{font-size:14px;font-weight:650}h4{font-size:13px;font-weight:650}p{margin:0}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:none;box-shadow:var(--focus);border-radius:6px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.mono{font-family:var(--mono);font-size:12.5px}.muted{color:var(--muted)}.subtle{color:var(--subtle)}.small{font-size:12.5px}.xs{font-size:11.5px}.strong{font-weight:650;color:var(--ink)}.nowrap{white-space:nowrap}.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.right{text-align:right}.row{display:flex;align-items:center;gap:8px}.row.wrap{flex-wrap:wrap}.row.top{align-items:flex-start}.row.between{justify-content:space-between}.col{display:flex;flex-direction:column;gap:8px}.grow{flex:1 1 auto;min-width:0}.gap-4{gap:4px}.gap-12{gap:12px}.gap-16{gap:16px}.gap-24{gap:24px}.stack>*+*{margin-top:16px}.stack-sm>*+*{margin-top:8px}.grid{display:grid;gap:16px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-main{grid-template-columns:minmax(0,1fr) 340px;align-items:start}@media (max-width: 1100px){.grid-main{grid-template-columns:1fr}}@media (max-width: 860px){.grid-2,.grid-3{grid-template-columns:1fr}}.divider{height:1px;background:var(--line);margin:12px 0}.mt-8{margin-top:8px}.mt-16{margin-top:16px}.mb-8{margin-bottom:8px}.mb-16{margin-bottom:16px}.app{min-height:100vh;display:flex}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar-w);z-index:40;background:var(--navy);color:#c8d8e3;display:flex;flex-direction:column}.sidebar-brand{height:var(--topbar-h);display:flex;align-items:center;padding:0 18px;border-bottom:1px solid rgba(255,255,255,.07)}.sidebar-brand img{height:22px;width:auto;display:block}.sidebar-brand .tag{margin-left:8px;font-size:10.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#7fb3d1}.sidebar nav{flex:1;overflow-y:auto;padding:10px 10px 16px}.nav-group{margin-top:14px}.nav-group:first-child{margin-top:2px}.nav-label{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#6f97b0;padding:0 10px 6px}.nav-item{display:flex;align-items:center;gap:10px;height:34px;padding:0 10px;border-radius:7px;color:#c8d8e3;font-size:13.5px;font-weight:500;text-decoration:none;position:relative}.nav-item svg{width:17px;height:17px;flex:none;opacity:.85}.nav-item:hover{background:#ffffff0f;color:#fff;text-decoration:none}.nav-item.active{background:#52b4e529;color:#fff;font-weight:600}.nav-item.active:before{content:"";position:absolute;left:-10px;top:7px;bottom:7px;width:3px;border-radius:0 3px 3px 0;background:var(--sky)}.nav-item .count{margin-left:auto;background:#ffffff1f;color:#fff;font-size:11px;font-weight:700;padding:1px 7px;border-radius:10px}.nav-item .count.alert{background:#d64535}.nav-item:focus-visible{box-shadow:0 0 0 2px var(--sky)}.sidebar-foot{padding:12px 14px;border-top:1px solid rgba(255,255,255,.07);font-size:11.5px;color:#7f9fb4}.main{flex:1;min-width:0;margin-left:var(--sidebar-w);display:flex;flex-direction:column;min-height:100vh}.topbar{position:sticky;top:0;z-index:30;height:var(--topbar-h);background:var(--surface);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px;padding:0 20px}.topbar .mobile-brand{display:none}.content{padding:20px 24px 48px;max-width:1480px;width:100%}.content.wide{max-width:none}.search-trigger{display:flex;align-items:center;gap:8px;height:34px;padding:0 10px;width:300px;max-width:34vw;border:1px solid var(--line);border-radius:8px;background:var(--surface-2);color:var(--subtle);cursor:pointer;font-size:13px}.search-trigger kbd{margin-left:auto;font-family:var(--font);font-size:11px;border:1px solid var(--line-strong);border-radius:4px;padding:0 5px;color:var(--muted);background:#fff}.proto-chip{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 10px 0 8px;border-radius:8px;cursor:pointer;border:1px dashed #d19a2a;background:#fff8e6;color:#6b4a00;font-size:12.5px;font-weight:600}.proto-chip .flag{font-size:10px;font-weight:800;letter-spacing:.08em;background:#f0c25a;color:#4a3300;border-radius:4px;padding:2px 5px}.demo-clock{display:flex;flex-direction:column;line-height:1.15;font-size:12px;color:var(--muted);text-align:right}.demo-clock b{color:var(--ink);font-size:13px}.icon-btn{position:relative;display:inline-grid;place-items:center;width:36px;height:36px;border-radius:8px;border:1px solid transparent;background:transparent;cursor:pointer;color:var(--muted)}.icon-btn:hover{background:var(--surface-3);color:var(--ink)}.icon-btn .dot{position:absolute;top:5px;right:5px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--danger);color:#fff;font-size:10px;font-weight:700;display:grid;place-items:center;border:2px solid #fff}.account-btn{display:flex;align-items:center;gap:8px;border:0;background:none;cursor:pointer;padding:4px 6px;border-radius:8px}.account-btn:hover{background:var(--surface-3)}.bottom-nav{display:none}.mobile-only{display:none!important}@media (max-width: 1023px){.sidebar{transform:translate(-100%);transition:transform .2s ease;box-shadow:var(--shadow-lg)}.sidebar.open{transform:none}.main{margin-left:0}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#05293d66;z-index:35}}@media (min-width: 1024px){.hamburger{display:none!important}}@media (max-width: 767px){.topbar{background:var(--navy);border-bottom:0;padding:0 8px 0 12px;gap:6px;padding-top:env(safe-area-inset-top);height:calc(var(--topbar-h) + env(safe-area-inset-top))}.topbar .mobile-brand{display:block;height:18px}.topbar .icon-btn{color:#d5e4ee}.topbar .icon-btn:hover{background:#ffffff14;color:#fff}.topbar .icon-btn .dot{border-color:var(--navy)}.search-trigger,.demo-clock,.account-btn .who,.desktop-only{display:none!important}.mobile-only{display:revert!important}.proto-chip{height:30px;font-size:11.5px;padding:0 8px 0 6px}.panel-head .meta{display:none}.proto-chip .who{max-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hamburger{display:none!important}.topbar .mobile-brand{margin-right:auto}.content{padding:14px 16px calc(84px + env(safe-area-inset-bottom))}.bottom-nav{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;position:fixed;left:0;right:0;bottom:0;z-index:30;background:var(--surface);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -4px 16px #05293d0f}.bottom-nav a,.bottom-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;height:60px;border:0;background:none;font-size:11px;font-weight:600;color:var(--muted);text-decoration:none;cursor:pointer}.bottom-nav svg{width:21px;height:21px}.bottom-nav .active{color:var(--primary)}.bottom-nav .primary-tab .bubble{width:44px;height:44px;margin-top:-18px;border-radius:50%;background:var(--primary);color:#fff;display:grid;place-items:center;box-shadow:0 4px 12px #1d6a9459;border:3px solid #fff}h1{font-size:19px}}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px;flex-wrap:wrap}.page-head .titles{min-width:0}.page-head .sub{color:var(--muted);margin-top:4px;font-size:13.5px}.page-head .actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.crumbs{display:flex;gap:6px;align-items:center;font-size:12.5px;color:var(--muted);margin-bottom:6px;flex-wrap:wrap}.crumbs a{color:var(--muted)}.crumbs svg{width:13px;height:13px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:34px;padding:0 13px;border-radius:8px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font-size:13.5px;font-weight:600;cursor:pointer;white-space:nowrap;text-decoration:none;transition:background .12s,border-color .12s}.btn:hover{background:var(--surface-3);text-decoration:none}.btn svg{width:16px;height:16px;flex:none}.btn.primary{background:var(--primary);border-color:var(--primary);color:#fff}.btn.primary:hover{background:var(--primary-hover);border-color:var(--primary-hover)}.btn.navy{background:var(--navy);border-color:var(--navy);color:#fff}.btn.navy:hover{background:var(--navy-2)}.btn.danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn.danger:hover{background:#9a1d13}.btn.danger-outline{color:var(--danger);border-color:var(--danger-line)}.btn.danger-outline:hover{background:var(--danger-bg)}.btn.success{background:var(--success);border-color:var(--success);color:#fff}.btn.success:hover{background:#0f5536}.btn.ghost{border-color:transparent;background:transparent;color:var(--primary)}.btn.ghost:hover{background:var(--primary-soft)}.btn.sm{height:28px;padding:0 9px;font-size:12.5px;border-radius:6px}.btn.sm svg{width:14px;height:14px}.btn.lg{height:46px;padding:0 20px;font-size:15px;border-radius:10px}.btn.block{width:100%}.btn.icon{width:34px;padding:0}.btn.sm.icon{width:28px}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed}.btn .kbd-count{background:#ffffff38;border-radius:10px;padding:0 7px;font-size:12px}.btn:not(.primary) .kbd-count{background:var(--surface-3)}.badge{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 8px;border-radius:6px;font-size:12px;font-weight:600;border:1px solid var(--neutral-line);background:var(--neutral-bg);color:var(--neutral);white-space:nowrap;line-height:1}.badge svg{width:13px;height:13px}.badge .dot{width:7px;height:7px;border-radius:50%;background:currentColor}.badge.success{background:var(--success-bg);border-color:var(--success-line);color:var(--success)}.badge.warn{background:var(--warn-bg);border-color:var(--warn-line);color:var(--warn)}.badge.danger{background:var(--danger-bg);border-color:var(--danger-line);color:var(--danger)}.badge.info{background:var(--info-bg);border-color:var(--info-line);color:var(--info)}.badge.event{background:var(--event-bg);border-color:var(--event-line);color:var(--event)}.badge.site{background:var(--site-bg);border-color:var(--site-line);color:var(--site)}.badge.draft{background:var(--draft-bg);border:1px dashed #c9a400;color:var(--draft)}.badge.solid-navy{background:var(--navy);border-color:var(--navy);color:#fff}.badge.sm{height:19px;font-size:11px;padding:0 6px}.badge.outline{background:transparent}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.panel-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 12px;padding:13px 16px;border-bottom:1px solid var(--line);min-height:50px}.panel-head h2{font-size:14.5px}.panel-head .meta{color:var(--muted);font-size:12.5px}.panel-body{padding:16px}.panel-body.tight{padding:8px 0}.panel-foot{padding:10px 16px;border-top:1px solid var(--line);background:var(--surface-2);border-radius:0 0 var(--radius-lg) var(--radius-lg)}.panel.flush .panel-body{padding:0}.callout{display:flex;gap:10px;align-items:flex-start;padding:11px 13px;border-radius:9px;border:1px solid var(--info-line);background:var(--info-bg);color:#10465f;font-size:13px}.callout svg{width:17px;height:17px;flex:none;margin-top:1px}.callout.warn{border-color:var(--warn-line);background:var(--warn-bg);color:#5f3800}.callout.danger{border-color:var(--danger-line);background:var(--danger-bg);color:#7d1810}.callout.success{border-color:var(--success-line);background:var(--success-bg);color:#0d4a2f}.callout.proto{border:1px dashed #d19a2a;background:#fff8e6;color:#5c4000}.callout.neutral{border-color:var(--line);background:var(--surface-2);color:var(--text)}.kv{display:grid;grid-template-columns:minmax(110px,38%) 1fr;gap:8px 14px;font-size:13.5px}.kv dt{color:var(--muted)}.kv dd{margin:0;color:var(--ink);min-width:0;overflow-wrap:anywhere}@media (max-width: 520px){.kv{grid-template-columns:1fr;gap:2px}.kv dd{margin-bottom:8px}}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.stat{padding:11px 16px;border-right:1px solid var(--line);text-decoration:none;color:inherit;display:block;min-width:0}.stat:last-child{border-right:0}a.stat:hover{background:var(--surface-2);text-decoration:none}.stat .label{font-size:12px;color:var(--muted);font-weight:600;display:flex;align-items:center;gap:6px}.stat .value{font-size:20px;font-weight:700;color:var(--ink);margin-top:2px;line-height:1.2}.stat .value small{font-size:12.5px;color:var(--muted);font-weight:500;margin-left:4px}.stat.danger .value{color:var(--danger)}.stat.warn .value{color:var(--warn)}.stat.success .value{color:var(--success)}@media (max-width: 767px){.stats{grid-template-columns:repeat(2,1fr)}.stat{border-bottom:1px solid var(--line)}.stat:nth-child(2n){border-right:0}}.list{list-style:none;margin:0;padding:0}.list-row{display:flex;align-items:center;gap:12px;padding:10px 16px;border-top:1px solid var(--line);color:inherit;text-decoration:none;min-height:48px}.list>.list-row:first-child,.list>li:first-child>.list-row{border-top:0}a.list-row:hover,button.list-row:hover{background:var(--surface-2);text-decoration:none}button.list-row{width:100%;border-left:0;border-right:0;border-bottom:0;background:none;text-align:left;cursor:pointer}.list-row .ico{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;flex:none;background:var(--neutral-bg);color:var(--neutral)}.list-row .ico svg{width:16px;height:16px}.list-row .ico.danger{background:var(--danger-bg);color:var(--danger)}.list-row .ico.warn{background:var(--warn-bg);color:var(--warn)}.list-row .ico.info{background:var(--info-bg);color:var(--info)}.list-row .ico.success{background:var(--success-bg);color:var(--success)}.list-row .ico.event{background:var(--event-bg);color:var(--event)}.list-row .title{font-weight:600;color:var(--ink);font-size:13.5px}.list-row .meta{color:var(--muted);font-size:12.5px}.list-row .chev{color:var(--subtle);width:16px;height:16px;flex:none}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}table.table{width:100%;border-collapse:separate;border-spacing:0;font-size:13.5px}.table th{text-align:left;font-size:12px;font-weight:650;color:var(--muted);padding:9px 12px;background:var(--surface-2);border-bottom:1px solid var(--line);white-space:nowrap;position:sticky;top:0;z-index:1}.table td{padding:9px 12px;border-bottom:1px solid var(--line);vertical-align:middle}.table tr:last-child td{border-bottom:0}.table tbody tr.clickable{cursor:pointer}.table tbody tr.clickable:hover td{background:#f6fafc}.table tbody tr.selected td{background:#eef6fb}.table td.num,.table th.num{text-align:right}.cell-title{font-weight:600;color:var(--ink)}.cell-sub{font-size:12px;color:var(--muted);font-weight:400}.table th:first-child,.table td:first-child{padding-left:16px}.table th:last-child,.table td:last-child{padding-right:16px}.table tr.group td{background:var(--surface-3);font-weight:650;color:var(--ink);font-size:12.5px;padding-top:7px;padding-bottom:7px}.panel>.table-wrap:first-child table th:first-child{border-top-left-radius:var(--radius-lg)}@media (max-width: 767px){table.table.cards thead{display:none}table.table.cards,.table.cards tbody,.table.cards tr,.table.cards td{display:block;width:100%}.table.cards tr{padding:10px 14px;border-bottom:1px solid var(--line)}.table.cards td{border:0;padding:2px 0!important;text-align:left!important}.table.cards td[data-label]:before{content:attr(data-label);display:inline-block;min-width:96px;color:var(--muted);font-size:12px}.table.cards td[data-label=""]:before{display:none}.table.cards td[data-label]:before{font-family:var(--font)}.table.cards td.hide-sm{display:none}.table-wrap>table.table:not(.cards):has(thead th:nth-child(4)){min-width:520px}.table-wrap>table.table:not(.cards):has(thead th:nth-child(6)){min-width:680px}.grid-notify{grid-template-columns:1fr!important}}.field{display:flex;flex-direction:column;gap:5px;min-width:0}.field>label,.field-label{font-size:12.5px;font-weight:650;color:var(--ink)}.field .hint{font-size:12px;color:var(--muted)}.field .error{font-size:12px;color:var(--danger);font-weight:600}.req:after{content:" *";color:var(--danger)}.input,.select,.textarea{height:36px;border:1px solid var(--line-strong);border-radius:8px;background:#fff;padding:0 10px;font-size:14px;width:100%;min-width:0}.textarea{height:auto;min-height:84px;padding:8px 10px;resize:vertical;line-height:1.45}.select{padding-right:28px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23566b7a' stroke-width='2.5'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 9px center}.input:focus,.select:focus,.textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #52b4e540;outline:none}.input.invalid,.select.invalid,.textarea.invalid{border-color:var(--danger)}.input.sm,.select.sm{height:30px;font-size:13px}.input-icon{position:relative}.input-icon svg{position:absolute;left:10px;top:50%;transform:translateY(-50%);width:16px;height:16px;color:var(--subtle);pointer-events:none}.input-icon .input{padding-left:32px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}.form-grid .span-2{grid-column:span 2}@media (max-width: 640px){.form-grid{grid-template-columns:1fr}.form-grid .span-2{grid-column:auto}}.check{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-size:13.5px}.check input{width:16px;height:16px;accent-color:var(--primary);margin:0}.radio-cards{display:grid;gap:8px}.radio-card{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line-strong);border-radius:9px;padding:10px 12px;cursor:pointer;background:#fff}.radio-card:has(input:checked){border-color:var(--primary);background:var(--primary-soft);box-shadow:inset 0 0 0 1px var(--primary)}.radio-card input{margin-top:3px;accent-color:var(--primary)}.seg{display:inline-flex;background:var(--surface-3);border:1px solid var(--line);border-radius:8px;padding:2px;gap:2px}.seg button{border:0;background:transparent;height:28px;padding:0 11px;border-radius:6px;font-size:13px;font-weight:600;color:var(--muted);cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center;gap:6px}.seg button svg{width:15px;height:15px}.seg button[aria-pressed=true]{background:#fff;color:var(--ink);box-shadow:var(--shadow-sm)}.tabs{display:flex;align-items:center;gap:0;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none;margin-bottom:14px}.tabs::-webkit-scrollbar{display:none}.tab{display:inline-flex;align-items:center;gap:5px;padding:0 10px;height:34px;flex:none;border:0;background:none;font-size:12.5px;font-weight:600;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap;text-decoration:none}.tab:hover{color:var(--ink);text-decoration:none}.tab[aria-selected=true],.tab.active{color:var(--primary);border-bottom-color:var(--primary)}.tab .badge{height:16px;font-size:10.5px;padding:0 5px}.toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:12px}.toolbar .spacer{flex:1}.filter-chip{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 10px;border-radius:15px;border:1px solid var(--line-strong);background:#fff;font-size:12.5px;font-weight:600;cursor:pointer;color:var(--text)}.filter-chip[aria-pressed=true]{background:var(--navy);border-color:var(--navy);color:#fff}.filter-chip .n{font-weight:700;opacity:.8}.avatar{width:30px;height:30px;border-radius:50%;display:inline-grid;place-items:center;font-size:11.5px;font-weight:700;flex:none;color:#fff;background:var(--navy-3);letter-spacing:.02em}.avatar.sm{width:24px;height:24px;font-size:10px}.avatar.lg{width:56px;height:56px;font-size:19px}.avatar.empty{padding:0;background:#fff;color:var(--danger);border:1.5px dashed var(--danger-line)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#05293d6b;display:flex;animation:fade .15s ease}@keyframes fade{0%{opacity:0}}@keyframes slide{0%{transform:translate(24px);opacity:.4}}@keyframes rise{0%{transform:translateY(12px);opacity:.4}}.modal{margin:auto;width:min(560px,calc(100vw - 32px));max-height:calc(100vh - 48px);background:#fff;border-radius:14px;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;animation:rise .18s ease}.modal.wide{width:min(840px,calc(100vw - 32px))}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 18px 12px;border-bottom:1px solid var(--line)}.modal-head .sub{color:var(--muted);font-size:13px;margin-top:3px}.modal-body{padding:16px 18px;overflow-y:auto}.modal-foot{display:flex;justify-content:flex-end;gap:8px;padding:12px 18px;border-top:1px solid var(--line);background:var(--surface-2);border-radius:0 0 14px 14px;flex-wrap:wrap}.drawer{margin-left:auto;width:min(520px,100vw);height:100%;background:#fff;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;animation:slide .18s ease}.drawer.wide{width:min(800px,100vw)}.drawer .modal-body{flex:1}.drawer .modal-foot{border-radius:0}@media (max-width: 767px){.modal{margin:auto 0 0;width:100vw;border-radius:16px 16px 0 0;max-height:92vh}.modal-foot{border-radius:0;padding-bottom:calc(12px + env(safe-area-inset-bottom))}.modal-foot .btn{flex:1}}.popover{position:absolute;z-index:50;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow-lg);min-width:240px;animation:rise .12s ease}.menu{padding:6px}.menu-item{display:flex;align-items:center;gap:9px;width:100%;border:0;background:none;padding:8px 10px;border-radius:7px;font-size:13.5px;text-align:left;cursor:pointer;color:var(--text);text-decoration:none}.menu-item:hover{background:var(--surface-3);text-decoration:none}.menu-item svg{width:16px;height:16px;color:var(--muted)}.toasts{position:fixed;z-index:90;bottom:20px;right:20px;display:flex;flex-direction:column;gap:8px;max-width:min(420px,calc(100vw - 32px))}@media (max-width: 767px){.toasts{left:16px;right:16px;bottom:calc(76px + env(safe-area-inset-bottom))}}.toast{display:flex;align-items:flex-start;gap:10px;background:var(--navy);color:#fff;padding:11px 14px;border-radius:10px;box-shadow:var(--shadow-lg);font-size:13.5px;animation:rise .18s ease}.toast svg{width:18px;height:18px;flex:none;margin-top:1px}.toast.success svg{color:#6fd6a0}.toast.warn svg{color:#f3c15b}.toast.danger svg{color:#ff8f84}.toast.info svg{color:var(--sky)}.toast button{margin-left:auto;background:none;border:0;color:#9fc0d4;cursor:pointer;padding:0}.empty{text-align:center;padding:36px 20px;color:var(--muted)}.empty .ico{width:44px;height:44px;border-radius:12px;background:var(--surface-3);display:grid;place-items:center;margin:0 auto 10px;color:var(--subtle)}.empty h3{margin-bottom:4px}.skeleton{background:linear-gradient(90deg,var(--surface-3) 25%,#f7f9fa 37%,var(--surface-3) 63%);background-size:400% 100%;animation:shimmer 1.3s ease infinite;border-radius:6px;height:14px}@keyframes shimmer{0%{background-position:100% 50%}to{background-position:0 50%}}.spinner{width:18px;height:18px;border-radius:50%;border:2.5px solid rgba(29,106,148,.2);border-top-color:var(--primary);animation:spin .8s linear infinite;display:inline-block}.spinner.lg{width:40px;height:40px;border-width:4px}@keyframes spin{to{transform:rotate(360deg)}}.bar{height:6px;border-radius:3px;background:var(--surface-3);overflow:hidden;min-width:60px}.bar>span{display:block;height:100%;background:var(--success);border-radius:3px}.bar.warn>span{background:#d18b00}.bar.danger>span{background:var(--danger)}.op-tag{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:2px 6px;border-radius:4px;white-space:nowrap}.op-tag svg{width:12px;height:12px}.op-tag.site{background:var(--site-bg);color:var(--site)}.op-tag.event{background:var(--event-bg);color:var(--event)}.roster{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:auto;max-height:calc(100vh - 230px)}.rgrid{display:grid;grid-template-columns:230px repeat(7,minmax(128px,1fr));min-width:1130px}.rgrid .rh{position:sticky;top:0;z-index:3;background:var(--surface-2);border-bottom:1px solid var(--line);padding:8px 10px;font-size:12px;font-weight:650;color:var(--muted)}.rgrid .rh.today{color:var(--primary);background:#eaf4fa}.rgrid .rh .hol{display:block;font-weight:600;color:var(--event);font-size:11px}.rgrid .rh:first-child,.rgrid .rlabel{position:sticky;left:0;z-index:2}.rgrid .rh:first-child{z-index:4}.rgrid .rop{grid-column:1 / -1;display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--surface-3);border-bottom:1px solid var(--line);font-weight:650;color:var(--ink);font-size:13px;position:sticky;left:0}.rgrid .rop .op-name{position:sticky;left:10px;display:flex;align-items:center;gap:8px}.rgrid .rop.event{box-shadow:inset 3px 0 0 var(--event)}.rgrid .rop.site{box-shadow:inset 3px 0 0 var(--site)}.rgrid .rlabel{background:#fff;border-bottom:1px solid var(--line);border-right:1px solid var(--line);padding:7px 10px;font-size:12.5px}.rgrid .rlabel .t{font-weight:600;color:var(--ink)}.rgrid .rcell{border-bottom:1px solid var(--line);border-right:1px solid var(--line);padding:4px;display:flex;flex-direction:column;gap:3px;min-height:44px}.rgrid .rcell.today{background:#f7fbfd}.rgrid .rcell.hol{background:repeating-linear-gradient(135deg,transparent 0 8px,rgba(106,67,181,.035) 8px 16px)}.rgrid .rcell .add{opacity:0;border:1px dashed var(--line-strong);background:none;border-radius:6px;height:22px;font-size:11.5px;color:var(--muted);cursor:pointer}.rgrid .rcell:hover .add,.rgrid .rcell .add:focus-visible{opacity:1}.chip-shift{display:flex;flex-direction:column;gap:1px;text-align:left;width:100%;border:1px solid var(--line-strong);border-left-width:3px;border-radius:6px;background:#fff;padding:4px 6px;cursor:pointer;font-size:12px;line-height:1.3;position:relative;min-width:0}.chip-shift:hover{border-color:var(--blue);box-shadow:var(--shadow-sm)}.chip-shift .n{font-weight:650;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chip-shift .t{color:var(--muted);font-size:11.5px;display:flex;gap:4px;align-items:center}.chip-shift.site{border-left-color:var(--site)}.chip-shift.event{border-left-color:var(--event)}.chip-shift.unfilled{border-style:dashed;border-left-style:solid;border-color:var(--danger-line);border-left-color:var(--danger);background:#fff7f6}.chip-shift.unfilled .n{color:var(--danger)}.chip-shift.draft,.chip-shift.changed{background:var(--draft-bg);border-style:dashed;border-left-style:solid;border-color:#d9c060}.chip-shift.removed{opacity:.6;text-decoration:line-through}.chip-shift .flags{position:absolute;top:3px;right:4px;display:flex;gap:2px}.chip-shift .flags svg{width:13px;height:13px}.chip-shift .flags .c-danger{color:var(--danger)}.chip-shift .flags .c-warn{color:#c07800}.chip-shift .flags .c-draft{color:#9a7b00}.chip-shift.dim{opacity:.35}.legend{display:flex;flex-wrap:wrap;gap:14px;font-size:12px;color:var(--muted);align-items:center}.legend .sw{display:inline-block;width:18px;height:12px;border-radius:3px;border:1px solid var(--line-strong);border-left-width:3px;vertical-align:-1px;margin-right:5px}.legend .sw.site{border-left-color:var(--site)}.legend .sw.event{border-left-color:var(--event)}.legend .sw.draft{background:var(--draft-bg);border-style:dashed;border-color:#d9c060}.legend .sw.unfilled{background:#fff7f6;border-style:dashed;border-color:var(--danger-line);border-left:3px solid var(--danger)}.tl{min-width:980px}.tl-head,.tl-row{display:grid;grid-template-columns:230px 1fr}.tl-head{position:sticky;top:0;z-index:3;background:var(--surface-2);border-bottom:1px solid var(--line)}.tl-scale{position:relative;height:32px}.tl-scale span{position:absolute;top:9px;font-size:11px;color:var(--muted);transform:translate(-50%)}.tl-row .rlabel{position:sticky;left:0;background:#fff;z-index:2;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:6px 10px;font-size:12.5px}.tl-track{position:relative;border-bottom:1px solid var(--line);height:40px;background-image:linear-gradient(to right,var(--line) 1px,transparent 1px);background-size:calc(100% / 24) 100%}.tl-bar{position:absolute;top:6px;height:28px;border-radius:6px;border:1px solid var(--line-strong);border-left-width:3px;background:#fff;font-size:11.5px;padding:0 6px;display:flex;align-items:center;gap:4px;overflow:hidden;white-space:nowrap;cursor:pointer}.tl-bar.site{border-left-color:var(--site);background:#f3f9fc}.tl-bar.event{border-left-color:var(--event);background:#f7f3fd}.tl-bar.unfilled{border-color:var(--danger-line);border-left-color:var(--danger);background:#fff4f2;color:var(--danger);border-style:dashed;border-left-style:solid}.tl-bar.draft{border-style:dashed;border-left-style:solid;background:var(--draft-bg)}.tl-now{position:absolute;top:0;bottom:0;width:2px;background:var(--danger);z-index:1}.tl-now:before{content:"Now";position:absolute;top:-1px;left:4px;font-size:10px;font-weight:700;color:var(--danger)}.day-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:12px}.day-strip button{border:1px solid var(--line);background:#fff;border-radius:9px;padding:6px 0;display:flex;flex-direction:column;align-items:center;cursor:pointer;font-size:11px;color:var(--muted);font-weight:600}.day-strip button b{font-size:16px;color:var(--ink)}.day-strip button[aria-pressed=true]{background:var(--navy);border-color:var(--navy);color:#c8d8e3}.day-strip button[aria-pressed=true] b{color:#fff}.day-strip button .pip{width:5px;height:5px;border-radius:50%;background:var(--danger);margin-top:2px}.shift-card{border:1px solid var(--line);border-radius:12px;background:#fff;padding:14px;display:flex;gap:14px;align-items:flex-start;text-decoration:none;color:inherit}a.shift-card:hover{border-color:var(--blue);text-decoration:none}.shift-card .date{width:52px;flex:none;text-align:center;border-radius:9px;background:var(--surface-3);padding:6px 0}.shift-card .date .dow{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase}.shift-card .date .dom{font-size:20px;font-weight:700;color:var(--ink);line-height:1.1}.shift-card.event .date{background:var(--event-bg)}.shift-card.site .date{background:var(--site-bg)}.hero{border-radius:16px;background:var(--navy);color:#d5e4ee;padding:18px;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;right:-40px;top:-40px;width:180px;height:180px;border-radius:40px;transform:rotate(20deg);background:linear-gradient(135deg,#52b4e538,#3c8eb900);pointer-events:none}.hero h2{color:#fff;font-size:18px}.hero .k{font-size:12px;color:#8fb6cd;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.hero .big{font-size:26px;font-weight:700;color:#fff;letter-spacing:-.01em}.hero .badge{border-color:#ffffff2e}.hero .btn.primary{background:var(--sky);border-color:var(--sky);color:var(--navy)}.hero .btn.primary:hover{background:#7cc8ee}.hero .btn:not(.primary){background:#ffffff14;border-color:#fff3;color:#fff}.clock-stage{border-radius:16px;border:1px solid var(--line);background:#fff;padding:22px 18px;text-align:center}.clock-stage .big-ico{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;margin:0 auto 12px}.clock-stage .big-ico svg{width:30px;height:30px}.clock-stage .big-ico.success{background:var(--success-bg);color:var(--success)}.clock-stage .big-ico.danger{background:var(--danger-bg);color:var(--danger)}.clock-stage .big-ico.warn{background:var(--warn-bg);color:var(--warn)}.clock-stage .big-ico.info{background:var(--info-bg);color:var(--info)}.clock-stage h2{font-size:18px;margin-bottom:6px}.clock-stage .time{font-size:40px;font-weight:750;color:var(--ink);letter-spacing:-.02em}.geo-viz{width:100%;max-width:280px;height:170px;margin:6px auto 10px;display:block}.scanner{width:100%;max-width:300px;aspect-ratio:1;margin:0 auto 12px;border-radius:18px;background:#0b1a24;position:relative;overflow:hidden;display:grid;place-items:center;color:#8fb6cd;font-size:12.5px}.scanner .frame{position:absolute;top:18%;right:18%;bottom:18%;left:18%;border-radius:14px;box-shadow:0 0 0 999px #00000059}.scanner .frame:before,.scanner .frame:after{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border:3px solid var(--sky);border-radius:14px;clip-path:polygon(0 0,22% 0,22% 4px,4px 4px,4px 22%,0 22%,0 78%,4px 78%,4px calc(100% - 4px),22% calc(100% - 4px),22% 100%,78% 100%,78% calc(100% - 4px),calc(100% - 4px) calc(100% - 4px),calc(100% - 4px) 78%,100% 78%,100% 22%,calc(100% - 4px) 22%,calc(100% - 4px) 4px,78% 4px,78% 0,100% 0,100% 100%,0 100%)}.scanner .laser{position:absolute;left:20%;right:20%;height:2px;background:var(--sky);box-shadow:0 0 12px var(--sky);animation:scan 1.6s ease-in-out infinite alternate;top:22%}@keyframes scan{to{top:78%}}.sim-panel{border:1px dashed #d19a2a;background:#fffaf0;border-radius:12px;padding:12px 14px}.sim-panel .sim-title{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;color:#6b4a00;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.sim-panel .sim-title svg{width:15px;height:15px}.sim-opts{display:flex;flex-wrap:wrap;gap:6px}.sim-opts button{border:1px solid #e6c886;background:#fff;border-radius:7px;padding:5px 9px;font-size:12.5px;font-weight:600;cursor:pointer;color:#5c4000}.sim-opts button[aria-pressed=true]{background:#6b4a00;border-color:#6b4a00;color:#fff}.timeline{list-style:none;margin:0;padding:0}.timeline li{position:relative;padding:0 0 14px 22px;font-size:13px}.timeline li:before{content:"";position:absolute;left:5px;top:6px;width:8px;height:8px;border-radius:50%;background:var(--blue)}.timeline li:after{content:"";position:absolute;left:8.5px;top:16px;bottom:0;width:1px;background:var(--line)}.timeline li:last-child:after{display:none}.timeline .when{color:var(--subtle);font-size:12px}.layers{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:10px;overflow:hidden}.layers>div{padding:10px 12px;border-right:1px solid var(--line);min-width:0}.layers>div:last-child{border-right:0}.layers .lbl{font-size:11px;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:var(--muted)}.layers .val{font-weight:650;color:var(--ink);font-size:13.5px;margin-top:3px}.layers .val.dim{color:var(--subtle);font-weight:500}.layers>.hl{background:var(--success-bg)}@media (max-width: 600px){.layers{grid-template-columns:1fr 1fr}.layers>div:nth-child(2){border-right:0}.layers>div:nth-child(-n+2){border-bottom:1px solid var(--line)}}.kanban{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(220px,1fr);gap:12px;overflow-x:auto;padding-bottom:8px}.kcol{background:var(--surface-3);border-radius:12px;padding:10px;min-height:200px}.kcol h3{font-size:12.5px;display:flex;justify-content:space-between;margin:2px 4px 10px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.kcard{background:#fff;border:1px solid var(--line);border-radius:9px;padding:10px;margin-bottom:8px;cursor:pointer;display:block;width:100%;text-align:left}.kcard:hover{border-color:var(--blue)}.cal{overflow:auto;border:1px solid var(--line);border-radius:var(--radius-lg);background:#fff}.cal table{border-collapse:separate;border-spacing:0;font-size:12px;min-width:100%}.cal th,.cal td{border-bottom:1px solid var(--line);border-right:1px solid var(--line);padding:4px;min-width:76px;vertical-align:top}.cal th{background:var(--surface-2);font-weight:650;color:var(--muted);position:sticky;top:0;z-index:1;text-align:left;white-space:nowrap}.cal th.today{color:var(--primary);background:#eaf4fa}.cal th.hol{color:var(--event)}.cal td.name,.cal th.name{position:sticky;left:0;background:#fff;z-index:2;min-width:170px;font-weight:600;color:var(--ink)}.cal th.name{z-index:3;background:var(--surface-2)}.cal td.wkend{background:#fafbfc}.cal .pill{display:block;border-radius:4px;padding:2px 5px;margin-bottom:2px;font-size:11px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal .pill.site{background:var(--site-bg);color:var(--site)}.cal .pill.event{background:var(--event-bg);color:var(--event)}.cal .pill.leave{background:var(--warn-bg);color:var(--warn)}.cal .pill.absent{background:var(--neutral-bg);color:var(--neutral)}.cal .pill.pending{background:#fff;color:var(--warn);border:1px dashed var(--warn-line)}.cal .pill.unavail{background:repeating-linear-gradient(135deg,#f3f5f7 0,#f3f5f7 5px,#e9edf0 5px,#e9edf0 10px);color:var(--muted)}.hbar{display:grid;grid-template-columns:minmax(120px,200px) 1fr 84px;gap:10px;align-items:center;font-size:13px;padding:5px 0}.hbar .track{height:12px;background:var(--surface-3);border-radius:3px;overflow:hidden;display:flex}.hbar .track span{display:block;height:100%}.hbar .val{text-align:right;font-weight:650;color:var(--ink)}@media (max-width: 600px){.hbar{grid-template-columns:1fr 52px}.hbar .track{grid-column:1 / -1;order:3}}.qr-poster{text-align:center;border:2px solid var(--navy);border-radius:16px;padding:22px;max-width:360px;margin:0 auto}.qr-poster img.logo{height:28px;margin-bottom:10px}.qr-poster canvas,.qr-poster img.qr{width:220px;height:220px;image-rendering:pixelated}.geo-card svg{width:100%;height:auto;display:block;border-radius:10px}@media print{.sidebar,.topbar,.bottom-nav,.no-print,.toasts{display:none!important}.main{margin:0}.content{padding:0}.panel{box-shadow:none;break-inside:avoid}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}.date-input{position:relative;display:flex;width:100%;min-width:150px}.date-input .input{padding-right:38px;font-variant-numeric:tabular-nums}.date-btn{position:absolute;right:3px;top:50%;transform:translateY(-50%);width:30px;height:28px;border:0;background:none;border-radius:6px;color:var(--muted);cursor:pointer;display:grid;place-items:center}.date-btn:hover{background:var(--surface-3);color:var(--ink)}.input.sm+.date-btn{height:24px}.cal-pop{position:absolute;z-index:70;top:calc(100% + 4px);left:0;width:264px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow-lg);padding:10px;animation:rise .12s ease}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.cal-grid .dow{font-size:11px;font-weight:700;color:var(--subtle);text-align:center;padding:4px 0}.cal-grid button{height:32px;border:0;border-radius:7px;background:none;cursor:pointer;font-size:13px;color:var(--ink);font-variant-numeric:tabular-nums}.cal-grid button:hover{background:var(--surface-3)}.cal-grid button.out{color:var(--subtle)}.cal-grid button.we:not(.sel){color:var(--muted)}.cal-grid button.today{box-shadow:inset 0 0 0 1.5px var(--blue)}.cal-grid button.sel{background:var(--primary);color:#fff;font-weight:700}.cal-grid button:disabled{opacity:.3;cursor:not-allowed}.branch-switch{position:relative;display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 8px 0 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--muted);cursor:pointer}.branch-switch select{border:0;background:transparent;font:inherit;font-size:13px;font-weight:600;color:var(--ink);cursor:pointer;padding-right:2px;outline:none}.branch-switch:focus-within{box-shadow:var(--focus)}.branch-switch.active{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.sidebar-branch{display:none;padding:10px 10px 0}.sidebar-branch .branch-switch{width:100%;background:#ffffff0f;border-color:#ffffff24;color:#9fc0d4}.sidebar-branch .branch-switch select{color:#fff;flex:1}.sidebar-branch .branch-switch select option{color:var(--ink)}@media (max-width: 1023px){.sidebar-branch{display:block}.topbar-branch{display:none!important}}.checkcall.urgent{border-color:#e8b04a;box-shadow:0 0 0 3px #e8b04a2e}.checkcall.help{border-color:var(--danger);box-shadow:0 0 0 3px #b4231826}.cc-banner{position:sticky;top:var(--topbar-h);z-index:25;display:flex;align-items:center;gap:10px;padding:9px 20px;font-size:13.5px}.cc-banner.due{background:var(--warn-bg);color:#5f3800;border-bottom:1px solid var(--warn-line)}.cc-banner.late{background:var(--danger);color:#fff}.cc-banner.late .btn:not(.success){background:#fff}@media (max-width: 767px){.cc-banner{top:calc(var(--topbar-h) + env(safe-area-inset-top));padding:9px 16px}}.panel-alert{border-color:var(--danger-line);box-shadow:0 0 0 3px #b4231814}.table tr.row-help td{background:#fff3f1}.form-panels .panel-body{padding:10px 18px 14px}.frow{display:grid;grid-template-columns:170px minmax(0,1fr) auto;align-items:start;gap:4px 14px;padding:6px 0}.frow>label{font-size:13.5px;font-weight:600;color:var(--primary);padding-top:8px}.frow>label.req:after{content:" *";color:var(--danger)}.frow .fcontrol{display:flex;flex-direction:column;gap:3px;min-width:0}.frow .faside{display:flex;align-items:center;gap:6px;padding-top:3px;min-height:36px}.frow .hint{font-size:12px;color:var(--muted)}.frow .error{font-size:12px;color:var(--danger);font-weight:600}.frow .input:disabled,.frow .select:disabled,.frow .textarea:disabled,.textarea:disabled{background:var(--surface-2);color:var(--ink);opacity:1;cursor:default;border-color:var(--line)}.hist-btn{color:var(--muted);width:30px;padding:0;justify-content:center;position:relative}.hist-btn .hist-n{position:absolute;top:-5px;right:-5px;min-width:15px;height:15px;border-radius:8px;background:var(--primary);color:#fff;font-size:9.5px;font-weight:700;display:grid;place-items:center;padding:0 3px}@media (max-width: 640px){.frow{grid-template-columns:1fr auto}.frow>label{grid-column:1 / -1;padding-top:0}}.savebar{position:sticky;bottom:12px;z-index:20;display:flex;align-items:center;gap:10px;margin-top:16px;padding:10px 14px;border-radius:12px;background:var(--navy);color:#fff;box-shadow:var(--shadow-lg);font-size:13.5px}.savebar .btn:not(.primary){background:transparent;color:#fff;border-color:#ffffff4d}.savebar .btn.primary{background:var(--sky);border-color:var(--sky);color:var(--navy)}.savebar svg{vertical-align:-3px}@media (max-width: 767px){.savebar{bottom:calc(72px + env(safe-area-inset-bottom))}}.photo-notes{display:flex;gap:18px;align-items:flex-start}.photo-ph{width:128px;height:128px;border-radius:50%;background:var(--surface-3);color:#8396a3;display:grid;place-items:center;border:1px solid var(--line)}@media (max-width: 640px){.photo-notes{flex-direction:column;align-items:stretch}}.role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px}.avail-strip{display:flex;gap:6px}.avail-strip span{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;font-size:12px;font-weight:700}.avail-strip .on{background:var(--success-bg);color:var(--success);border:1px solid var(--success-line)}.avail-strip .off{background:var(--surface-3);color:var(--subtle);text-decoration:line-through}.poc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:6px}.poc-option{display:flex;gap:8px;align-items:flex-start;border:1px solid var(--line-strong);border-radius:9px;padding:8px 10px;cursor:pointer;background:#fff;min-width:0}.poc-option.on{border-color:var(--primary);background:var(--primary-soft)}.poc-option input{margin-top:3px;accent-color:var(--primary)}.dept-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:0}.dept{padding:12px 16px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);display:flex;flex-direction:column;gap:6px}.dept-contacts{display:flex;flex-direction:column;gap:2px}.contact-row{display:grid;grid-template-columns:1.2fr 1fr 1fr 1.3fr auto;gap:6px}@media (max-width: 760px){.contact-row{grid-template-columns:1fr 1fr}}.cr-controls{padding:14px 16px}.cr-grid{display:grid;grid-template-columns:1.2fr .8fr .9fr 1.3fr;gap:16px 24px;align-items:start}@media (max-width: 1100px){.cr-grid{grid-template-columns:1fr 1fr}}@media (max-width: 640px){.cr-grid{grid-template-columns:1fr}}.cr-field{display:grid;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--primary)}.cr-types{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.cr-types legend{font-size:13px;font-weight:600;color:var(--primary);margin-bottom:4px}.cr-totals{display:grid;grid-template-columns:auto auto auto auto auto auto;gap:4px 10px;align-items:baseline;font-size:13px;color:var(--primary);font-weight:600}.cr-totals b{color:var(--ink);font-size:16px}.switch-row{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;font-weight:600;color:var(--primary);max-width:230px}.switch{width:38px;height:22px;border-radius:11px;border:0;background:var(--line-strong);position:relative;cursor:pointer;flex:none}.switch span{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:left .15s;box-shadow:var(--shadow-sm)}.switch.on{background:var(--navy)}.switch.on span{left:19px}.log-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 20px}@media (max-width: 1100px){.log-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.log-grid{grid-template-columns:1fr}}.table.dense{font-size:13px}.table.dense th{padding:7px 9px}.table.dense td{padding:6px 9px}.table.dense tbody tr:nth-child(2n) td{background:#fafbfc}.table .ct{font-weight:800;text-align:center;letter-spacing:.02em;width:74px}.table .ct.ct-overdue{background:#e5655b!important;color:#fff}.table .ct.ct-window{background:#8fdcaa!important;color:#0d3d22}.table .ct.ct-ack{background:var(--warn-bg)!important;color:var(--warn)}.table tr.open-post td,.table tr.open-post td a{color:var(--danger)}.cr-foot{display:flex;align-items:center;gap:8px;padding:10px 14px;border-top:1px solid var(--line);background:var(--surface-2);border-radius:0 0 var(--radius-lg) var(--radius-lg);flex-wrap:wrap}.legend .sw:not(.site):not(.event):not(.draft):not(.unfilled){border-left-width:1px}.cr-table td,.cr-table td .cell-sub{white-space:nowrap}.cr-toolbar{position:relative;display:flex;align-items:center;gap:6px;padding:8px 10px;border-bottom:1px solid var(--line);background:var(--surface-2);border-radius:var(--radius-lg) var(--radius-lg) 0 0;flex-wrap:wrap}.tb-group{display:flex;gap:2px;padding-right:8px;margin-right:2px;border-right:1px solid var(--line)}.tb-group:last-of-type{border-right:0}.tb-btn{position:relative;width:36px;height:34px;display:grid;place-items:center;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--navy);cursor:pointer}.tb-btn svg{width:19px;height:19px}.tb-btn:hover:not(:disabled){background:#fff;border-color:var(--line-strong);box-shadow:var(--shadow-sm)}.tb-btn:disabled{color:var(--line-strong);cursor:not-allowed}.tb-btn.danger:not(:disabled){color:var(--danger)}.tb-btn[data-tip]:hover:after,.tb-btn[data-tip]:focus-visible:after{content:attr(data-tip);position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%);z-index:40;white-space:nowrap;background:var(--navy);color:#fff;font-size:12px;font-weight:600;padding:5px 8px;border-radius:6px;pointer-events:none;box-shadow:var(--shadow)}.tb-help{position:absolute;top:calc(100% + 4px);right:10px;z-index:30;display:flex;flex-direction:column;gap:6px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px 12px;box-shadow:var(--shadow-lg);font-size:12.5px}.tb-help .key{display:inline-block;width:52px;text-align:center;font-weight:800;font-size:11px;padding:2px 0;border-radius:4px;margin-right:6px;border:1px solid var(--line)}.tb-help .key.ct-overdue{background:#e5655b;color:#fff;border-color:#e5655b}.tb-help .key.ct-window{background:#8fdcaa;color:#0d3d22;border-color:#8fdcaa}.tb-help .key.ct-ack{background:var(--warn-bg);color:var(--warn)}.cr-table td.cr-trunc{max-width:220px;overflow:hidden;text-overflow:ellipsis}.cr-table tbody tr.clickable td{cursor:pointer}.table.dense tbody tr.selected td{background:#dcecf6}.log-grid .span-2{grid-column:span 2}.log-grid .cr-field{grid-template-columns:96px minmax(0,1fr)}.dt-pair{display:flex;gap:6px;align-items:center;min-width:0}.dt-pair .date-input{flex:1 1 auto;min-width:140px;max-width:220px}.dt-pair .input.time{width:84px;flex:none}.cr-summary{color:var(--primary)}@media (max-width: 1100px){.log-grid .span-2{grid-column:span 2}}@media (max-width: 640px){.log-grid .span-2{grid-column:auto}}.cr-table td.cr-trunc.wide{max-width:320px}.table tr.invalid-row td:not(.ct){color:#8a1d14}.record-main{min-width:0}.record-toolbar{display:flex;align-items:center;gap:2px;flex-wrap:wrap;padding:4px;margin-bottom:12px;background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow-sm)}.tb-item{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 10px;border:0;background:none;font-size:13px;font-weight:600;color:var(--navy);cursor:pointer;text-decoration:none;border-right:1px solid var(--line);border-radius:0}.tb-item:last-of-type{border-right:0}.tb-item svg{width:16px;height:16px}.tb-item:hover:not(:disabled){background:var(--surface-3);text-decoration:none;border-radius:7px}.tb-item:disabled{color:var(--line-strong);cursor:not-allowed}.tb-item.back-link{border-right:1px solid var(--line);border-radius:7px 0 0 7px;margin-right:4px}.tb-dirty{margin-left:auto;font-size:12px;font-weight:700;color:var(--warn);padding:0 10px}.record-head{margin-bottom:6px}.record-head h1{font-size:22px}.record-head .rec-code{color:var(--muted);font-weight:500}.record-head .sub{color:var(--muted);margin-top:3px;font-size:13.5px}.section-title{font-size:15px;font-weight:700;margin:0 0 10px}.mt-24{margin-top:24px}.qual-chip{display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 4px 0 9px;border-radius:999px;background:var(--primary-soft);color:var(--primary);font-size:12.5px;font-weight:600}.qual-chip button{border:0;background:none;color:inherit;cursor:pointer;display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;opacity:.7}.qual-chip button:hover{opacity:1;background:#0000000f}.seg.sm button{height:24px;padding:0 9px;font-size:12px}.tip{position:relative;display:inline-grid;place-items:center;color:var(--subtle);cursor:help;vertical-align:-2px;margin-left:4px}.tip .tip-body{display:none;position:absolute;left:50%;bottom:calc(100% + 6px);transform:translate(-50%);width:260px;z-index:40;background:var(--navy);color:#fff;font-size:12px;font-weight:500;line-height:1.4;padding:8px 10px;border-radius:8px;box-shadow:var(--shadow);text-transform:none;letter-spacing:0}.tip:hover .tip-body,.tip:focus .tip-body{display:block}.mini-table input.input{height:30px;font-size:13px}.mini-table td{padding:5px 8px!important}.time-col{display:flex;flex-direction:column;gap:4px}.cc-grid{display:grid;grid-template-columns:repeat(8,minmax(84px,1fr));gap:8px;overflow-x:auto}.cc-grid .cc-day{background:var(--surface-2);border:1px solid var(--line);border-radius:9px;padding:8px;display:flex;flex-direction:column;gap:4px;min-width:84px}.cc-grid .cc-day h4{font-size:12px;text-align:center;margin-bottom:4px}.cc-grid .cc-time{display:flex;align-items:center;gap:2px}.cc-grid .cc-time .input{height:28px;font-size:12.5px;padding:0 6px;text-align:center}.cc-grid .cc-time button{border:0;background:none;color:var(--subtle);cursor:pointer;padding:0 2px}.cc-grid .cc-time button:hover{color:var(--danger)}.metric-row{display:flex;gap:22px;flex-wrap:wrap;font-size:13px}.metric-row b{display:block;font-size:17px;color:var(--ink)}.metric-row span{color:var(--muted);font-weight:600;font-size:12px}.frow-full{padding:6px 0 10px}.frow .date-input{min-width:0}.esc-chain{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.esc-chain li{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.esc-chain.compact li{padding:5px 8px}.esc-chain .esc-n{width:22px;height:22px;border-radius:50%;background:var(--navy);color:#fff;font-size:11px;font-weight:700;display:grid;place-items:center;flex:none}.esc-chain input[type=checkbox]{width:18px;height:18px;flex:none}.avatar.sup-av{background:var(--primary-soft);color:var(--primary)}.chip-shift.supplier{background:var(--primary-soft);border-style:dashed}@keyframes panic-flash{0%,to{background:#c4161c;box-shadow:0 0 #c4161c8c}50%{background:#8f0d12;box-shadow:0 0 0 6px #c4161c00}}.panic-chip{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 12px 0 10px;border:0;border-radius:9px;background:#b8641a;color:#fff;font-weight:700;font-size:13px;cursor:pointer;white-space:nowrap;max-width:46vw;overflow:hidden}.panic-chip.active{animation:panic-flash 1s ease-in-out infinite}.panic-chip .flag{letter-spacing:.08em;font-size:11.5px;font-weight:800}.panic-chip .who{font-weight:600;overflow:hidden;text-overflow:ellipsis}.panic-chip .n{background:#ffffff40;border-radius:8px;padding:1px 6px;font-size:11px}.panic-mute{border:0;background:var(--danger-bg, #fde8e8);color:var(--danger);width:32px;height:32px;border-radius:8px;display:grid;place-items:center;cursor:pointer}.panic-panel{background:#c4161c;color:#fff;border-radius:12px;padding:12px 14px;margin-bottom:16px;box-shadow:var(--shadow)}.panic-panel h2{color:#fff;font-size:16px}.panic-panel ul{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.panic-panel li{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:#0000002e;border-radius:9px;padding:8px 10px;font-size:13.5px}.panic-panel .btn{background:#fff;color:#8f0d12;border-color:#fff}.panic-slot{position:fixed;right:18px;bottom:18px;z-index:60;display:flex;justify-content:flex-end;pointer-events:none}.panic-slot>*{pointer-events:auto}.panic-fab{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:74px;height:74px;border-radius:50%;border:4px solid #fff;background:#c4161c;color:#fff;font-weight:800;font-size:11.5px;letter-spacing:.06em;cursor:pointer;box-shadow:0 6px 18px #c4161c73}.panic-fab:hover{background:#a51117}.panic-fab:focus-visible{outline:3px solid var(--navy);outline-offset:3px}.panic-status{display:flex;align-items:center;gap:10px;max-width:min(640px,calc(100vw - 36px));padding:12px 14px;border-radius:12px;background:#c4161c;color:#fff;box-shadow:var(--shadow-lg)}.panic-status.acknowledged{background:#8f4a0d}.panic-status .btn{background:#fff;color:#8f0d12;border-color:#fff}.panic-countdown{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#78080ce0;display:grid;place-items:center;padding:16px}.panic-countdown .box{background:#fff;color:var(--ink);border-radius:16px;padding:28px 24px;text-align:center;max-width:380px;width:100%}.panic-countdown .box svg{color:#c4161c}.panic-countdown h2{font-size:22px;margin:10px 0 6px}.panic-countdown p{color:var(--muted);margin-bottom:18px}@media (max-width: 900px){.panic-slot{bottom:84px;right:12px}}@media (prefers-reduced-motion: reduce){.panic-chip.active{animation:none;background:#c4161c}}.panic-sound-off{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 10px;border:2px solid #c4161c;border-radius:8px;background:#fff;color:#c4161c;font-weight:700;font-size:12.5px;cursor:pointer;white-space:nowrap;animation:panic-flash-border 1s ease-in-out infinite}@keyframes panic-flash-border{50%{background:#fde8e8}}.rc-cats{display:flex;flex-direction:column;gap:8px}.rc-cat{background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:var(--shadow-sm)}.rc-head{display:flex;align-items:center;gap:10px;width:100%;padding:13px 16px;border:0;background:var(--surface);font-size:14.5px;font-weight:700;color:var(--ink);cursor:pointer;text-align:left}.rc-head:hover{background:var(--surface-2)}.rc-cat.open>.rc-head{background:var(--navy);color:#fff}.rc-cat.open>.rc-head .rc-n{background:#ffffff2e;color:#fff}.rc-n{min-width:26px;height:22px;border-radius:11px;background:var(--surface-3);color:var(--muted);font-size:12px;display:grid;place-items:center;padding:0 7px}.rc-chev{transition:transform .15s;color:inherit;opacity:.7}.rc-cat.open .rc-chev{transform:rotate(180deg)}.rc-head svg:first-child{color:#e0a800}.rc-body{border-top:1px solid var(--line)}.rc-sub{padding:8px 16px;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--primary);background:var(--primary-soft);border-top:1px solid var(--line)}.rc-table td,.rc-table th{vertical-align:middle}.rc-table .fav-star{color:#e0a800;vertical-align:-2px}.rr-head{text-align:center;margin:4px 0 14px}.rr-head h1{font-size:20px}.rr-head p{color:var(--muted);max-width:820px;margin:4px auto 0;font-size:13.5px}.rr-steps{list-style:none;display:flex;justify-content:center;gap:0;margin:18px auto 0;padding:0;max-width:640px}.rr-steps li{flex:1;position:relative}.rr-steps li:before{content:"";position:absolute;top:10px;left:-50%;right:50%;height:3px;background:var(--line)}.rr-steps li:first-child:before{display:none}.rr-steps li.done:before,.rr-steps li.on:before{background:var(--primary)}.rr-steps button{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;width:100%;border:0;background:none;cursor:pointer;font-size:12.5px;font-weight:600;color:var(--muted)}.rr-steps .dot{width:22px;height:22px;border-radius:50%;border:3px solid var(--line-strong);background:var(--surface)}.rr-steps li.done .dot{border-color:var(--primary);background:var(--primary)}.rr-steps li.on .dot{border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-soft)}.rr-steps li.on button,.rr-steps li.done button{color:var(--ink)}.rr-step{min-height:220px;padding:6px 4px}.rr-grid{max-width:760px;margin:0 auto}.rr-date{display:flex;flex-direction:column;gap:14px;align-items:flex-start;max-width:760px;margin:0 auto}.rr-filter{border:1px solid var(--line);border-radius:10px;padding:10px 12px;max-width:900px;margin:0 auto;width:100%;display:flex;flex-direction:column;gap:8px}.rr-opts{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px;max-width:900px;margin:0 auto;align-content:start}.rr-opt{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--line);border-radius:10px;cursor:pointer}.rr-foot{display:flex;align-items:center;gap:8px;flex-wrap:wrap;border-top:1px solid var(--line);margin:14px -16px -16px;padding:12px 16px;background:var(--surface-2);border-radius:0 0 12px 12px}.center{text-align:center}.rr-fav{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;background:#05293d73;display:grid;place-items:center;padding:16px}.rr-fav .panel{width:100%;max-width:440px}.rv{display:flex;flex-direction:column;gap:10px}.rv-bar{display:flex;align-items:center;gap:6px;padding:6px 8px;background:var(--surface);border:1px solid var(--line);border-radius:10px;position:sticky;top:calc(var(--topbar-h) + 6px);z-index:5}.rv-doc{background:#fff;color:#111;border:1px solid var(--line);border-radius:6px;box-shadow:var(--shadow);padding:32px 40px;max-width:1040px;width:100%;margin:0 auto;font-size:13.5px}.rv-title h1{font-size:22px;color:var(--navy);border-bottom:3px solid var(--sky, #52b4e5);display:inline-block;padding-bottom:4px;margin-bottom:10px}.rv-meta{display:flex;gap:24px;flex-wrap:wrap;font-size:13px;margin-bottom:6px}.rv-title p{color:#444;margin:4px 0 18px}.rv-warn{color:#8a5a00!important;background:#fff6df;border-radius:6px;padding:6px 10px;display:inline-block}.rv-cols,.rv-row,.rv-total{display:grid;grid-template-columns:minmax(0,1fr) 110px 150px 120px;gap:12px;align-items:center}.rv-cols.nocost,.rv-row.nocost,.rv-total.nocost{grid-template-columns:minmax(0,1fr) 160px}.rv-cols{font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--navy);border-bottom:2px solid var(--navy);padding:6px 0;margin-top:4px}.rv-group-h{font-weight:800;padding:10px 0 6px;border-bottom:1px solid #c9d3da;margin-top:8px;color:var(--navy)}.rv-group-h span{color:#5c6b75;font-weight:700;margin-right:6px}.rv-group-h.l0{font-size:15px}.rv-group-h.l1{padding-left:14px}.rv-group-h.l2{padding-left:28px;font-size:13px}.rv-group.d1 .rv-rows,.rv-group.d1 .rv-total{padding-left:14px}.rv-group.d2 .rv-rows,.rv-group.d2 .rv-total{padding-left:28px}.rv-row{padding:6px 0;border-bottom:1px dotted #e1e6ea}.rv-row .badge{margin-left:6px}.rv-row.duty.flag{background:#fff8e6}.rv-total{padding:7px 0 10px;font-weight:700;border-top:1px solid #c9d3da}.rv-total.strong{border-top:2px solid var(--navy)}.rv-total.grand{margin-top:18px;font-size:14.5px;color:var(--navy);border-top:3px double var(--navy)}.rv-total.duty{grid-template-columns:minmax(0,1fr) 140px 160px}.rv-tl{color:#5c6b75;font-weight:700;text-align:right;white-space:nowrap}.rv-total:not(.duty) .rv-tl{grid-column:1 / span 2}.rv-total.nocost .rv-tl{grid-column:1 / span 1}.num{text-align:right}.rv-foot{margin-top:28px;padding-top:8px;border-top:1px solid #e1e6ea;font-size:11px;color:#8796a0;text-align:center}@media (max-width: 760px){.rv-doc{padding:18px 14px;font-size:12.5px}.rv-cols,.rv-row,.rv-total{grid-template-columns:minmax(0,1fr) 70px 90px 80px;gap:6px}.rv-cols.duty,.rv-row.duty{grid-template-columns:70px 1fr 80px 80px}.rv-cols.duty span:nth-child(n+5),.rv-row.duty span:nth-child(n+5){display:none}}.rv-page{display:none}.rv-page.on{display:block}.rv-cols.tbl,.rv-row.tbl,.rv-total.tbl{display:grid;gap:10px;align-items:center}.rv-row.tbl.flag{background:#fff8e6}.rv-tl-l{color:#5c6b75;font-weight:700;white-space:nowrap;overflow:visible}.rv-row .neg{color:#b42318}.rv-doc{padding:26px 34px;font-size:13px}.rv-row{padding:4px 0}.rv-group-h{padding:8px 0 4px;margin-top:4px}.rv-total{padding:5px 0 8px}@media print{@page{size:A4;margin:12mm 10mm}.sidebar,.topbar,.bottom-nav,.record-toolbar,.rv-bar,.toasts,.panic-slot,.check-banner,.page-head,.panic-panel,.content>.panic-panel{display:none!important}.app,.main,.content{display:block!important;margin:0!important;padding:0!important;max-width:none!important}body{background:#fff}.rv-doc{box-shadow:none;border:0;max-width:none;padding:0;font-size:9.5pt;line-height:1.25}.rv-title h1{font-size:15pt;margin-bottom:4px;padding-bottom:2px}.rv-meta{font-size:8.5pt;gap:14px;margin-bottom:2px}.rv-title p{margin:2px 0 8px;font-size:8.5pt}.rv-page{display:block!important}.rv-page+.rv-page{break-before:page}.rv-cols{font-size:7.5pt;padding:3px 0;margin-top:0}.rv-row{padding:1px 0;border-bottom:.5pt dotted #ccc;break-inside:avoid}.rv-group-h{padding:5px 0 2px;margin-top:2px;font-size:10pt!important;break-after:avoid}.rv-total{padding:2px 0 5px;break-inside:avoid}.rv-total.grand{margin-top:8px;font-size:10.5pt}.rv-row .badge{font-size:7pt;height:auto;padding:0 3px}.rv-foot{margin-top:10px;font-size:7pt}}.diary{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px;box-shadow:var(--shadow-sm)}.diary-bar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:8px}.diary-title{font-size:16px;margin:0 0 0 6px}.diary-legend{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.diary-legend span{font-size:11px;font-weight:600;padding:2px 8px;border-radius:6px}.diary-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid var(--line);border-radius:10px;overflow:hidden}.dg-head{background:var(--navy);color:#fff;font-size:12px;font-weight:700;text-align:center;padding:6px 0}.dg-cell{border-right:1px solid var(--line);border-top:1px solid var(--line);padding:5px;display:flex;flex-direction:column;gap:3px;min-width:0;background:var(--surface)}.dg-cell:nth-child(7n+7){border-right:0}.diary-grid.week .dg-cell{min-height:180px}.diary-grid.month .dg-cell{min-height:96px}.dg-cell.wkend{background:var(--surface-2)}.dg-cell.out{background:#f6f8f9}.dg-cell.out .dg-date{opacity:.45}.dg-cell.today{box-shadow:inset 0 0 0 2px var(--primary)}.dg-date{display:flex;align-items:center;gap:4px;font-size:12px;font-weight:700;color:var(--muted);flex-wrap:wrap}.dg-cell.today .dg-date>span:first-child{color:var(--primary)}.dg-date .dl-ph{font-size:10px;padding:1px 5px;border-radius:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.dg-item{display:flex;flex-direction:column;gap:1px;text-align:left;font-size:11.5px;line-height:1.25;padding:4px 6px;border-radius:6px;border:1px solid transparent;min-width:0;cursor:default;font-family:inherit}button.dg-item:not(:disabled){cursor:pointer}button.dg-item:not(:disabled):hover{filter:brightness(.96)}.dg-item b{display:flex;align-items:center;gap:3px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dg-item span{font-size:10.5px;opacity:.85;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.dg-more{border:0;background:none;color:var(--primary);font-size:11px;font-weight:700;text-align:left;padding:0 4px;cursor:pointer}.dg-free{font-size:11px;color:var(--subtle);padding:2px 4px}.ds-upcoming{background:#e8f2f9;color:#0b4a6e;border-color:#c8def0}.ds-on{background:#dff0fb;color:#075985;border-color:var(--sky, #52b4e5)}.ds-done{background:#e7f6ec;color:#17603a;border-color:#c4e7d0}.ds-late{background:#fff4dc;color:#7a5200;border-color:#f2d999}.ds-noshow{background:#fde8e8;color:#9b1c1c;border-color:#f5b5b5}.ds-draft{background:#fff;color:var(--muted);border:1px dashed var(--line-strong)!important}.ds-removed{background:#fff;color:var(--subtle);text-decoration:line-through;border:1px dashed var(--line)!important}.dl-holiday{background:#d9f2ee;color:#0f5c50;border-color:#a9ddd4}.dl-requested,.dl-requested-other{background:#fffaf0;color:#8a5a00;border:1px dashed #e0b44c!important}.dl-medical{background:#efe7fb;color:#5b2a9b;border-color:#d6c4f2}.dl-medical-unpaid{background:repeating-linear-gradient(135deg,#efe7fb 0,#efe7fb 6px,#f8f4fd 6px,#f8f4fd 12px);color:#5b2a9b;border:1px dashed #c0a6ea!important}.dl-unpaid{background:#eef0f2;color:#45525c;border-color:#d5dbe0}.dl-other{background:#e9eef6;color:#2c4a73;border-color:#cfdaea}.dl-unavailable{background:#f3f4f6;color:#6b7280;border:1px dashed #cdd2d8!important}.dl-ph{background:#fce7f0;color:#9d174d}@media (max-width: 760px){.diary-grid.week{grid-template-columns:1fr}.diary-grid.week .dg-head{display:none}.diary-grid.week .dg-cell{min-height:0;border-right:0}.diary-grid.month .dg-item span{display:none}}.rv-period{display:flex;align-items:baseline;gap:10px;margin:6px 0 12px;padding:7px 12px;background:var(--surface-2, #f4f7f9);border-left:4px solid var(--sky, #52b4e5);border-radius:0 6px 6px 0;font-size:13px;font-weight:600;color:var(--navy)}.rv-period span{font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--primary)}.rv-gh{margin:12px 0 2px;break-inside:avoid;break-after:avoid}.rv-gh-t{display:flex;align-items:baseline;gap:10px;padding:6px 10px;border-radius:6px}.rv-gh-k{font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;opacity:.8;min-width:84px}.rv-gh-v{font-weight:800;font-size:14px}.rv-gh.l0 .rv-gh-t{background:var(--navy);color:#fff}.rv-gh.l0 .rv-gh-k{color:var(--sky, #52b4e5);opacity:1}.rv-gh.l1 .rv-gh-t{background:#e6f1f8;color:var(--navy)}.rv-gh.l2 .rv-gh-t{background:none;border-left:3px solid var(--sky, #52b4e5);border-radius:0;color:var(--navy);padding:3px 10px}.rv-gh.l2 .rv-gh-v{font-size:13.5px}.rv-gh.l3 .rv-gh-t{padding:2px 10px;border-bottom:1px solid #d5dee4;border-radius:0;color:var(--navy)}.rv-gh.l3 .rv-gh-v{font-size:12.5px}.rv-gh-d{margin:3px 0 4px;padding:5px 10px 6px;display:grid;grid-template-columns:max-content 1fr;column-gap:14px;row-gap:1px;font-size:11.5px;border-left:3px solid #e6f1f8}.rv-gh-d>div{display:contents}.rv-gh-d dt{color:#6b7a84;font-weight:700}.rv-gh-d dd{margin:0;color:#24323b}.rv-group.d1 .rv-rows,.rv-group.d1 .rv-total,.rv-group.d2 .rv-rows,.rv-group.d2 .rv-total{padding-left:0}.rv-cols.mg,.rv-row.mg,.rv-total.mg{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,.9fr) repeat(8,minmax(60px,.8fr));gap:8px;align-items:center}.rv-total.mg .mg-l{grid-column:1 / span 2}@media print{.rv-gh .rv-gh-t,.rv-period,.rv-gh-d{-webkit-print-color-adjust:exact;print-color-adjust:exact}.rv-gh{margin:6px 0 1px}.rv-gh-t{padding:3px 8px}.rv-gh-v{font-size:10.5pt}.rv-gh-d{font-size:8pt;padding:2px 8px 3px;margin:2px 0}.rv-period{font-size:9pt;padding:4px 8px;margin:2px 0 6px}.rv-cols.mg,.rv-row.mg,.rv-total.mg{gap:4px;font-size:8.5pt}}.sr-stages{list-style:none;display:flex;margin:0;padding:4px 0 2px}.sr-stages li{flex:1;position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px;font-size:12px;min-width:0}.sr-stages li:before{content:"";position:absolute;top:8px;left:-50%;right:50%;height:3px;background:var(--line)}.sr-stages li:first-child:before{display:none}.sr-stages li.done:before,.sr-stages li.on:before{background:#3f9b6a}.sr-stages .dot{position:relative;width:18px;height:18px;border-radius:50%;border:3px solid var(--line-strong);background:var(--surface)}.sr-stages li.done .dot{border-color:#3f9b6a;background:#3f9b6a;box-shadow:inset 0 0 0 3px #fff}.sr-stages li.on .dot{border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-soft)}.sr-stages b{font-size:12px}.sr-stages .xs{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;padding:0 2px}.sr-tabs{margin:2px 0 0}.sr-table td,.sr-table th{padding:5px 7px!important;vertical-align:top}.sr-table th{font-size:11px}.sr-sub{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--primary);margin:6px 0 4px}.sr-bill td{background:#f6fbf8}.sr-tot{font-size:12.5px;text-align:right;margin:4px 0 0;color:var(--muted)}.sr-tot b{color:var(--ink)}.sr-alert td{background:#fde8e8}.sr-comment td{background:#fffaf0}.rule-opt{display:grid;grid-template-columns:18px 1fr;gap:10px;align-items:start;padding:8px 10px;border:1px solid var(--line);border-radius:9px;cursor:pointer}.rule-opt input{width:16px;height:16px;margin-top:2px;accent-color:var(--primary)}.rule-opt b{display:block;font-size:13.5px}.rule-opt span span{display:block;font-size:12px;color:var(--muted);margin-top:2px}.lic-photo{width:120px;height:80px;object-fit:cover;border-radius:8px;border:1px solid var(--line);background:var(--surface-2);flex:none}.lic-photo.empty{display:grid;place-items:center;font-size:11px;color:var(--subtle);border-style:dashed}.lic-thumb{width:34px;height:24px;object-fit:cover;border-radius:4px;border:1px solid var(--line);vertical-align:middle;margin-right:6px}.list-row.selected{background:var(--primary-soft);box-shadow:inset 3px 0 0 var(--primary)}.day-chip{width:22px;height:24px;border-radius:5px;border:1px solid var(--line);background:var(--surface);font-size:11px;font-weight:700;color:var(--muted);cursor:pointer;padding:0}.day-chip[aria-pressed=true]{background:var(--primary);border-color:var(--primary);color:#fff}.tpl-preview{border:1px dashed var(--line-strong);border-radius:10px;padding:10px 12px;background:var(--surface-2)}.tpl-preview p{margin:6px 0 0;font-size:13.5px}.tpl-grid{grid-template-columns:minmax(260px,.75fr) minmax(0,1.6fr);align-items:start}.tpl-grid .mini-table .input,.tpl-grid .mini-table .select{min-width:0}.tpl-grid .mini-table td:first-child .input{min-width:150px}.tpl-grid .mini-table .time-input,.tpl-grid .mini-table input[aria-label=Start],.tpl-grid .mini-table input[aria-label=Finish]{width:74px}@media (max-width: 1100px){.tpl-grid{grid-template-columns:1fr}}.tpl-grid .mini-table td:nth-child(2) .select{min-width:160px}.wta-row{padding:8px 10px;border:1px solid var(--line);border-radius:8px;display:grid;gap:2px}.fit-chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:3px}.fit-chip{font-size:11px;line-height:16px;padding:0 6px;border-radius:99px;background:#eef2f5;color:var(--muted);font-weight:600}.fit-chip.success{background:#e3f4ea;color:#1f7a45}.fit-chip.warn{background:#fdf0d8;color:#8a5a00}.fit-chip.info{background:#e4f1f9;color:#23688d}.fit-chip.best{background:var(--primary, #3C8EB9);color:#fff}.role-chip{height:26px;padding:0 10px;border-radius:99px;border:1px solid var(--line);background:var(--surface);font-size:12px;font-weight:600;color:var(--muted);cursor:pointer}.role-chip[aria-pressed=true]{background:var(--primary);border-color:var(--primary);color:#fff}.role-chip:disabled{opacity:.5;cursor:default}.open-shifts{border-color:var(--primary)}.open-offer{display:grid;gap:8px;padding:10px 12px;border:1px solid #b9dcef;background:#f2f9fd;border-radius:9px}.chip-shift.unfilled.offered{border-style:dashed;border-color:var(--primary)}.inc-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}.inc-photo{position:relative;display:grid;gap:4px;padding:6px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);text-decoration:none}.inc-photo img,.inc-file{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:5px;background:var(--surface-2);display:grid;place-items:center;color:var(--muted)}.inc-photo span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inc-photo .btn{position:absolute;top:10px;right:10px;background:#ffffffe6}.cp-dots{display:flex;gap:3px}.cp-dots span{width:10px;height:10px;border-radius:50%;background:var(--line)}.cp-dots span.on{background:var(--success)}.cp-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.cp-list li{display:flex;align-items:flex-start;gap:8px}.cp-sim{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px}.cp-sim .btn{height:auto;padding:8px 10px;flex-direction:column;align-items:flex-start;gap:2px;text-align:left}.cp-labels{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}.cp-label{display:grid;justify-items:center;gap:4px;text-align:center;border:2px solid var(--navy);border-radius:12px;padding:12px 10px;break-inside:avoid}.cp-label img.logo{height:18px}.cp-label .qr{width:150px;height:150px;image-rendering:pixelated}@media print{body:has(.print-area) *{visibility:hidden}body:has(.print-area) .print-area,body:has(.print-area) .print-area *{visibility:visible}body:has(.print-area) .print-area{position:absolute;left:0;top:0;width:100%}.cp-labels{grid-template-columns:repeat(3,1fr)}}.ob-list{list-style:none;margin:0;padding:0}.ob-list li{display:grid;grid-template-columns:52px 110px 1fr;gap:10px;padding:8px 14px;border-bottom:1px solid var(--line);align-items:start;font-size:13px}.ob-list li:last-child{border-bottom:0}.ob-list li.auto{background:var(--surface-2)}.ob-list li.danger .ob-text{color:var(--danger);font-weight:600}.ob-time{font-weight:700;padding-top:1px}.print-only{display:none}@media (max-width: 640px){.ob-list li{grid-template-columns:46px 1fr}.ob-list .ob-cat{grid-column:2}.ob-list .ob-text{grid-column:1 / -1}}@media print{.print-only{display:block}.ob-print-head{padding:0 0 8px;font-size:12pt}.ob-list li{padding:4px 0;font-size:9.5pt}}.lm-wrap{display:grid;grid-template-columns:320px 1fr;gap:16px;align-items:start}.lm-side{display:grid;gap:12px}.lm-map-box{isolation:isolate;z-index:0;position:relative;border:1px solid var(--line);border-radius:var(--radius-lg, 12px);overflow:hidden;height:calc(100vh - 230px);min-height:460px;background:#e9eef1}.lm-map{position:absolute;top:0;right:0;bottom:0;left:0}.lm-list{list-style:none;margin:0;padding:0;max-height:calc(100vh - 380px);min-height:200px;overflow-y:auto}.lm-list button{display:flex;gap:10px;align-items:flex-start;width:100%;text-align:left;padding:8px 12px;border:0;border-bottom:1px solid var(--line);background:none;cursor:pointer;font:inherit;color:inherit}.lm-list button:hover{background:var(--surface-2)}.lm-list button.sel{background:var(--primary-soft)}.lm-list .xs{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lm-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-top:4px;flex:none;background:#9aa9b4}.lm-dot.ok{background:#136b43}.lm-dot.warn{background:#c07800}.lm-dot.danger{background:#b42318}.lm-dot.panic{background:#b42318;box-shadow:0 0 0 3px #b423184d}.lm-dot.staff{background:#3c8eb9}.lm-alarm{display:flex;gap:6px;align-items:center;padding:8px 12px;background:#fdecea;color:#b42318;font-weight:700;font-size:13px;border-bottom:1px solid var(--line)}.lm-pin{position:relative;display:flex;align-items:center;justify-content:center;gap:3px;height:26px;min-width:42px;padding:0 6px;border-radius:7px;background:#05293d;color:#fff;font:700 11px/1 var(--font, system-ui);border:2px solid #fff;box-shadow:0 2px 6px #05293d59}.lm-pin.event{border-radius:13px;background:#3c8eb9}.lm-pin.idle{background:#7a8b97}.lm-pin.warn{background:#c07800}.lm-pin.danger,.lm-pin.panic{background:#b42318}.lm-pin.panic{animation:lm-pulse 1s ease-in-out infinite}.lm-pin.sel{outline:3px solid #52B4E5}.lm-pin b{background:#fff;color:#05293d;border-radius:99px;padding:1px 5px;font-size:10px}.lm-legend{position:absolute;left:10px;bottom:22px;z-index:500;display:flex;gap:10px;flex-wrap:wrap;padding:6px 10px;background:#fffffff0;border-radius:8px;font-size:11px;color:var(--muted);box-shadow:0 1px 4px #0000001f}.lm-legend span{display:inline-flex;align-items:center;gap:4px}.lm-legend .lm-dot{margin:0}.lm-offline{position:absolute;top:10px;left:50%;transform:translate(-50%);z-index:500;padding:5px 10px;border-radius:8px;background:#fffffff0;font-size:12px;color:var(--muted)}.lm-panic-tip{background:#b42318;color:#fff;border:0;font-weight:700}.lm-panic-tip:before{border-right-color:#b42318!important}.leaflet-container{font:inherit}.lm-tiles{filter:saturate(.55) brightness(1.04)}@keyframes lm-pulse{50%{box-shadow:0 0 0 8px #b4231840}}@media (max-width: 900px){.lm-wrap{grid-template-columns:1fr}.lm-map-box{height:60vh;min-height:360px;order:-1}.lm-list{max-height:320px}}@media (prefers-reduced-motion: reduce){.lm-pin.panic{animation:none}}.ob-clip{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.msg-preview{display:grid;gap:8px}.msg-preview .msg-body{white-space:pre-wrap;font-size:14px;line-height:1.45;padding:12px 14px;border-radius:12px;background:var(--surface-2);border:1px solid var(--line)}.msg-preview.sms .msg-body{background:#e4f1f9;border-color:#b9dcef;border-radius:16px 16px 16px 4px;max-width:320px}.insp-sec{display:grid;gap:8px}.insp-sec h3{font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.insp-item{display:grid;grid-template-columns:1fr auto;gap:6px 12px;align-items:center;padding:8px 10px;border:1px solid var(--line);border-radius:9px}.insp-item .input{grid-column:1 / -1}.insp-item.fail{border-color:#f1b8b2;background:#fdf3f2}.insp-item.pass{border-color:#b9dfc8}.insp-item.missing{border-color:var(--danger)}.insp-q{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.insp-seg button{min-width:52px}.sig canvas{width:100%;max-width:560px;height:auto;aspect-ratio:560 / 160;border:1px dashed var(--line-strong, #b7c4cd);border-radius:8px;touch-action:none;background:#fff;display:block}@media (max-width: 640px){.insp-item{grid-template-columns:1fr}}.auth-page{min-height:100vh;display:grid;place-content:center;gap:14px;padding:24px 16px;background:linear-gradient(160deg,#05293d,#0b3a54 55%,#3c8eb9 140%)}.auth-card{width:min(400px,calc(100vw - 32px));background:#fff;border-radius:16px;padding:28px 26px;box-shadow:0 20px 50px #00000040}.auth-card h1{font-size:20px;margin:0;color:var(--ink)}.auth-card .field{display:grid;gap:6px}.auth-logo{height:30px;display:block;margin:0 auto 22px}.auth-loading{display:grid;place-items:center;gap:10px;padding:20px 0}.auth-err{color:var(--danger);font-size:13px;font-weight:600;margin:0}.auth-foot{text-align:center;color:#ffffffb3;font-size:12px;margin:0}.sync-badge{position:fixed;left:50%;bottom:76px;transform:translate(-50%);z-index:90;background:#05293d;color:#fff;padding:6px 12px;border-radius:99px;font-size:12px;font-weight:600;box-shadow:0 4px 14px #0003}.scanner.live{position:relative;overflow:hidden;background:#000}.scanner.live video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.scanner.live .scan-hint{position:absolute;bottom:12px;left:0;right:0;text-align:center;color:#fff;font-size:13px;text-shadow:0 1px 3px rgba(0,0,0,.7)}.lp{display:grid;gap:8px}.lp-map{height:300px;border:1px solid var(--line);border-radius:10px;overflow:hidden;isolation:isolate;z-index:0;background:#e9eef1}.lp-pin{width:22px;height:22px;border-radius:50%;background:#05293d;border:4px solid #fff;box-shadow:0 2px 8px #05293d73}.help-btn{width:26px;height:26px;color:var(--muted)}.help-btn:hover{color:var(--primary)}.panel.panel-collapsed>.panel-head{border-bottom:0}.panel.panel-collapsed>:not(.panel-head){display:none}.topbar-mid{flex:1 1 auto;min-width:0;display:flex;align-items:center;justify-content:center;gap:8px}.topbar-mid .panic-chip{max-width:100%;min-width:0}.topbar-mid .panic-chip .who{overflow:hidden;text-overflow:ellipsis;min-width:0}@media (max-width: 900px),(pointer: coarse){input,select,textarea,.input,.select,.textarea,.input.sm,.select.sm{font-size:16px}input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{font-size:16px!important}}@media (pointer: coarse),(max-width: 700px){.btn.sm,.filter-chip,.role-chip,.seg button{min-height:36px}.btn.sm.icon,.btn.icon{min-width:36px;min-height:36px}.input.sm,.select.sm{height:36px}}.main,.content{min-width:0;max-width:100%}@media (max-width: 900px){.main{overflow-x:clip}.panel-head>*{min-width:0}.panel-head .row{flex-wrap:wrap}.kv dd,.kv dt,.cell-sub,.meta{overflow-wrap:anywhere}}.grid>*,.stack>*,.form-panels>*{min-width:0}.inc-log{display:grid;gap:8px;padding:12px 16px;max-height:520px;overflow-y:auto}.inc-msg{padding:9px 12px;border-radius:10px;background:var(--surface-2);border:1px solid var(--line);max-width:92%}.inc-msg.me{margin-left:auto;background:#e8f3fa;border-color:#c4e0f0}.inc-msg.internal{background:#fdf6e7;border-color:#f0dca8}.inc-msg.first{background:#fff}.inc-meta{font-size:12px;color:var(--muted);margin-bottom:3px}.inc-body{font-size:14px;white-space:pre-line;overflow-wrap:anywhere}.inc-event{text-align:center;font-size:12px;color:var(--muted)}.inc-compose{display:grid;gap:8px;padding:12px 16px;border-top:1px solid var(--line);background:var(--surface-2)}.inc-compose .textarea{min-height:70px;background:#fff}.mp{display:grid;gap:8px;max-width:360px}.mp-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.mp-h{text-align:center;font-size:11px;color:var(--muted);font-weight:700}.mp-d{height:34px;border:1px solid var(--line);border-radius:7px;background:var(--surface);font:inherit;font-size:13px;cursor:pointer;color:var(--ink)}.mp-d.out{opacity:.45}.mp-d.on{background:var(--primary);border-color:var(--primary);color:#fff;font-weight:700}.chip-shift .po-tag{margin-left:5px;padding:0 4px;border-radius:4px;background:color-mix(in srgb,var(--primary) 14%,transparent);font-size:10px;font-weight:700;letter-spacing:.02em}.lists-layout{display:grid;grid-template-columns:240px 1fr;gap:16px;align-items:start}.lists-nav{display:grid;gap:2px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:6px}.lists-nav-item{display:flex;justify-content:space-between;align-items:center;gap:8px;text-align:left;padding:9px 10px;border:0;border-radius:8px;background:none;font:inherit;font-size:14px;color:var(--ink);cursor:pointer}.lists-nav-item:hover{background:var(--hover, rgba(0,0,0,.04))}.lists-nav-item[aria-current=true]{background:color-mix(in srgb,var(--primary) 12%,transparent);font-weight:700}.list-edit{list-style:none;margin:0;padding:10px 16px 6px;display:grid;gap:6px}.list-edit li{display:flex;align-items:center;gap:6px}@media (max-width: 900px){.lists-layout{grid-template-columns:1fr}.lists-nav{grid-auto-flow:column;overflow-x:auto}.lists-nav-item{white-space:nowrap}}.req-star{color:var(--danger)}input[type=range].range{accent-color:var(--primary);min-width:0;height:28px}.bk-line{display:grid;gap:10px;padding:14px;border:1px solid var(--line);border-radius:12px}.bk-dates{display:grid;grid-template-columns:minmax(0,360px) minmax(0,1fr);gap:18px;align-items:start}@media (max-width: 900px){.bk-dates{grid-template-columns:1fr}}.mp-d.past:not(.on){background:repeating-linear-gradient(135deg,transparent 0 4px,rgba(127,127,127,.12) 4px 8px),var(--surface)}.mp-d.today{outline:2px solid var(--primary);outline-offset:-2px}.shift-strip{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink);text-decoration:none;box-shadow:var(--shadow-sm, none)}.shift-strip:hover{border-color:var(--primary)}.shift-strip .ico{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:color-mix(in srgb,var(--primary) 12%,transparent);color:var(--primary);flex:none}.shift-strip .btn{flex:none}.sched-list{width:100%;border-collapse:collapse;font-size:14px}.sched-list th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700;padding:8px 16px;border-bottom:1px solid var(--line)}.sched-list td{padding:10px 16px;border-bottom:1px solid var(--line);vertical-align:top}.sched-list tr:last-child td{border-bottom:0}.sched-list td:first-child{width:64px;font-weight:700}.sched-list .right{text-align:right;white-space:nowrap}.sched-list tr.locked td{color:var(--subtle)}.sched-list tr.current td{background:color-mix(in srgb,var(--primary) 7%,transparent)}.sched-list tr.current td:first-child{box-shadow:inset 3px 0 0 var(--primary);color:var(--primary)}.sched-list .act.ok{color:var(--success);font-weight:700}.sched-list .act.warn{color:var(--warn);font-weight:700}.sched-list .act.bad{color:var(--danger);font-weight:700}.sched-list .act.now{color:var(--primary);font-weight:700}.hero-task{margin-top:10px;padding:10px 12px;border-radius:10px;background:#ffffff14;color:#dce9f1;font-size:13px;display:grid;gap:4px}.hero-task b{color:#fff;font-size:15px}.hero-task .cp-dots span{background:#ffffff40}.hero-task .cp-dots span.on{background:#6fd3a0}.hero .hero-actions .btn[disabled]{opacity:.65}.task.overdue{background:color-mix(in srgb,var(--warn) 9%,transparent)}.task.overdue .task-time{color:var(--warn)}.task.locked:not(.next) .task-end:empty{display:none}.btn.ghost-light{background:transparent;border-color:#ffffff4d;color:#dce9f1}.contact-row>.input{flex:1 1 140px;min-width:0}@media (max-width: 900px){.panic-fab{width:62px;height:62px;font-size:10px;border-width:3px}body:has(.panic-fab) .content{padding-bottom:calc(160px + env(safe-area-inset-bottom))}}.shift-strip.due{border-color:var(--warn-line);background:var(--warn-bg)}.nfc-wait{display:flex;align-items:center;gap:12px;padding:12px;border:1px dashed var(--info-line);border-radius:12px;background:var(--info-bg)}.nfc-wait .big-ico{width:46px;height:46px;margin:0;flex:none}.nfc-pulse{animation:nfcPulse 1.6s ease-in-out infinite}@keyframes nfcPulse{0%,to{box-shadow:0 0 #1d6a9459}50%{box-shadow:0 0 0 12px #1d6a9400}}@media (prefers-reduced-motion: reduce){.nfc-pulse{animation:none}}.mt-4{margin-top:4px}.lic-viewer{border:1px solid var(--line);border-radius:12px;background:var(--surface-2);min-height:280px;display:grid;place-items:center;overflow:hidden}.lic-viewer img{max-width:100%;max-height:62vh;display:block}.lic-viewer iframe{width:100%;height:62vh;border:0;background:#fff}.lic-viewer-empty{text-align:center;padding:24px;color:var(--subtle)}.lm-gdot{width:10px;height:10px;border-radius:50%;background:#3c8eb9;border:2px solid #fff;box-shadow:0 1px 3px #0000004d}.lm-gpanic{display:flex;align-items:center;gap:6px;transform-origin:left center}.lm-gpanic i{width:16px;height:16px;border-radius:50%;background:#b42318;border:3px solid #fff;box-shadow:0 0 0 3px #b4231859;flex:none}.lm-gpanic span{background:#b42318;color:#fff;font:700 12px/1.2 var(--font);padding:4px 8px;border-radius:6px;white-space:nowrap}@media (max-width: 700px){.popover.notif-pop{position:fixed;left:12px!important;right:12px!important;top:calc(60px + env(safe-area-inset-top))!important;width:auto!important;max-height:calc(100vh - 160px);overflow-y:auto}}.reader{max-height:62vh;overflow-y:auto;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);-webkit-overflow-scrolling:touch}.reader-pages{display:grid;gap:12px;padding:12px;justify-items:center}.reader-page{background:#fff;box-shadow:0 1px 4px #0000001f;border-radius:4px;max-width:100%}.reader-image{display:block;max-width:100%;margin:0 auto}.reader-text{white-space:pre-wrap;font:14px/1.6 var(--font);margin:0;padding:16px;color:var(--text)}.reader-empty{text-align:center;padding:32px 16px;color:var(--muted)}@media (max-width: 700px){.overlay:has(.reader-modal){padding:0;align-items:stretch}.modal.reader-modal{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border-radius:0;display:flex;flex-direction:column}.modal.reader-modal .modal-body{flex:1;min-height:0;display:flex;flex-direction:column;padding:0}.modal.reader-modal .reader{flex:1;max-height:none;border:0;border-radius:0}.modal.reader-modal .reader-pages{padding:8px;gap:8px}.modal.reader-modal .modal-foot{flex-wrap:wrap}.modal.reader-modal .modal-foot .grow{flex-basis:100%;order:-1}.modal.reader-modal .modal-foot .btn.primary{flex:1}}@media (max-width: 700px){body:has(.reader-modal) .panic-slot{bottom:calc(150px + env(safe-area-inset-bottom))}}.clock-map{height:240px;border-radius:12px;overflow:hidden;border:1px solid var(--line);margin:0 auto 12px;width:100%;max-width:520px}.clock-map,.clock-map *{pointer-events:none!important;cursor:default!important}.cm-pin{display:flex;align-items:center;gap:6px;transform:translate(-50%,-50%);white-space:nowrap}.leaflet-marker-icon .cm-pin{transform:translate(-9px,-9px)}.cm-pin i{width:18px;height:18px;border-radius:50%;border:3px solid #fff;box-shadow:0 1px 4px #00000059;flex:none}.cm-pin.site i{background:#1d6a94}.cm-pin.me i{background:#e8590c;box-shadow:0 0 0 6px #e8590c40}.cm-pin span{background:#05293dd9;color:#fff;font:700 11.5px/1.2 var(--font);padding:3px 7px;border-radius:6px}.cm-pin.me span{background:#e8590c}.feed-toggle{background:none;border:0;padding:0;text-align:left;font:inherit;color:inherit;cursor:pointer}.feed-children{background:var(--surface-2);border-top:1px solid var(--line)}.feed-children .list-row{padding-left:52px}.geo-link{display:inline-flex;align-items:center;gap:3px;font-variant-numeric:tabular-nums;white-space:nowrap}.appmenu{position:relative}.appmenu-panel{position:absolute;right:0;top:calc(100% + 10px);z-index:1100;width:min(23.5rem,calc(100vw - 2rem));max-height:calc(100dvh - 5rem);overflow-y:auto;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:28px;padding:12px;box-shadow:0 24px 60px #05293d38;animation:appmenu-in .17s cubic-bezier(.16,1,.3,1);transform-origin:top right}@keyframes appmenu-in{0%{opacity:0;transform:translateY(-8px) scale(.98)}}@media (prefers-reduced-motion: reduce){.appmenu-panel{animation:none}}@media (max-width: 640px){.appmenu{position:static}.appmenu-panel{position:fixed;left:16px;right:16px;top:64px;width:auto}}.appmenu-head{position:relative;padding:6px 44px 12px;text-align:center}.appmenu-head h2{margin:0;font-size:14px;font-weight:500;color:#475569}.appmenu-close{position:absolute;right:0;top:0;border:0;background:none;border-radius:99px;padding:8px;color:#64748b;cursor:pointer;display:inline-flex}.appmenu-close:hover{background:#e2e8f0;color:#0f172a}.appmenu-card{background:#fff;border-radius:22px;padding:16px;margin-bottom:8px}.appmenu-who{display:flex;align-items:center;gap:14px}.appmenu-avatar{position:relative;flex:none;width:54px;height:54px;border-radius:50%;background:var(--navy);color:#fff;font-weight:700;display:grid;place-items:center;font-size:16px}.appmenu-avatar i{position:absolute;right:2px;bottom:2px;width:12px;height:12px;border-radius:50%;background:#10b981;border:2px solid #fff}.appmenu-names{min-width:0;display:flex;flex-direction:column}.appmenu-names b{font-size:17px;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.appmenu-names span{font-size:13px;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.appmenu-names em{font-style:normal;align-self:flex-start;margin-top:4px;background:#f1f5f9;color:#475569;border-radius:99px;padding:2px 10px;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.appmenu-manage{margin-top:14px;display:flex;width:100%;height:42px;align-items:center;justify-content:center;gap:8px;border:1px solid #cbd5e1;border-radius:99px;background:#fff;color:var(--navy);font:inherit;font-size:14px;font-weight:600;text-decoration:none;cursor:pointer}.appmenu-manage:hover{background:#f8fafc}.appmenu-extra{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 14px;margin-top:10px;font-size:13px}.appmenu-extra a{color:var(--blue);font-weight:600;text-decoration:none}.appmenu-card h3{margin:0 0 6px 6px;font-size:15px;color:#0f172a}.appmenu-apps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.appmenu-apps a{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 4px;border-radius:16px;text-align:center;text-decoration:none;color:#1e293b;font-size:12px;font-weight:600;line-height:1.25}.appmenu-apps a:hover{background:#f1f5f9}.appmenu-apps a[aria-current=page]{background:#eff6ff;box-shadow:inset 0 0 0 2px #bfdbfe}.appmenu-icon{width:46px;height:46px;border-radius:15px;display:grid;place-items:center}.appmenu-icon svg{width:22px;height:22px}.appmenu-icon.sky{background:#f0f9ff;color:#0369a1}.appmenu-icon.navy{background:var(--navy);color:#fff}.appmenu-icon.green{background:#ecfdf5;color:#047857}.appmenu-icon.amber{background:#fffbeb;color:#b45309}.appmenu-icon.slate{background:#f1f5f9;color:#334155}.appmenu-signout{display:flex;width:100%;height:46px;align-items:center;justify-content:center;gap:8px;border:0;border-radius:22px;background:#fff;font:inherit;font-size:14px;font-weight:600;color:#334155;cursor:pointer}.appmenu-signout:hover{background:#f8fafc;color:#0f172a}.appmenu-foot{display:flex;justify-content:center;gap:8px;margin:12px 0 4px;font-size:12px;color:#64748b}.appmenu-foot a{color:inherit;text-decoration:none}.appmenu-foot a:hover{color:#1e293b}.appmenu-avatar.sm{width:32px;height:32px;font-size:12px}:root{--topbar-h: 72px;--hdr-ink: #061c2d;--hdr-hover: #0369a1;--hdr-hover-bg: #f0f9ff}.topbar{position:fixed;top:0;left:0;right:0;z-index:45;height:var(--topbar-h);padding:0 20px;gap:10px;background:#fffffff2;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid rgba(226,232,240,.8);box-shadow:0 1px #0f172a05}.main{padding-top:var(--topbar-h)}.sidebar{inset:var(--topbar-h) auto 0 0}.sidebar-brand{display:none}.topbar-brand{display:flex;align-items:center;gap:10px;flex:none;text-decoration:none;border-radius:8px}@media (min-width: 1024px){.topbar-brand{min-width:calc(var(--sidebar-w) - 20px)}}.topbar-brand img{height:36px;width:auto;display:block}.topbar-brand .tag{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#075985;border-left:1px solid #cbd5e1;padding-left:10px;line-height:20px}.topbar .icon-btn{width:44px;height:44px;border-radius:999px;color:var(--hdr-ink);transition:background-color .15s,color .15s}.topbar .icon-btn:hover{background:var(--hdr-hover-bg);color:var(--hdr-hover)}.topbar .icon-btn .dot{border-color:#fff}.account-btn{height:44px;border-radius:999px;padding:4px 10px 4px 4px;color:var(--hdr-ink);transition:background-color .15s,color .15s}.account-btn:hover,.account-btn[aria-expanded=true]{background:var(--hdr-hover-bg);color:var(--hdr-hover)}.account-btn .chev{transition:transform .2s}.account-btn[aria-expanded=true] .chev{transform:rotate(180deg)}.account-btn .avatar-dot{position:relative;display:inline-grid}.account-btn .avatar-dot:after{content:"";position:absolute;right:0;bottom:0;width:10px;height:10px;border-radius:50%;background:#10b981;border:2px solid #fff}.search-trigger{border-radius:999px;height:40px;padding:0 14px;border-color:#e2e8f0;background:#f8fafc;transition:border-color .15s,color .15s,background-color .15s}.search-trigger:hover{border-color:#bae6fd;background:var(--hdr-hover-bg);color:var(--hdr-hover)}.appmenu-panel{top:calc(100% + 14px)}@media (max-width: 767px){.topbar{background:#fffffff2;border-bottom:1px solid rgba(226,232,240,.8);padding:env(safe-area-inset-top) 10px 0 14px;height:calc(var(--topbar-h) + env(safe-area-inset-top));gap:4px}.topbar .icon-btn{color:var(--hdr-ink)}.topbar .icon-btn:hover{background:var(--hdr-hover-bg);color:var(--hdr-hover)}.topbar .icon-btn .dot{border-color:#fff}.topbar-brand{margin-right:auto}.topbar-brand img{height:32px}.topbar-brand .tag{display:none}.main{padding-top:calc(var(--topbar-h) + env(safe-area-inset-top))}.appmenu-panel{top:calc(var(--topbar-h) + env(safe-area-inset-top) + 8px)}}.sidebar{background:#fff;color:var(--hdr-ink);border-right:1px solid rgba(226,232,240,.9);box-shadow:none}.sidebar nav{padding:14px 12px 18px}.nav-group{margin-top:18px}.nav-label{color:#64748b;font-size:11px;letter-spacing:.12em;padding:0 12px 6px}.nav-item{height:40px;padding:0 12px;border-radius:999px;color:var(--hdr-ink);font-size:14px;font-weight:600;letter-spacing:-.01em;transition:background-color .15s,color .15s}.nav-item svg{opacity:1;color:#475569;transition:color .15s}.nav-item:hover{background:var(--hdr-hover-bg);color:var(--hdr-hover)}.nav-item:hover svg{color:var(--hdr-hover)}.nav-item.active{background:var(--hdr-hover-bg);color:var(--hdr-hover);font-weight:700;box-shadow:inset 0 0 0 1px #bae6fd}.nav-item.active svg{color:var(--hdr-hover)}.nav-item.active:before{left:-12px;top:8px;bottom:8px;width:4px;background:var(--hdr-hover)}.nav-item .count{background:#f1f5f9;color:var(--hdr-ink)}.nav-item.active .count{background:#fff;color:var(--hdr-hover)}.nav-item .count.alert{background:#dc2626;color:#fff}.nav-item:focus-visible{box-shadow:0 0 0 3px #fbbf24}.sidebar-foot{border-top:1px solid #e2e8f0;color:#64748b;background:#f8fafc}.sidebar-branch .branch-switch{background:#f8fafc;border-color:#e2e8f0;color:#475569}.sidebar-branch .branch-switch select{color:var(--hdr-ink)}@media (max-width: 1023px){.sidebar.open{box-shadow:0 24px 60px #05293d38}}.demo-clock{white-space:nowrap}.account-btn{gap:4px;padding:0 6px}.acct-badge{position:relative;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#08273f;color:#fff;font-size:12px;font-weight:700;box-shadow:0 0 0 2px #fff,0 1px 2px #0f172a1f}.acct-badge i{position:absolute;right:0;bottom:0;width:10px;height:10px;border-radius:50%;background:#10b981;border:2px solid #fff}.appmenu-avatar{background:#08273f}.search-input{position:relative;flex:1 1 220px;max-width:320px}.search-input svg{position:absolute;left:11px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}.search-input .input{padding-left:34px}.cv-frame{display:block;width:100%;height:560px;border:1px solid var(--line);border-radius:10px;background:#fff}.mail-row summary{list-style:none;cursor:pointer}.mail-row summary::-webkit-details-marker{display:none}.mail-body{white-space:pre-wrap;padding:4px 14px 14px;color:var(--ink);line-height:1.55}.form-q{display:grid;grid-template-columns:minmax(0,1fr) 190px auto auto;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}.form-q .form-q-options{grid-column:1 / -1}@media (max-width: 760px){.form-q{grid-template-columns:1fr 1fr}}.activity{list-style:none;margin:0;padding:0;position:relative}.activity:before{content:"";position:absolute;left:13px;top:6px;bottom:6px;width:2px;background:var(--line)}.act{position:relative;display:flex;gap:12px;padding:8px 0}.act-ico{position:relative;z-index:1;flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#f1f5f9;color:#475569;box-shadow:0 0 0 3px #fff}.act.good .act-ico{background:#dcfce7;color:#15803d}.act.bad .act-ico{background:#fee2e2;color:#b91c1c}.act.info .act-ico{background:#e0f2fe;color:#0369a1}.act-text{white-space:pre-wrap;margin-top:4px;padding:8px 10px;background:var(--surface-2);border-radius:8px;max-height:160px;overflow:auto}.act .when{font-size:11.5px;color:var(--muted);margin-top:3px}.stars{display:inline-flex;gap:1px;color:#cbd5e1;line-height:1}.stars .on{color:#f59e0b}.stars button{border:0;background:none;padding:0 1px;font-size:18px;cursor:pointer;color:inherit}.stars button.on{color:#f59e0b}.stars button:hover{transform:scale(1.15)}.kcard .stars{font-size:12px}.days{font-size:11px;font-weight:700;color:var(--muted)}.days.slow{color:#b45309}.days.stuck{color:#b91c1c}.kcol.drop{outline:2px dashed var(--hdr-hover);outline-offset:-2px;background:#f0f9ff}.kcard[draggable=true]{cursor:grab}.kcard.dragging{opacity:.45}.bulkbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 12px;margin-bottom:10px;background:#f0f9ff;border:1px solid #bae6fd;border-radius:10px}.ap-back{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:var(--muted);text-decoration:none;margin-bottom:12px}.ap-back:hover{color:var(--hdr-hover)}.ap-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px 24px;padding:22px 24px}.ap-who{display:flex;gap:18px;min-width:0}.ap-avatar{flex:none;width:64px;height:64px;border-radius:50%;background:#08273f;color:#fff;display:grid;place-items:center;font-size:22px;font-weight:700;box-shadow:0 0 0 3px #fff,0 0 0 4px #e2e8f0}.ap-names{min-width:0}.ap-names h1{margin:0;font-size:26px;line-height:1.15;color:var(--ink)}.ap-job{margin:4px 0 0;font-size:15px;font-weight:600;color:#075985}.ap-contact{display:flex;flex-wrap:wrap;gap:4px 16px;margin:8px 0 0;font-size:14px}.ap-contact a{display:inline-flex;align-items:center;gap:6px;color:var(--ink);text-decoration:none}.ap-contact a:hover{color:var(--hdr-hover)}.ap-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin-top:10px}.ap-meta .stars button{font-size:20px}.ap-actions{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:flex-end;gap:8px}.ap-steps{grid-column:1 / -1;list-style:none;margin:4px 0 0;padding:14px 0 0;border-top:1px solid var(--line);display:flex;gap:0;overflow-x:auto}.ap-steps li{flex:1 1 0;min-width:96px;display:flex;flex-direction:column;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:var(--muted);position:relative}.ap-steps li:before{content:"";position:absolute;top:13px;left:calc(-50% + 16px);right:calc(50% + 16px);height:2px;background:var(--line)}.ap-steps li:first-child:before{display:none}.ap-steps .dot{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#f1f5f9;color:var(--muted);font-size:12px;font-weight:700;border:2px solid var(--line);position:relative;z-index:1}.ap-steps li.done{color:var(--ink)}.ap-steps li.done .dot{background:#dcfce7;color:#15803d;border-color:#86efac}.ap-steps li.done:before,.ap-steps li.current:before{background:#86efac}.ap-steps li.current{color:var(--hdr-hover)}.ap-steps li.current .dot{background:var(--hdr-hover);color:#fff;border-color:var(--hdr-hover);box-shadow:0 0 0 4px #e0f2fe}.ap-steps li.rejected{color:#b91c1c}.ap-steps li.rejected .dot{background:#fee2e2;color:#b91c1c;border-color:#fca5a5}.ap-blocked{grid-column:1 / -1;margin:0;font-size:13.5px;color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:10px;padding:10px 12px}.ap-blocked .linkish{margin-left:8px}.linkish{border:0;background:none;padding:0;font:inherit;font-weight:700;color:var(--hdr-hover);cursor:pointer;text-decoration:underline;text-underline-offset:3px}.ap-grid{display:grid;gap:16px;grid-template-columns:minmax(0,1fr);margin-top:16px;align-items:start}@media (min-width: 1180px){.ap-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}.ap-cv{position:sticky;top:calc(var(--topbar-h) + 16px)}}.ap-card{padding:18px 20px}.ap-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.ap-card-head h3{margin:0;font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#075985}.ap-musts{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.ap-musts li{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;font-weight:600;padding:4px 10px;border-radius:999px}.ap-musts .ok{background:#dcfce7;color:#166534}.ap-musts .no{background:#fee2e2;color:#991b1b}.ap-history{list-style:none;margin:0;padding:0}.ap-history li{display:flex;flex-direction:column;padding:8px 0 8px 14px;border-left:2px solid #bae6fd}.ap-history li+li{margin-top:4px}.ap-history b{font-size:14px}.ap-history span{font-size:13.5px;color:var(--ink)}.cv-frame.tall{height:min(78vh,980px)}.ap-pad{padding:18px 20px;margin-top:16px}.ap-two{display:grid;gap:16px;grid-template-columns:minmax(0,1fr)}@media (min-width: 1080px){.ap-two{grid-template-columns:1fr 1fr}}@media (max-width: 760px){.ap-head{grid-template-columns:1fr;padding:18px}.ap-actions{justify-content:flex-start}.ap-avatar{width:52px;height:52px;font-size:18px}.ap-names h1{font-size:22px}}.scr-cover{margin-top:14px}.scr-bar{display:flex;height:18px;border-radius:6px;overflow:hidden;background:#fee2e2}.scr-bar span{flex:1 1 0;border-right:1px solid rgba(255,255,255,.6)}.scr-bar span:last-child{border-right:0}.k-employed{background:#075985}.k-self-employed{background:#0e7490}.k-education{background:#7c3aed}.k-unemployed{background:#94a3b8}.k-abroad{background:#d97706}.k-other{background:#64748b}.scr-bar .gap,.scr-key .gap{background:repeating-linear-gradient(45deg,#fecaca 0,#fecaca 4px,#fee2e2 4px,#fee2e2 8px)}.scr-axis{display:flex;justify-content:space-between;margin-top:4px}.scr-key{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:8px;color:var(--ink)}.scr-key span{display:inline-flex;align-items:center;gap:6px}.scr-key i{width:12px;height:12px;border-radius:3px;display:inline-block}.scr-part{padding:18px 20px;border-left:4px solid #cbd5e1}.scr-part.v-verified{border-left-color:#16a34a}.scr-part.v-discrepancy{border-left-color:#dc2626}.scr-part.v-unverified{border-left-color:#d97706}.scr-part-head{display:flex;align-items:flex-start;gap:12px}.scr-part-head h3{margin:2px 0;font-size:18px;color:var(--ink);overflow-wrap:anywhere}.scr-form{padding:12px 14px;background:var(--surface-2);border-radius:10px}.scr-compare{width:100%;border-collapse:collapse;font-size:13.5px}.scr-compare th,.scr-compare td{text-align:left;padding:6px 8px;border-bottom:1px solid var(--line);vertical-align:top}.scr-compare thead th{font-size:11.5px;color:var(--muted);font-weight:700}.scr-compare tr.differs td:last-child{color:#b91c1c;font-weight:700}.scr-compare .ok{display:inline-flex;align-items:center;gap:4px;color:#15803d;font-weight:600}.scr-answers{margin:10px 0 0;display:grid;gap:8px}.scr-answers dt{font-size:12px;color:var(--muted);font-weight:600}.scr-answers dd{margin:2px 0 0;font-size:14px;white-space:pre-wrap}.scr-trail{list-style:none;margin:14px 0 0;padding:12px 0 0;border-top:1px solid var(--line);display:grid;gap:10px}.scr-msg{display:flex;gap:10px}.scr-ico{flex:none;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#f1f5f9;color:#475569;margin-top:2px}.scr-msg.in .scr-ico{background:#e0f2fe;color:#0369a1}.scr-msg.note .scr-ico{background:#fef3c7;color:#b45309}.mt-12{margin-top:12px}
