@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-ext-400-normal-BtiwyxMk.woff2) format("woff2"),url(/assets/dm-sans-latin-ext-400-normal-BjWJ59Pq.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,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:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-400-normal-CW0RaeGs.woff2) format("woff2"),url(/assets/dm-sans-latin-400-normal-BwCSEQnW.woff) format("woff");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+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-ext-500-normal-BJfUCQsA.woff2) format("woff2"),url(/assets/dm-sans-latin-ext-500-normal-DR84L5F-.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,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:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-500-normal-B9HHJjqV.woff2) format("woff2"),url(/assets/dm-sans-latin-500-normal-Dr3UlScf.woff) format("woff");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+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/dm-sans-latin-ext-600-normal-4vooXBpG.woff2) format("woff2"),url(/assets/dm-sans-latin-ext-600-normal-DRtaDpgU.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,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:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/dm-sans-latin-600-normal-Aqo67rzb.woff2) format("woff2"),url(/assets/dm-sans-latin-600-normal-BmdmIIQ2.woff) format("woff");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+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/dm-sans-latin-ext-700-normal-CJIcxD6K.woff2) format("woff2"),url(/assets/dm-sans-latin-ext-700-normal-BLI3TTWz.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,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:DM Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/dm-sans-latin-700-normal-DvUfVpUG.woff2) format("woff2"),url(/assets/dm-sans-latin-700-normal-CUSSCpQX.woff) format("woff");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+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fraunces-vietnamese-600-normal-BjlAJixd.woff2) format("woff2"),url(/assets/fraunces-vietnamese-600-normal-DlAl5EAR.woff) format("woff");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:Fraunces;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fraunces-latin-ext-600-normal-BtzmzP0X.woff2) format("woff2"),url(/assets/fraunces-latin-ext-600-normal-B0Dy4lqi.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,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:Fraunces;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fraunces-latin-600-normal-BFCDtZfi.woff2) format("woff2"),url(/assets/fraunces-latin-600-normal-DL5QCzvS.woff) format("woff");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+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fraunces-vietnamese-700-normal-DH94m5DZ.woff2) format("woff2"),url(/assets/fraunces-vietnamese-700-normal-DxawQjq2.woff) format("woff");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:Fraunces;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fraunces-latin-ext-700-normal-CanUGppC.woff2) format("woff2"),url(/assets/fraunces-latin-ext-700-normal-DuBstVeD.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,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:Fraunces;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fraunces-latin-700-normal-CEOla-zY.woff2) format("woff2"),url(/assets/fraunces-latin-700-normal-DTjk5d1Q.woff) format("woff");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+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff) format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff");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+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff) format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff) format("woff");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+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--teal-50: #eefaf6;--teal-100: #d6f2e9;--teal-200: #aee4d4;--teal-400: #3d9c85;--teal-500: #12836a;--teal-600: #0d6e59;--teal-700: #0a5746;--teal-900: #073b30;--ink: #12211d;--ink-soft: #354843;--muted: #5f746e;--faint: #8ba09a;--line: #dfe9e5;--line-strong: #c4d5cf;--bg: #f2f7f5;--panel: #ffffff;--panel-soft: #f8fbfa;--ok: #0e7a45;--ok-bg: #e6f6ed;--danger: #b42318;--danger-bg: #fdecea;--warn: #9a6510;--warn-bg: #fdf3e0;--info: #1d5c96;--info-bg: #eaf3fc;--sand: #f6efe2;--sand-ink: #7c5c1e;--shadow-xs: 0 1px 2px rgba(10, 40, 32, .05);--shadow-sm: 0 2px 8px rgba(10, 40, 32, .06), 0 1px 2px rgba(10, 40, 32, .04);--shadow-md: 0 8px 24px rgba(10, 40, 32, .08), 0 2px 6px rgba(10, 40, 32, .04);--shadow-lg: 0 24px 56px rgba(10, 40, 32, .14), 0 6px 16px rgba(10, 40, 32, .06);--radius-sm: 10px;--radius: 14px;--radius-lg: 20px;--font: "DM Sans", system-ui, -apple-system, sans-serif;--display: "Fraunces", Georgia, serif;--mono: "IBM Plex Mono", ui-monospace, "SF Mono", monospace;--sidebar-w: 264px;--topbar-h: 68px}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}html,body,#root{min-height:100%}body{margin:0;color:var(--ink);font-family:var(--font);font-size:15px;line-height:1.55;background:radial-gradient(1100px 480px at 0% -10%,rgba(18,131,106,.09),transparent 55%),radial-gradient(900px 420px at 105% 0%,rgba(214,184,122,.12),transparent 50%),var(--bg);background-attachment:fixed;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}h1,h2,h3,h4{line-height:1.25}a{color:var(--teal-600)}:focus-visible{outline:2px solid var(--teal-500);outline-offset:2px;border-radius:6px}::selection{background:var(--teal-100)}.mono{font-family:var(--mono);font-size:.85em}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-layout{display:grid;grid-template-columns:var(--sidebar-w) minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;align-self:start;height:100vh;display:flex;flex-direction:column;gap:.5rem;padding:1.25rem .9rem 1.1rem;background:linear-gradient(180deg,#fffffff0,#f4faf8f5);border-right:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:30}.sidebar-brand{display:flex;align-items:center;gap:.7rem;padding:.3rem .55rem 1rem}.brand-mark{flex:0 0 auto;width:2.5rem;height:2.5rem;display:grid;place-items:center;border-radius:13px;background:linear-gradient(145deg,var(--teal-500),var(--teal-700));color:#fff;font-family:var(--display);font-weight:700;font-size:1rem;letter-spacing:.02em;box-shadow:0 8px 18px #0d6e5947,inset 0 1px #ffffff40}.sidebar-brand .brand-text strong{display:block;font-family:var(--display);font-size:1.3rem;font-weight:700;letter-spacing:-.02em;color:var(--teal-900)}.sidebar-brand .brand-text span{display:block;color:var(--muted);font-size:.72rem;line-height:1.35;margin-top:.1rem}.sidebar-nav{display:flex;flex-direction:column;gap:.3rem;flex:1;overflow-y:auto}.sidebar-nav button{position:relative;border:0;text-align:left;border-radius:var(--radius-sm);padding:.62rem .75rem;background:transparent;color:var(--ink-soft);font-weight:600;font-size:.93rem;display:flex;align-items:center;gap:.7rem;transition:background .15s ease,color .15s ease}.sidebar-nav button .nav-icon{flex:0 0 auto;width:2.1rem;height:2.1rem;display:grid;place-items:center;border-radius:9px;background:transparent;color:var(--faint);transition:background .15s ease,color .15s ease}.sidebar-nav button:hover{background:#12836a12;color:var(--teal-700)}.sidebar-nav button:hover .nav-icon{color:var(--teal-600)}.sidebar-nav button.active{background:var(--teal-50);color:var(--teal-700);box-shadow:inset 0 0 0 1px var(--teal-100)}.sidebar-nav button.active .nav-icon{background:linear-gradient(145deg,var(--teal-500),var(--teal-600));color:#fff;box-shadow:0 4px 10px #0d6e594d}.sidebar-foot{display:flex;flex-direction:column;gap:.6rem;padding-top:.85rem;border-top:1px solid var(--line)}.user-chip{display:flex;align-items:center;gap:.6rem;padding:.45rem .55rem;border-radius:var(--radius-sm);background:var(--panel-soft);border:1px solid var(--line)}.avatar{flex:0 0 auto;width:2.1rem;height:2.1rem;display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,var(--teal-400),var(--teal-600));color:#fff;font-weight:700;font-size:.82rem;text-transform:uppercase}.user-chip .user-meta{min-width:0;flex:1}.user-chip .user-meta strong{display:block;font-size:.88rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-chip .user-meta span{display:block;font-size:.72rem;color:var(--muted)}.app-main{min-width:0;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:25;display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:var(--topbar-h);padding:.7rem clamp(1rem,2.5vw,1.9rem);background:#f7fbf9db;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.topbar-title h1{margin:0;font-family:var(--display);font-weight:700;font-size:clamp(1.15rem,2vw,1.45rem);letter-spacing:-.02em;color:var(--teal-900)}.topbar-title p{margin:.1rem 0 0;color:var(--muted);font-size:.8rem;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.topbar-right{display:flex;align-items:center;gap:.55rem;flex:0 0 auto}.page-body{flex:1;padding:clamp(1rem,2.5vw,1.75rem) clamp(1rem,2.5vw,1.9rem) 2.5rem;max-width:1280px;width:100%;margin:0 auto;animation:rise .3s ease both}.bottom-nav,.topbar-logout{display:none}.login-screen{min-height:100vh;display:grid;place-items:center;padding:1.5rem;background:radial-gradient(760px 420px at 12% 8%,rgba(18,131,106,.14),transparent 55%),radial-gradient(680px 380px at 92% 0%,rgba(214,184,122,.2),transparent 50%),linear-gradient(165deg,#e4f0eb,#f2f7f5 45%,#e9f1ed)}.login-card{width:min(430px,100%);padding:2rem 1.9rem;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:rise .45s ease both}.login-brand{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.55rem;margin-bottom:1.6rem}.login-brand .brand-mark{width:3.1rem;height:3.1rem;font-size:1.15rem;border-radius:16px}.login-kicker{margin:0;font-size:.7rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--teal-500)}.login-card h1{margin:0;font-family:var(--display);font-size:1.75rem;letter-spacing:-.02em;color:var(--teal-900)}.login-card .lede{margin:.3rem 0 0;color:var(--muted);font-size:.9rem}.login-card .field+.field{margin-top:.9rem}.login-card .actions{margin-top:1.35rem}.login-note{display:flex;align-items:center;justify-content:center;gap:.4rem;margin:1.1rem 0 0;color:var(--faint);font-size:.75rem}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);animation:rise .3s ease both}.panel-header{display:flex;align-items:flex-start;gap:.9rem;padding:1.25rem 1.4rem .3rem}.panel-header .header-icon{flex:0 0 auto;width:2.6rem;height:2.6rem;display:grid;place-items:center;border-radius:12px;background:var(--teal-50);color:var(--teal-600);border:1px solid var(--teal-100)}.panel-header .header-text{flex:1;min-width:0}.panel-header .header-actions{flex:0 0 auto;display:flex;gap:.5rem;align-items:center}.panel-header h2{margin:0;font-family:var(--display);font-weight:700;font-size:1.2rem;letter-spacing:-.015em;color:var(--teal-900)}.panel-header p{margin:.3rem 0 0;color:var(--muted);font-size:.88rem;line-height:1.5}.panel-body{padding:1rem 1.4rem 1.4rem}.section-label{display:flex;align-items:center;gap:.45rem;margin:1.3rem 0 .7rem;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}.section-label:first-child{margin-top:.2rem}.section-label svg{color:var(--teal-400)}.dash-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem}.stat-card{position:relative;text-align:left;border:1px solid var(--line);border-radius:var(--radius);padding:1rem 1.05rem;background:linear-gradient(165deg,#fff,var(--panel-soft));box-shadow:var(--shadow-xs);display:flex;flex-direction:column;gap:.45rem;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}button.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--teal-200)}.stat-card .stat-top{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.icon-tile{width:2.3rem;height:2.3rem;flex:0 0 auto;display:grid;place-items:center;border-radius:10px;background:var(--teal-50);color:var(--teal-600);border:1px solid var(--teal-100)}.icon-tile.sand{background:var(--sand);color:var(--sand-ink);border-color:#eadfc6}.icon-tile.info{background:var(--info-bg);color:var(--info);border-color:#cfe0f2}.stat-label{font-size:.74rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.stat-value{font-family:var(--display);font-weight:700;font-size:1.6rem;letter-spacing:-.02em;color:var(--teal-900);line-height:1.1}.stat-hint{color:var(--faint);font-size:.78rem;line-height:1.4}.stat-card .go-arrow{position:absolute;right:.8rem;bottom:.8rem;color:var(--teal-400);opacity:0;transform:translate(-4px);transition:opacity .15s ease,transform .15s ease}button.stat-card:hover .go-arrow{opacity:1;transform:translate(0)}.dash-two{display:grid;grid-template-columns:1fr 1fr;gap:.9rem;margin-top:.9rem}.mini-card{border:1px solid var(--line);border-radius:var(--radius);padding:1rem 1.1rem;background:var(--panel-soft)}.mini-card h3{display:flex;align-items:center;gap:.5rem;margin:0 0 .7rem;font-size:.92rem;font-weight:700;color:var(--ink)}.mini-card h3 svg{color:var(--teal-500)}.endpoint-line{display:flex;align-items:baseline;gap:.55rem;padding:.45rem 0;flex-wrap:wrap}.endpoint-line+.endpoint-line{border-top:1px dashed var(--line)}.endpoint-line .mono{color:var(--ink-soft);overflow-wrap:anywhere}.quick-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.7rem;margin-top:.9rem}.quick-action{display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);font-weight:600;font-size:.92rem;color:var(--ink-soft);text-align:left;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.quick-action:hover{border-color:var(--teal-200);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.quick-action .icon-tile{background:linear-gradient(145deg,var(--teal-500),var(--teal-600));color:#fff;border:0;box-shadow:0 4px 10px #0d6e5940}.job-list{display:flex;flex-direction:column}.job-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:.9rem;padding:.75rem .35rem;border-radius:var(--radius-sm)}.job-row+.job-row{border-top:1px solid var(--line)}.job-row .job-id{font-family:var(--mono);font-size:.8rem;color:var(--ink-soft)}.job-row .job-count{color:var(--muted);font-size:.85rem;white-space:nowrap}.mini-progress{width:110px;height:6px;border-radius:999px;background:var(--line);overflow:hidden}.mini-progress span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--teal-400),var(--teal-600))}.field{display:flex;flex-direction:column;gap:.35rem;min-width:0}.field label{font-size:.8rem;font-weight:600;color:var(--ink-soft)}.field input,.field select,.field textarea,.password-wrap input{width:100%;border:1px solid var(--line-strong);border-radius:var(--radius-sm);padding:.62rem .8rem;background:#fff;color:var(--ink);outline:none;transition:border-color .15s ease,box-shadow .15s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none}.field select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%235f746e' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='m5 9 7 7 7-7'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .7rem center;padding-right:2rem}.field input:hover,.field select:hover,.field textarea:hover,.password-wrap input:hover{border-color:var(--teal-400)}.field input:focus,.field select:focus,.field textarea:focus,.password-wrap input:focus{border-color:var(--teal-500);box-shadow:0 0 0 3px #12836a24}.field input:disabled,.field select:disabled{background:var(--panel-soft);color:var(--faint);cursor:not-allowed}.field input.readonly{background:var(--panel-soft);color:var(--muted)}.field input::placeholder,.field textarea::placeholder{color:var(--faint)}.password-wrap{position:relative}.password-wrap input{padding-right:2.7rem}.password-toggle{position:absolute;top:50%;right:.45rem;transform:translateY(-50%);display:grid;place-items:center;width:2rem;height:2rem;border:0;border-radius:8px;background:transparent;color:var(--faint);transition:color .15s ease,background .15s ease}.password-toggle:hover{color:var(--teal-600);background:var(--teal-50)}.hint{margin:.2rem 0 0;color:var(--muted);font-size:.78rem;line-height:1.45}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem 1rem}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem 1rem}.field.span-2{grid-column:span 2}.actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.1rem;align-items:center}.switch-row{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem .85rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel-soft)}.switch-row .switch-text{flex:1;min-width:0}.switch-row .switch-text strong{display:block;font-size:.9rem}.switch-row .switch-text span{display:block;color:var(--muted);font-size:.78rem;margin-top:.1rem}.switch{flex:0 0 auto;position:relative;width:2.6rem;height:1.5rem;border:0;border-radius:999px;background:var(--line-strong);transition:background .18s ease;padding:0}.switch .switch-knob{position:absolute;top:3px;left:3px;width:calc(1.5rem - 6px);height:calc(1.5rem - 6px);border-radius:50%;background:#fff;box-shadow:var(--shadow-xs);transition:transform .18s ease}.switch.on{background:var(--teal-500)}.switch.on .switch-knob{transform:translate(1.1rem)}.switch:disabled{opacity:.5;cursor:not-allowed}.segmented{display:inline-grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:.3rem;padding:.3rem;border-radius:999px;background:#e9f2ee;border:1px solid var(--line);width:100%;max-width:440px}.segmented button{display:flex;align-items:center;justify-content:center;gap:.45rem;border:0;border-radius:999px;padding:.55rem .9rem;background:transparent;color:var(--ink-soft);font-weight:600;font-size:.9rem;white-space:nowrap;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.segmented button:hover{color:var(--teal-700)}.segmented button.active{background:#fff;color:var(--teal-700);box-shadow:var(--shadow-sm)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:1px solid transparent;border-radius:999px;padding:.6rem 1.15rem;font-weight:600;font-size:.92rem;text-decoration:none;white-space:nowrap;transition:transform .12s ease,background .15s ease,box-shadow .15s ease,border-color .15s ease,opacity .15s ease}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(145deg,var(--teal-500),var(--teal-600));color:#fff;box-shadow:0 6px 14px #0d6e5940,inset 0 1px #ffffff2e}.btn-primary:hover:not(:disabled){background:linear-gradient(145deg,var(--teal-600),var(--teal-700));box-shadow:0 8px 18px #0d6e5952,inset 0 1px #ffffff2e}.btn-secondary{background:var(--teal-50);color:var(--teal-700);border-color:var(--teal-100)}.btn-secondary:hover:not(:disabled){background:var(--teal-100)}.btn-ghost{background:#fff;color:var(--ink-soft);border-color:var(--line-strong)}.btn-ghost:hover:not(:disabled){border-color:var(--teal-400);color:var(--teal-700);background:var(--teal-50)}.btn-danger{background:var(--danger-bg);color:var(--danger);border-color:#f2c8c3}.btn-danger:hover:not(:disabled){background:#fadcd8}.btn-block{width:100%}.btn-sm{padding:.42rem .85rem;font-size:.84rem}.icon-btn{display:inline-grid;place-items:center;width:2.35rem;height:2.35rem;border:1px solid var(--line-strong);border-radius:999px;background:#fff;color:var(--ink-soft);transition:border-color .15s ease,color .15s ease,background .15s ease}.icon-btn:hover{border-color:var(--teal-400);color:var(--teal-700);background:var(--teal-50)}.icon-btn.danger:hover{border-color:#e4a49d;color:var(--danger);background:var(--danger-bg)}.spinner{display:inline-block;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:spin .7s linear infinite;flex:0 0 auto}@keyframes spin{to{transform:rotate(360deg)}}.badge{display:inline-flex;align-items:center;gap:.35rem;border-radius:999px;padding:.24rem .7rem;background:var(--teal-50);border:1px solid var(--teal-100);color:var(--teal-700);font-size:.76rem;font-weight:600;white-space:nowrap}.badge-sand{background:var(--sand);border-color:#eadfc6;color:var(--sand-ink)}.pill{display:inline-flex;align-items:center;gap:.3rem;border-radius:999px;padding:.2rem .62rem;font-size:.74rem;font-weight:700;letter-spacing:.02em;white-space:nowrap}.pill:before{content:"";width:.4rem;height:.4rem;border-radius:50%;background:currentColor}.pill-ok{background:var(--ok-bg);color:var(--ok)}.pill-danger{background:var(--danger-bg);color:var(--danger)}.pill-warn{background:var(--warn-bg);color:var(--warn)}.pill-info{background:var(--info-bg);color:var(--info)}.pill-neutral{background:#edf3f1;color:var(--muted)}.filter-chips{display:flex;flex-wrap:wrap;gap:.4rem}.filter-chip{border:1px solid var(--line-strong);background:#fff;border-radius:999px;padding:.38rem .85rem;font-size:.83rem;font-weight:600;color:var(--ink-soft);transition:all .15s ease}.filter-chip:hover{border-color:var(--teal-400);color:var(--teal-700)}.filter-chip.active{background:var(--teal-600);border-color:var(--teal-600);color:#fff;box-shadow:0 4px 10px #0d6e5940}.chip-row{display:flex;flex-wrap:wrap;gap:.45rem}.chip{border:1px solid var(--line-strong);background:#fff;border-radius:999px;padding:.35rem .75rem;font-size:.8rem;font-weight:600;color:var(--ink-soft);font-family:var(--mono);transition:all .15s ease}.chip:hover{border-color:var(--teal-400)}.chip.active{background:var(--teal-600);border-color:var(--teal-600);color:#fff}.status{display:flex;align-items:flex-start;gap:.6rem;margin-top:.9rem;padding:.75rem .95rem;border-radius:var(--radius-sm);font-size:.9rem;line-height:1.5;animation:rise .25s ease both}.status svg{flex:0 0 auto;margin-top:.15rem}.status-error{background:var(--danger-bg);color:var(--danger);border:1px solid #f2c8c3}.status-info{background:var(--info-bg);color:var(--info);border:1px solid #cfe0f2}.status-ok{background:var(--ok-bg);color:var(--ok);border:1px solid #bfe3cf}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:#fff}table{width:100%;border-collapse:collapse;font-size:.9rem}th,td{text-align:left;padding:.7rem .85rem;border-bottom:1px solid var(--line);vertical-align:middle}th{background:var(--panel-soft);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);white-space:nowrap}tbody tr{transition:background .12s ease}tbody tr:hover{background:var(--panel-soft)}tr:last-child td{border-bottom:0}tr.selected{background:var(--teal-50);box-shadow:inset 3px 0 0 var(--teal-500)}td .btn{padding:.38rem .85rem;font-size:.83rem}.workspace{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:1.1rem;align-items:start}.workspace-main,.workspace-side{display:flex;flex-direction:column;gap:1.1rem;min-width:0}.workspace-side{position:sticky;top:calc(var(--topbar-h) + 1rem)}.selected-subject{display:flex;align-items:center;gap:.8rem;padding:.9rem 1rem;border-radius:var(--radius);background:linear-gradient(135deg,var(--teal-50),var(--sand));border:1px solid var(--teal-100);margin-bottom:1rem}.selected-subject .icon-tile{width:2.5rem;height:2.5rem;border-radius:11px;background:#fff;box-shadow:var(--shadow-xs)}.selected-subject .subject-meta{min-width:0}.selected-subject strong{display:block;font-family:var(--display);font-size:1.02rem;color:var(--teal-900);overflow-wrap:anywhere}.selected-subject span{display:block;color:var(--muted);font-size:.8rem}.download-stack{display:flex;flex-direction:column;gap:1.2rem}.download-block{padding:1rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel-soft)}.download-block h3{display:flex;align-items:center;gap:.5rem;margin:0 0 .75rem;font-size:.95rem}.download-block h3 svg{color:var(--teal-500)}.download-block .actions{margin-top:.9rem}.empty-side{display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:1.6rem 1.2rem;border-radius:var(--radius);background:var(--panel-soft);border:1px dashed var(--line-strong);color:var(--muted);text-align:center;font-size:.9rem;line-height:1.5}.empty-side svg{color:var(--faint);margin-bottom:.3rem}.batch-steps{display:flex;flex-direction:column;gap:1.1rem}.step{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.9rem}.step-rail{display:flex;flex-direction:column;align-items:center;gap:.4rem}.step-num{width:2rem;height:2rem;flex:0 0 auto;display:grid;place-items:center;border-radius:50%;background:var(--teal-50);border:1px solid var(--teal-200);color:var(--teal-700);font-weight:700;font-size:.85rem}.step.done .step-num{background:linear-gradient(145deg,var(--teal-500),var(--teal-600));border-color:transparent;color:#fff}.step-rail .step-line{flex:1;width:2px;border-radius:2px;background:var(--line);min-height:1rem}.step-body{min-width:0;padding-bottom:.3rem}.step-body h3{margin:.25rem 0 .65rem;font-size:.98rem;font-weight:700}.dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.45rem;padding:1.7rem 1.2rem;border:2px dashed var(--line-strong);border-radius:var(--radius);background:var(--panel-soft);text-align:center;color:var(--muted);transition:border-color .15s ease,background .15s ease,transform .15s ease;cursor:pointer;width:100%}.dropzone:hover,.dropzone:focus-visible{border-color:var(--teal-400);background:var(--teal-50)}.dropzone.dragging{border-color:var(--teal-500);background:var(--teal-50);transform:scale(1.01)}.dropzone.has-file{border-style:solid;border-color:var(--teal-200);background:var(--teal-50)}.dropzone .dz-icon{width:2.9rem;height:2.9rem;display:grid;place-items:center;border-radius:13px;background:#fff;color:var(--teal-500);border:1px solid var(--teal-100);box-shadow:var(--shadow-xs)}.dropzone strong{color:var(--ink);font-size:.95rem}.dropzone .dz-hint{font-size:.8rem;color:var(--faint);max-width:56ch}.dropzone .dz-file{display:flex;align-items:center;gap:.6rem;font-weight:600;color:var(--teal-700);flex-wrap:wrap;justify-content:center}.batch-grid{display:grid;grid-template-columns:1fr 1fr;gap:.9rem}.batch-card{border:1px solid var(--line);border-radius:var(--radius);padding:1rem 1.05rem;background:var(--panel-soft)}.batch-card h3{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin:0 0 .7rem;font-size:.95rem}.batch-card h3 .h3-left{display:flex;align-items:center;gap:.5rem}.batch-card h3 svg{color:var(--teal-500)}.progress-top{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;margin-bottom:.4rem}.progress-top .pct{font-family:var(--display);font-weight:700;font-size:1.35rem;color:var(--teal-900)}.progress-top .counts{color:var(--muted);font-size:.82rem;font-family:var(--mono)}.progress-wrap{height:10px;border-radius:999px;background:#dce9e4;overflow:hidden}.progress-bar{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--teal-400),var(--teal-600));transition:width .3s ease}.progress-bar.running{background-image:linear-gradient(-45deg,rgba(255,255,255,.28) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.28) 50%,rgba(255,255,255,.28) 75%,transparent 75%);background-size:22px 22px;animation:stripes .9s linear infinite}@keyframes stripes{to{background-position:22px 0}}.stat-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.stat-tile{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.6rem .75rem;border-radius:var(--radius-sm);background:#fff;border:1px solid var(--line);font-size:.85rem}.stat-tile .tile-label{display:flex;align-items:center;gap:.4rem;color:var(--muted);font-weight:600}.stat-tile .tile-label .dot{width:.5rem;height:.5rem;border-radius:50%;background:var(--line-strong)}.stat-tile.ok .dot{background:var(--ok)}.stat-tile.bad .dot{background:var(--danger)}.stat-tile.data .dot{background:var(--info)}.stat-tile.empty .dot{background:var(--warn)}.stat-tile strong{font-family:var(--display);font-size:1.15rem;color:var(--teal-900)}.endpoint-footnote{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.2rem;padding-top:1rem;border-top:1px dashed var(--line)}.library-toolbar{display:flex;flex-wrap:wrap;gap:.7rem;align-items:center;margin-bottom:1rem}.search-field{position:relative;flex:1;min-width:220px}.search-field svg{position:absolute;left:.85rem;top:50%;transform:translateY(-50%);color:var(--faint);pointer-events:none}.search-field input{width:100%;border:1px solid var(--line-strong);border-radius:999px;padding:.6rem 1rem .6rem 2.6rem;background:#fff;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.search-field input:focus{border-color:var(--teal-500);box-shadow:0 0 0 3px #12836a24}.library-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;color:var(--muted);font-size:.82rem;margin-bottom:.8rem}.config-stack{display:flex;flex-direction:column;gap:1.1rem}.cron-source-card{margin-top:.85rem;padding:1rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel-soft)}.cron-source-head{display:flex;align-items:center;gap:.6rem;margin-bottom:.8rem}.cron-source-head .spacer{flex:1}.cron-source-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.9fr) minmax(0,1.8fr);gap:.7rem}.source-actions{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.9rem}.users-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 150px auto;gap:.7rem;align-items:end;margin-bottom:1rem}.empty-state{display:flex;flex-direction:column;align-items:center;gap:.4rem;padding:2.4rem 1.4rem;text-align:center;color:var(--muted)}.empty-state-icon{width:3.2rem;height:3.2rem;display:grid;place-items:center;border-radius:15px;background:var(--teal-50);border:1px solid var(--teal-100);color:var(--teal-400);margin-bottom:.4rem}.empty-state strong{color:var(--ink);font-size:1rem}.empty-state p{margin:0;font-size:.87rem;max-width:42ch}.skeleton{display:flex;flex-direction:column;gap:.65rem;padding:.4rem 0}.skeleton span{height:.95rem;border-radius:6px;background:linear-gradient(90deg,#e8efec 25%,#f2f7f5,#e8efec 75%);background-size:200% 100%;animation:shimmer 1.4s ease infinite}@keyframes shimmer{to{background-position:-200% 0}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;padding:1.25rem;background:#0a1e1980;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fade .18s ease both}.modal-card{width:min(440px,100%);max-height:calc(100vh - 2.5rem);overflow-y:auto;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:pop .22s ease both}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:1.05rem 1.2rem;border-bottom:1px solid var(--line)}.modal-header h3{margin:0;font-family:var(--display);font-size:1.1rem;color:var(--teal-900)}.modal-body{padding:1.2rem}.modal-body .field+.field{margin-top:.9rem}.toast-host{position:fixed;bottom:1.25rem;right:1.25rem;z-index:80;display:flex;flex-direction:column;gap:.55rem;max-width:min(380px,calc(100vw - 2.5rem))}.toast{display:flex;align-items:flex-start;gap:.6rem;padding:.75rem .9rem;border-radius:var(--radius);background:#16281f;color:#eef5f1;font-size:.88rem;line-height:1.45;box-shadow:var(--shadow-lg);animation:toast-in .25s ease both}.toast svg{flex:0 0 auto;margin-top:.15rem}.toast-success svg{color:#57d295}.toast-error svg{color:#f08a7e}.toast-info svg{color:#7db8ee}.toast span{flex:1;min-width:0}.toast-close{flex:0 0 auto;border:0;background:transparent;color:#eef5f18c;padding:.1rem;border-radius:6px;display:grid;place-items:center}.toast-close:hover{color:#fff}@keyframes toast-in{0%{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes pop{0%{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:1180px){.dash-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace{grid-template-columns:minmax(0,1fr)}.workspace-side{position:static}}@media(max-width:980px){.app-layout{grid-template-columns:minmax(0,1fr)}.sidebar{display:none}.topbar-logout{display:inline-grid}.bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:50;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;background:#ffffffeb;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--line);padding:.4rem .5rem calc(.4rem + env(safe-area-inset-bottom));box-shadow:0 -6px 24px #0a282014}.bottom-nav button{display:flex;flex-direction:column;align-items:center;gap:.18rem;border:0;background:transparent;color:var(--faint);font-size:.66rem;font-weight:600;padding:.42rem .2rem;border-radius:var(--radius-sm);transition:color .15s ease,background .15s ease;min-width:0}.bottom-nav button span{max-width:100%;line-height:1.15;text-align:center;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.bottom-nav button.active{color:var(--teal-700);background:var(--teal-50)}.page-body{padding-bottom:calc(5.6rem + env(safe-area-inset-bottom))}.batch-grid,.dash-two,.cron-source-grid{grid-template-columns:minmax(0,1fr)}.users-toolbar{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.users-toolbar .actions{grid-column:1 / -1;margin-top:0}}@media(max-width:760px){body{font-size:14.5px}.dash-grid,.grid-2,.grid-3{grid-template-columns:minmax(0,1fr)}.field.span-2{grid-column:auto}.panel-header{padding:1.1rem 1.05rem .2rem;flex-wrap:wrap}.panel-header .header-actions{order:3;width:100%;justify-content:flex-start}.panel-body{padding:.9rem 1.05rem 1.15rem}.topbar-title p{display:none}.toast-host{left:.9rem;right:.9rem;bottom:calc(4.9rem + env(safe-area-inset-bottom));max-width:none}.table-wrap.cards-mobile{border:0;background:transparent;overflow:visible;display:flex;flex-direction:column;gap:.7rem}.table-wrap.cards-mobile table,.table-wrap.cards-mobile tbody,.table-wrap.cards-mobile tr,.table-wrap.cards-mobile td{display:block;width:100%}.table-wrap.cards-mobile thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.table-wrap.cards-mobile tr{border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow-xs);padding:.35rem .85rem}.table-wrap.cards-mobile tr.selected{border-color:var(--teal-400);background:var(--teal-50);box-shadow:0 0 0 1px var(--teal-400)}.table-wrap.cards-mobile td{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-bottom:0;padding:.5rem 0}.table-wrap.cards-mobile td+td{border-top:1px dashed var(--line)}.table-wrap.cards-mobile td:before{content:attr(data-label);flex:0 0 auto;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--faint)}.table-wrap.cards-mobile td[data-label=""]:before{display:none}.table-wrap.cards-mobile td[data-label=""]{justify-content:flex-end}.mini-progress{width:70px}}@media(max-width:420px){.segmented{max-width:none}.segmented button{padding:.5rem;font-size:.82rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media print{.sidebar,.bottom-nav,.topbar,.toast-host{display:none}}
