@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");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:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");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:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");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:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");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:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");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:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");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:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");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:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");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:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");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:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");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:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");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:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");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}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideRight{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes routeEnter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes routeLeave{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-6px)}}::view-transition-old(root){animation:.18s ease routeLeave}::view-transition-new(root){animation:.22s ease routeEnter}:root{--bg: #ffffff;--surface: #ffffff;--hover: #faeaea;--selected: #fad4d1;--accent: #c0392b;--accent-h: #8b1a1a;--accent-light: #fce8e6;--danger: #b71c1c;--danger-bg: #fce8e6;--success: #188038;--success-bg: #e6f4ea;--ink: #202124;--ink-2: #3c4043;--ink-muted: #5f6368;--border: #e0e0e0;--border-input: #dadce0;--s1: 0 1px 2px rgba(60,64,67,.1), 0 2px 6px rgba(60,64,67,.06);--s2: 0 1px 3px rgba(60,64,67,.16), 0 4px 8px rgba(60,64,67,.1);--s3: 0 2px 6px rgba(60,64,67,.2), 0 8px 24px rgba(60,64,67,.12);--topbar-h: 64px;--sidebar-w: 256px;--sidebar-c: 72px;--font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--r-sm: 4px;--r-md: 8px;--r-lg: 16px;--r-pill: 999px;--t: .15s ease;--t-sb: .25s cubic-bezier(.4, 0, .2, 1);--accent-ring: rgba(192, 57, 43, .22)}:root[data-theme=dark]{--bg: #111111;--surface: #1c1c1c;--hover: #2d1a1a;--selected: #5c2020;--accent: #e05245;--accent-h: #c0392b;--accent-light: #3d1010;--danger: #ef5350;--danger-bg: #3d1010;--success: #66bb6a;--success-bg: #1a3a1a;--ink: #e8eaed;--ink-2: #bdc1c6;--ink-muted: #9aa0a6;--border: #3c3c3c;--border-input: #555555;--s1: 0 1px 2px rgba(0,0,0,.5), 0 2px 6px rgba(0,0,0,.4);--s2: 0 1px 3px rgba(0,0,0,.6), 0 4px 8px rgba(0,0,0,.5);--s3: 0 2px 6px rgba(0,0,0,.7), 0 8px 24px rgba(0,0,0,.6);--accent-ring: rgba(224, 82, 69, .28)}*,*:before,*:after{box-sizing:border-box}html{min-height:100%;background:var(--bg)}body{margin:0;min-height:100vh;min-width:320px;font-family:var(--font);font-size:.9375rem;line-height:1.5;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}a{color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-sm)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#bdc1c6;border-radius:var(--r-pill)}::-webkit-scrollbar-thumb:hover{background:#9aa0a6}.shell{display:grid;grid-template-rows:var(--topbar-h) 1fr;grid-template-columns:var(--sidebar-c) 1fr;grid-template-areas:"topbar topbar" "sidebar main";min-height:100vh;transition:grid-template-columns var(--t-sb)}.shell--sidebar-open{grid-template-columns:var(--sidebar-w) 1fr}.shell--no-sidebar{grid-template-columns:1fr;grid-template-areas:"topbar" "main"}.shell--no-topbar{grid-template-rows:1fr;grid-template-columns:1fr;grid-template-areas:"main"}.topbar{grid-area:topbar;position:sticky;top:0;z-index:100;display:flex;align-items:center;gap:8px;height:var(--topbar-h);padding:0 16px 0 8px;background:var(--surface);border-bottom:1px solid var(--border);box-shadow:var(--s1)}.topbar__start{display:flex;align-items:center;gap:4px;flex-shrink:0}.topbar__search{flex:1;max-width:560px;margin:0 auto;display:flex;align-items:center;gap:8px;height:40px;border:1.5px solid var(--border);border-radius:var(--r-pill);background:var(--bg);padding:0 16px;color:var(--ink-muted);transition:border-color var(--t),box-shadow var(--t),background var(--t)}.topbar__search:hover{border-color:var(--border-input)}.topbar__search:focus-within{border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px var(--accent-ring)}.topbar__search svg{flex-shrink:0;transition:color var(--t)}.topbar__search:focus-within svg{color:var(--accent)}.topbar__search input{flex:1;min-width:0;border:none;background:transparent;color:var(--ink);font-size:.9375rem;outline:none;width:100%}.topbar__search input:focus,.topbar__search input:focus-visible{outline:none;box-shadow:none}.topbar__search input::placeholder{color:var(--ink-muted)}.topbar__search input[type=search]::-webkit-search-cancel-button,.topbar__search input[type=search]::-webkit-search-decoration,.topbar__search input[type=search]::-webkit-search-results-button,.topbar__search input[type=search]::-webkit-search-results-decoration{-webkit-appearance:none;appearance:none}.topbar__search__clear{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;border:none;background:var(--ink-muted);color:#fff;cursor:pointer;padding:0;opacity:.55;transition:opacity var(--t),background var(--t)}.topbar__search__clear:hover{opacity:1;background:var(--accent)}.topbar__end{display:flex;align-items:center;gap:12px;margin-left:auto;flex-shrink:0}.topbar__user{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;color:var(--ink-muted)}.brand{display:flex;align-items:center;gap:2px;padding:4px 8px;text-decoration:none;color:var(--ink);font-size:1.375rem;font-weight:700;letter-spacing:-.02em;white-space:nowrap}.brand__accent{color:var(--accent)}.icon-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex-shrink:0;border:none;border-radius:var(--r-pill);background:transparent;color:var(--ink-muted);cursor:pointer;transition:background var(--t)}.icon-btn:hover{background:var(--hover)}.avatar{display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;border-radius:var(--r-pill);background:var(--accent);color:#fff;font-weight:600;font-size:.875rem;text-transform:uppercase;-webkit-user-select:none;user-select:none;cursor:pointer;transition:box-shadow var(--t)}.avatar:hover{box-shadow:0 0 0 3px var(--accent-light)}.sidebar{grid-area:sidebar;position:sticky;top:var(--topbar-h);height:calc(100dvh - var(--topbar-h));overflow:hidden;overflow-y:auto;display:flex;flex-direction:column;padding:8px 0 16px;background:var(--surface);border-right:1px solid var(--border)}.compose-fab{display:flex;align-items:center;gap:12px;margin:8px 12px 12px;padding:14px 20px;border-radius:var(--r-pill);background:var(--surface);box-shadow:var(--s2);color:var(--ink);font-weight:600;font-size:.9375rem;text-decoration:none;white-space:nowrap;overflow:hidden;cursor:pointer;transition:box-shadow var(--t),transform var(--t)}.compose-fab:hover{box-shadow:var(--s3);transform:translateY(-1px)}.compose-fab:active{transform:translateY(0);box-shadow:var(--s1)}.compose-fab__icon{flex-shrink:0;color:var(--accent)}.compose-fab__label,.sidebar-label{transition:opacity var(--t-sb),max-width var(--t-sb);max-width:160px;overflow:hidden;white-space:nowrap}.shell:not(.shell--sidebar-open) .compose-fab__label,.shell:not(.shell--sidebar-open) .sidebar-label{opacity:0;max-width:0}.shell:not(.shell--sidebar-open) .compose-fab{justify-content:center;padding:0;width:48px;height:48px;border-radius:var(--r-pill);margin:12px auto 20px;background:var(--accent-light);box-shadow:var(--s1)}.shell:not(.shell--sidebar-open) .compose-fab .compose-fab__icon{color:var(--accent)}.sidebar-nav{display:flex;flex-direction:column;gap:2px;padding:0 8px;flex:1}.sidebar-nav a{display:flex;align-items:center;gap:16px;padding:0 12px;height:40px;border-radius:var(--r-pill);color:var(--ink-2);text-decoration:none;font-size:.875rem;font-weight:500;white-space:nowrap;overflow:hidden;transition:background var(--t)}.sidebar-nav a:hover{background:var(--hover)}.sidebar-nav a.active{background:var(--selected);color:var(--ink);font-weight:700}.shell:not(.shell--sidebar-open) .sidebar-nav{padding:0;align-items:center}.shell:not(.shell--sidebar-open) .sidebar-nav a{justify-content:center;align-items:center;gap:0;padding:0;width:48px;height:40px;border-radius:var(--r-pill);margin:0 auto}.shell:not(.shell--sidebar-open) .sidebar-nav a.active{background:var(--selected)}.sidebar-footer{padding:8px 8px 0;border-top:1px solid var(--border);margin-top:8px}.sidebar-logout{display:flex;align-items:center;gap:16px;padding:0 12px;height:40px;width:100%;border:none;border-radius:var(--r-pill);background:transparent;color:var(--ink-muted);font-size:.875rem;font-weight:500;cursor:pointer;white-space:nowrap;overflow:hidden;transition:background var(--t),color var(--t)}.sidebar-logout:hover{background:var(--danger-bg);color:var(--danger)}.shell:not(.shell--sidebar-open) .sidebar-footer{padding:0;display:flex;justify-content:center}.shell:not(.shell--sidebar-open) .sidebar-logout{justify-content:center;align-items:center;gap:0;padding:0;width:48px;height:40px;border-radius:var(--r-pill);margin:0 auto}.nav-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:20px;height:20px;color:var(--ink-muted)}.sidebar-nav a.active .nav-icon{color:var(--accent)}.main{grid-area:main;overflow:auto}.sidebar-backdrop{display:none}@media(max-width:768px){.shell,.shell--sidebar-open{grid-template-columns:0 1fr}.sidebar{position:fixed;left:0;top:0;height:100dvh;padding-top:calc(var(--topbar-h) + 8px);z-index:200;width:min(var(--sidebar-w),85vw);transform:translate(-100%);transition:transform var(--t-sb),box-shadow var(--t-sb);box-shadow:none}.shell--sidebar-open .sidebar{transform:translate(0);box-shadow:var(--s3)}.compose-fab__label,.sidebar-label{opacity:1!important;max-width:160px!important}.compose-fab{padding:14px 20px!important;margin:8px 12px 12px!important;justify-content:flex-start!important}.sidebar-nav a{justify-content:flex-start!important;padding:0 12px!important;width:auto!important;margin:0!important}.sidebar-logout{justify-content:flex-start!important;padding:0 12px!important;width:100%!important;margin:0!important}.sidebar-backdrop{display:block;position:fixed;inset:0;z-index:199;background:#0000008c;animation:fadeIn .15s ease}.topbar{position:fixed;top:0;left:0;right:0;z-index:300}.topbar__user,.topbar__search{display:none}}.button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;border:none;border-radius:var(--r-sm);padding:0 16px;font-size:.875rem;font-weight:600;text-decoration:none;cursor:pointer;white-space:nowrap;transition:background var(--t),box-shadow var(--t),transform var(--t)}.button:active:not(:disabled){transform:scale(.97)}.button:disabled{opacity:.5;cursor:not-allowed}.button--primary{background:var(--accent);color:#fff}.button--primary:hover:not(:disabled){background:var(--accent-h);box-shadow:var(--s2)}.button--secondary{background:transparent;color:var(--accent);border:1px solid var(--border-input)}.button--secondary:hover:not(:disabled){background:var(--accent-light);border-color:var(--accent-light)}.button--ghost{background:transparent;color:var(--ink-muted)}.button--ghost:hover:not(:disabled){background:var(--hover);color:var(--ink)}.button--danger{background:var(--danger);color:#fff}.button--danger:hover:not(:disabled){background:#c5221f}.alert{margin:0;border-radius:var(--r-md);padding:12px 16px;font-size:.875rem;font-weight:500;animation:fadeUp .2s ease}.alert--error{background:var(--danger-bg);color:var(--danger)}.alert--success{background:var(--success-bg);color:var(--success)}.field{display:grid;gap:6px}.form-stack{display:grid;gap:16px}label{font-size:.875rem;font-weight:600;color:var(--ink-2)}input[type=text],input[type=email],input[type=password],input[type=search],textarea{width:100%;border:1px solid var(--border-input);border-radius:var(--r-md);background:var(--surface);color:var(--ink);padding:10px 14px;font-size:.9375rem;transition:border-color var(--t),box-shadow var(--t)}input[type=text]:focus,input[type=email]:focus,input[type=password]:focus,input[type=search]:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.topbar__search input[type=search],.topbar__search input[type=search]:focus,.topbar__search input[type=search]:focus-visible{width:100%;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;outline:none}input.invalid,textarea.invalid{border-color:var(--danger);box-shadow:0 0 0 3px #d930251f}textarea{resize:vertical}.field-error{margin:0;font-size:.8125rem;color:var(--danger)}.checkbox-field{display:inline-flex;align-items:center;gap:10px;font-size:.875rem;cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox-field input{width:16px;height:16px;accent-color:var(--accent);cursor:pointer}.actions-row{display:flex;align-items:center;gap:12px;justify-content:flex-end}.empty-state{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:64px 24px;color:var(--ink-muted);text-align:center;font-size:.9375rem}.skeleton{border-radius:var(--r-sm);background:linear-gradient(90deg,#f0f0f0 25%,#e8e8e8,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}:root[data-theme=dark] .skeleton{background:linear-gradient(90deg,#2a2a2a 25%,#333,#2a2a2a 75%);background-size:200% 100%}
