@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.00az9qtie3ho1.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.3j-a226dh71aj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.2gwoz23eiro2t.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.p.0i3h3th1vs4m7.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.0zr6hhvz-h9nw.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_51854a72-module__j24gOa__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_51854a72-module__j24gOa__variable{--font-geist:"Geist", "Geist Fallback"}
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.03ez25a9g3i0n.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.3i9rha7jpxn0q.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.2o7ko1d-5m1xu.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.1ee5w62fj497l.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.1way2z9fj6cig.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.p.0szrwpqb9mkwe.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.45535valc9rzk.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_991aebb-module__bYvC1W__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_991aebb-module__bYvC1W__variable{--font-inter:"Inter", "Inter Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/13bf9871fe164e7f-s.3bz3aq452sydg.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/cc545e633e20c56d-s.2sb9jzhmrh7ny.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/71b036adf157cdcf-s.343obqi851wr5.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/89b21bb081cb7469-s.40kcwrf1wub16.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/3fe682a82f50d426-s.p.200l3jur7oygh.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.269kn9uafm0ti.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_b27a31ec-module__6N5LqW__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_b27a31ec-module__6N5LqW__variable{--font-mono:"JetBrains Mono", "JetBrains Mono Fallback"}
:root{--surface:#faf8ff;--surface-lowest:#fff;--surface-low:#f2f3ff;--surface-container:#eaedff;--surface-high:#e2e7ff;--surface-highest:#dae2fd;--ink:#131b2e;--ink-muted:#5f6470;--primary:#091426;--secondary:#4e45d5;--secondary-soft:#e3dfff;--line:#e2e5f3;--danger:#ba1a1a;--danger-soft:#ffdad6;--success:#15803d;--success-soft:#f0fdf4;--warning:#b45309;--warning-soft:#fffbeb;--sidebar:240px;--content:1120px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{background:var(--surface);min-width:320px}body{background:var(--surface);min-width:320px;min-height:100dvh;color:var(--ink);font-family:var(--font-inter), system-ui, sans-serif;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;margin:0;overflow-x:hidden}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}::selection{background:var(--secondary-soft);color:#100069}:focus-visible{outline:2px solid var(--secondary);outline-offset:2px}.app-shell{min-height:100dvh}.desktop-sidebar{display:none}.mobile-header{z-index:30;padding-top:env(safe-area-inset-top,0px);background-color:var(--surface);-webkit-backdrop-filter:none;backdrop-filter:none;border-bottom:1px solid var(--line);position:fixed;inset:0 0 auto}.mobile-header-inner{justify-content:space-between;align-items:center;height:56px;padding:0 16px;display:flex}.brand{font:700 17px/1 var(--font-geist), sans-serif;letter-spacing:-.02em;align-items:center;gap:10px;display:inline-flex}.brand-mark{color:#fff;background:var(--primary);border-radius:12px;place-items:center;width:36px;height:36px;display:grid}.brand-dot{background:var(--secondary);border-radius:50%;width:7px;height:7px}.avatar{background:var(--surface-container);color:var(--ink);font:600 12px/1 var(--font-geist), sans-serif;border-radius:50%;flex:none;place-items:center;display:grid}.avatar.header-avatar{background:var(--primary);color:#fff;width:34px;height:34px}.app-main{width:100%;min-height:100dvh;padding:calc(56px + env(safe-area-inset-top,0px)) 16px calc(88px + env(safe-area-inset-bottom,0px))}.content{width:100%;max-width:var(--content);margin:0 auto;padding:18px 0 36px}.bottom-nav{z-index:30;padding-bottom:env(safe-area-inset-bottom,0px);background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid color-mix(in srgb, var(--line) 70%, transparent);position:fixed;inset:auto 0 0}.bottom-nav-inner{justify-content:space-around;align-items:center;height:64px;display:flex}.nav-link{min-width:64px;min-height:52px;color:var(--ink-muted);font:500 11px/1.15 var(--font-geist), sans-serif;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;padding:5px 7px;display:flex;position:relative}.nav-link.active{color:var(--primary);font-weight:700}.nav-link.active:before{content:"";background:var(--secondary);border-radius:2px;width:18px;height:2px;position:absolute;top:1px}.page-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:22px;display:flex}.page-title{font:650 27px/1.25 var(--font-geist), sans-serif;letter-spacing:-.025em;margin:0}.page-kicker{color:var(--ink-muted);margin:5px 0 0;font-size:13px;line-height:1.45}.section{margin-top:28px}.section-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.section-title{font:650 16px/1.4 var(--font-geist), sans-serif;letter-spacing:-.01em;align-items:center;gap:7px;margin:0;display:flex}.section-meta{color:var(--ink-muted);font:500 11px/1 var(--font-geist), sans-serif;letter-spacing:.02em}.button{min-height:44px;font:600 14px/1 var(--font-geist), sans-serif;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:7px;padding:0 15px;transition:background .15s,border-color .15s,transform .15s,opacity .15s;display:inline-flex}.button:active{transform:scale(.98)}.button:disabled{cursor:not-allowed;opacity:.55}.button.primary{background:var(--primary);color:#fff;border-color:var(--primary)}.button.primary:hover{background:#1e293b}.button.secondary{background:var(--surface-lowest);color:var(--ink);border-color:var(--line)}.button.secondary:hover{background:var(--surface-low)}.button.ghost{color:var(--ink-muted);background:0 0}.button.danger{color:#be123c;background:#fff1f2;border-color:#fecdd3}.button.icon{width:44px;padding:0}.button.compact{min-height:36px;padding:0 12px;font-size:13px}.button.full{width:100%}.button.pill{border-radius:999px}.icon-button{width:44px;height:44px;color:var(--ink-muted);background:0 0;border:0;border-radius:50%;place-items:center;display:grid}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.stat-card{background:var(--surface-lowest);border:1px solid color-mix(in srgb, var(--line) 50%, transparent);border-radius:13px;justify-content:space-between;align-items:center;gap:10px;min-height:92px;padding:13px;display:flex;position:relative;overflow:hidden;box-shadow:0 1px 4px #131b2e09}.stat-card.accent:before{content:"";background:var(--secondary);width:4px;position:absolute;inset:0 auto 0 0}.stat-label{color:var(--ink-muted);font:650 11px/1.3 var(--font-geist), sans-serif;letter-spacing:.055em;text-transform:uppercase;display:block}.stat-card.accent .stat-label,.stat-card.accent .stat-value{color:var(--secondary)}.stat-value{font:650 25px/1 var(--font-geist), sans-serif;letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin-top:5px;display:block}.stat-icon{background:var(--surface-container);width:36px;height:36px;color:var(--primary);border-radius:8px;place-items:center;display:grid}.stat-card.accent .stat-icon{background:var(--secondary-soft);color:#100069}.card{background:var(--surface-lowest);border:1px solid var(--line);border-radius:12px}.card-padded{padding:17px}.approval-list,.task-list,.employee-list{gap:10px;display:grid}.approval-card{background:var(--surface-lowest);border:1px solid color-mix(in srgb, var(--line) 65%, transparent);border-radius:13px;padding:17px}.task-card-title{font:650 16px/1.35 var(--font-geist), sans-serif;letter-spacing:-.01em;margin:0}.row-between{justify-content:space-between;align-items:center;gap:10px;display:flex}.row-start{align-items:flex-start;gap:10px;display:flex}.muted{color:var(--ink-muted)}.small{font-size:13px;line-height:1.45}.completion-note{background:var(--surface-low);color:var(--ink-muted);border-radius:7px;align-items:center;gap:8px;margin:13px 0;padding:9px 11px;font-size:13px;display:flex}.actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.badge{min-height:24px;font:650 11px/1 var(--font-geist), sans-serif;letter-spacing:.025em;white-space:nowrap;border:1px solid #0000;border-radius:6px;align-items:center;gap:5px;padding:3px 8px;display:inline-flex}.badge:before{content:"";background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.badge.pending{color:#475569;background:#f8fafc;border-color:#e2e8f0}.badge.waiting{color:#372abf;background:var(--secondary-soft);border-color:#d8d3ff}.badge.completed{color:var(--success);background:var(--success-soft);border-color:#bbf7d0}.badge.overdue{color:#be123c;background:#fff1f2;border-color:#fecdd3}.task-rows{background:var(--surface-lowest);border:1px solid var(--line);border-radius:13px;overflow:hidden}.task-row{padding:15px;transition:background .15s;display:block}.task-row+.task-row{border-top:1px solid var(--surface-low)}.task-row:hover{background:color-mix(in srgb, var(--surface-low) 58%, transparent)}.task-row-main{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.task-row-meta{justify-content:space-between;align-items:center;gap:8px;margin-top:10px;display:flex}.time{font:500 12px/1 var(--font-mono), monospace;font-variant-numeric:tabular-nums;color:var(--ink-muted)}.avatar-stack{align-items:center;display:flex}.avatar-stack .avatar{border:1px solid #fff;width:27px;height:27px;margin-left:-5px}.avatar-stack .avatar:first-child{margin-left:0}.detail-link{color:var(--secondary);font:600 13px/1 var(--font-geist), sans-serif;align-items:center;gap:3px;display:inline-flex}.form-card{max-width:760px}.form-grid{gap:17px;display:grid}.field{gap:7px;min-width:0;display:grid}.field-row{grid-template-columns:minmax(0,1fr);gap:14px;min-width:0;display:grid}.label{color:var(--ink);font:650 11px/1.3 var(--font-geist), sans-serif;letter-spacing:.055em;text-transform:uppercase}.input,.textarea,.select{border:1px solid var(--line);background:var(--surface-low);width:100%;min-width:0;max-width:100%;min-height:46px;color:var(--ink);border-radius:8px;outline:none;padding:10px 12px;font-size:16px;transition:background .15s,border-color .15s,box-shadow .15s}.input[type=date],.input[type=time]{inline-size:100%;min-inline-size:0;text-indent:12px;appearance:none;height:46px;padding:0;display:block;overflow:hidden}.input[type=date]::-webkit-date-and-time-value{text-align:left;width:100%;min-width:0;height:44px;padding:0;line-height:44px;overflow:hidden}.input[type=time]::-webkit-date-and-time-value{text-align:left;width:100%;min-width:0;height:44px;padding:0;line-height:44px;overflow:hidden}.textarea{resize:vertical;min-height:112px}.input:focus,.textarea:focus,.select:focus{border-color:var(--secondary);box-shadow:0 0 0 1px var(--secondary);background:#fff}.field-error{color:var(--danger);margin:0;font-size:12px}.form-message{border-radius:8px;padding:10px 12px;font-size:13px}.form-message.error{color:#93000a;background:var(--danger-soft)}.form-message.success{color:var(--success);background:var(--success-soft)}.check-grid{gap:8px;display:grid}.check-card{position:relative}.check-card input{opacity:0;pointer-events:none;position:absolute}.check-card label{border:1px solid var(--line);background:var(--surface-low);cursor:pointer;border-radius:8px;align-items:center;gap:10px;min-height:48px;padding:10px 12px;font-size:14px;display:flex}.check-card label:before{content:"";background:#fff;border:1px solid #bdc3d6;border-radius:5px;flex:none;width:18px;height:18px}.check-card input:checked+label{color:#fff;border-color:var(--primary);background:var(--primary)}.check-card input:checked+label:before{box-shadow:inset 0 0 0 4px var(--primary);background:#fff;border-color:#fff}.check-card input:focus-visible+label{outline:2px solid var(--secondary);outline-offset:2px}.filter-bar{gap:10px;margin-bottom:15px;display:grid}.search-wrap{position:relative}.search-wrap svg{color:var(--ink-muted);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.search-wrap .input{padding-left:40px}.filters{scrollbar-width:none;gap:7px;padding:1px 1px 5px;display:flex;overflow-x:auto}.filters::-webkit-scrollbar{display:none}.filter-chip{border:1px solid var(--line);min-height:38px;color:var(--ink-muted);font:600 13px/1 var(--font-geist), sans-serif;background:#fff;border-radius:999px;flex:none;padding:0 13px}.filter-chip.active{border-color:var(--primary);background:var(--primary);color:#fff}.detail-grid{gap:14px;display:grid}.detail-card{padding:18px}.detail-title{font:650 24px/1.25 var(--font-geist), sans-serif;letter-spacing:-.02em;margin:10px 0 5px}.detail-description{color:#334155;white-space:pre-wrap;margin:0;font-size:15px;line-height:1.65}.meta-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.meta-item{background:var(--surface-low);border-radius:8px;padding:12px}.meta-label{color:var(--ink-muted);font:650 10px/1 var(--font-geist), sans-serif;letter-spacing:.06em;text-transform:uppercase;margin-bottom:5px;display:block}.meta-value{font:600 14px/1.3 var(--font-geist), sans-serif}.people{flex-wrap:wrap;gap:7px;display:flex}.person-chip{background:var(--surface-low);border-radius:999px;align-items:center;gap:7px;min-height:36px;padding:6px 10px;font-size:13px;display:inline-flex}.sticky-action{z-index:10;bottom:calc(70px + env(safe-area-inset-bottom,0px));background:linear-gradient(transparent, var(--surface) 28%);margin:18px -6px -2px;padding:8px 6px;position:sticky}.empty-state{text-align:center;background:#ffffff8c;border:1px dashed #cbd0e0;border-radius:12px;place-items:center;min-height:220px;padding:28px;display:grid}.empty-icon{background:var(--surface-container);width:48px;height:48px;color:var(--primary);border-radius:12px;place-items:center;margin:0 auto 12px;display:grid}.empty-state h2{font:650 17px/1.3 var(--font-geist), sans-serif;margin:0 0 5px}.empty-state p{max-width:340px;color:var(--ink-muted);margin:0;font-size:13px;line-height:1.5}.auth-page{min-height:100dvh;padding:max(22px, env(safe-area-inset-top,0px)) 16px max(22px, env(safe-area-inset-bottom,0px));align-items:center;display:grid}.auth-shell{border:1px solid var(--line);background:#fff;border-radius:18px;width:min(100%,980px);margin:0 auto;display:grid;overflow:hidden;box-shadow:0 12px 40px #131b2e0f}.auth-context{background:var(--primary);color:#fff;flex-direction:column;justify-content:space-between;min-height:180px;padding:24px;display:flex}.auth-context.employee{background:#211c71}.auth-context h1{max-width:500px;font:650 29px/1.12 var(--font-geist), sans-serif;letter-spacing:-.03em;margin:25px 0 7px}.auth-context p{color:#c7cfe0;max-width:460px;margin:0;font-size:14px;line-height:1.55}.auth-form-wrap{padding:24px}.auth-form-wrap h2{font:650 22px/1.3 var(--font-geist), sans-serif;letter-spacing:-.02em;margin:0}.auth-form-wrap>p{color:var(--ink-muted);margin:5px 0 22px;font-size:13px}.auth-switch{color:var(--ink-muted);text-align:center;margin:18px 0 0;font-size:13px}.auth-switch a{color:var(--secondary);font-weight:600}.dialog-backdrop{z-index:80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0914267a;justify-content:center;align-items:flex-end;padding:16px;display:flex;position:fixed;inset:0}.dialog-panel{width:min(100%,460px);padding:12px 18px calc(18px + env(safe-area-inset-bottom,0px));background:#fff;border-radius:18px 18px 10px 10px;box-shadow:0 20px 50px #0914262e}.dialog-handle{background:var(--surface-highest);border-radius:9px;width:38px;height:4px;margin:0 auto 14px}.dialog-panel h2{font:650 19px/1.35 var(--font-geist), sans-serif;margin:0}.dialog-panel p{color:var(--ink-muted);margin:7px 0 20px;font-size:14px;line-height:1.55}.dialog-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.skeleton{background:var(--surface-container);border-radius:8px;position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(90deg,#0000,#ffffffbf,#0000);animation:1.35s infinite shimmer;position:absolute;inset:0;transform:translate(-100%)}@keyframes shimmer{to{transform:translate(100%)}}.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.skeleton-line{height:14px}.skeleton-card{height:98px}@media (min-width:560px){.field-row,.check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-form-wrap{padding:36px}}@media (min-width:768px){.mobile-header,.bottom-nav{display:none}.desktop-sidebar{z-index:30;width:var(--sidebar);border-right:1px solid var(--line);background:#fff;flex-direction:column;padding:24px 16px;display:flex;position:fixed;inset:0 auto 0 0}.desktop-nav{gap:5px;margin-top:38px;display:grid}.desktop-nav .nav-link{border-radius:8px;flex-direction:row;flex:none;justify-content:flex-start;gap:10px;min-height:44px;padding:0 12px;font-size:13px}.desktop-nav .nav-link.active{background:var(--surface-low)}.desktop-nav .nav-link.active:before{width:3px;height:auto;inset:10px auto 10px 0}.sidebar-user{border:1px solid var(--line);border-radius:10px;margin-top:auto;padding:12px}.sidebar-user-name{text-overflow:ellipsis;white-space:nowrap;font:650 13px/1.3 var(--font-geist), sans-serif;overflow:hidden}.sidebar-user-role{color:var(--ink-muted);margin-top:2px;font-size:11px}.app-main{padding:0 28px 40px calc(var(--sidebar) + 28px)}.content{padding-top:34px}.page-title{font-size:32px}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.filter-bar{grid-template-columns:minmax(260px,.7fr) 1.3fr;align-items:center}.detail-grid{grid-template-columns:minmax(0,1.55fr) minmax(260px,.75fr);align-items:start}.sticky-action{background:0 0;margin:18px 0 0;padding:0;position:static}.dialog-backdrop{align-items:center}.dialog-panel{border-radius:14px;padding:22px}.dialog-handle{display:none}.auth-shell{grid-template-columns:1.08fr .92fr}.auth-context{min-height:590px;padding:40px}.auth-context h1{font-size:42px}.auth-form-wrap{align-self:center;padding:52px 44px}}@media (max-width:359px){.app-main{padding-left:12px;padding-right:12px}.page-title{font-size:24px}.button{padding-left:12px;padding-right:12px}.stat-card{padding:11px}.stat-icon{width:32px;height:32px}}@media (display-mode:standalone) and (max-width:767px){html,body{background-color:#faf8ff}.mobile-header{background-color:#faf8ff;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.bottom-nav{-webkit-backdrop-filter:none;backdrop-filter:none;background-color:#faf8ff}.bottom-nav-inner{height:58px}.app-main{padding-bottom:calc(82px + env(safe-area-inset-bottom,0px))}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
