html,body{width:100%;height:100%}input::-ms-clear{display:none}input::-ms-reveal{display:none}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:#0000;font-family:sans-serif;line-height:1.15}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}address{font-style:normal;line-height:inherit;margin-bottom:1em}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-size:1em}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}caption{text-align:left;caption-side:bottom;padding-top:.75em;padding-bottom:.3em}input,button,select,optgroup,textarea{color:inherit;font-size:inherit;font-family:inherit;line-height:inherit;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner{border-style:none;padding:0}[type=button]::-moz-focus-inner{border-style:none;padding:0}[type=reset]::-moz-focus-inner{border-style:none;padding:0}[type=submit]::-moz-focus-inner{border-style:none;padding:0}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{resize:vertical;overflow:auto}fieldset{border:0;min-width:0;margin:0;padding:0}legend{width:100%;max-width:100%;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal;margin-bottom:.5em;padding:0;display:block}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button{height:auto}[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}:root{--bg:#fff;--surface:#fff;--surface-warm:#fafafa;--fg:#111512;--fg-2:#343a35;--muted:#6d746f;--meta:#9aa19c;--border:#e6e8e6;--border-soft:#f0f2ef;--accent:#1677ff;--accent-on:#fff;--accent-hover:#4096ff;--accent-active:#0958d9;--switch-on:#35c759;--success:#14b67a;--warn:#f5b82e;--danger:#f04444;--font-display:"SF Pro Display", "SF Pro Icons", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-body:"SF Pro Text", "SF Pro Icons", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-mono:"SF Mono", ui-monospace, Menlo, monospace;--text-xs:12px;--text-sm:14px;--text-base:17px;--text-lg:21px;--text-xl:28px;--text-2xl:40px;--text-3xl:56px;--text-4xl:80px;--leading-body:1.47;--leading-tight:1.05;--tracking-display:-.015em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-12:48px;--section-y-desktop:100px;--section-y-tablet:64px;--section-y-phone:40px;--radius-sm:7px;--radius-md:10px;--radius-lg:14px;--radius-pill:980px;--elev-flat:none;--elev-ring:0 0 0 1px var(--border);--elev-raised:0 14px 36px #1118120f;--focus-ring:0 0 0 4px color-mix(in oklab, var(--accent), transparent 78%);--motion-fast:.15s;--motion-base:.22s;--ease-standard:cubic-bezier(.28, 0, .22, 1);--container-max:1024px;--container-gutter-desktop:22px;--container-gutter-tablet:18px;--container-gutter-phone:16px}*{box-sizing:border-box}html{background:var(--bg);color:var(--fg)}body{min-height:100vh;font-family:var(--font-body);background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.app{grid-template-columns:232px minmax(0,1fr);column-gap:18px;min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--border-soft);background:var(--bg);flex-direction:column;gap:18px;height:100vh;padding:18px 12px;display:flex;position:sticky;top:0}.brand{border-bottom:1px solid var(--border-soft);align-items:center;gap:10px;padding:0 6px 14px;display:flex}.mark{border:1px solid color-mix(in oklab, var(--accent), transparent 64%);width:30px;height:30px;color:var(--accent-on);background:linear-gradient(135deg, var(--accent) 0%, color-mix(in oklab, var(--accent), #000 16%) 100%);box-shadow:0 8px 18px color-mix(in oklab, var(--accent), transparent 82%);border-radius:8px;place-items:center;display:grid}.mark svg{width:18px;height:18px;display:block}.brand strong{letter-spacing:-.12px;font-size:13px;line-height:1.1;display:block}.brand span,.mono,.eyebrow{font-family:var(--font-mono);letter-spacing:.08em;color:var(--meta);font-size:10px}.sidebar-main{flex-direction:column;gap:18px;min-height:0;display:flex}.sidebar-footer{border-top:1px solid var(--border-soft);gap:5px;margin-top:auto;padding-top:14px;display:grid}.sidebar-footer .nav a{color:var(--fg-2)}.sidebar-footer .nav a.logout{color:var(--danger)}.nav a{min-height:34px;color:var(--muted);letter-spacing:-.12px;transition:background var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard);border:1px solid #0000;border-radius:8px;align-items:center;gap:10px;padding:0 9px;font-size:12px;display:flex}.nav a.active{background:color-mix(in oklab, var(--accent), transparent 92%);color:var(--accent-active);border-color:color-mix(in oklab, var(--accent), transparent 78%);box-shadow:inset 3px 0 0 var(--accent);font-weight:600}.nav svg,.btn svg{flex:none;width:17px;height:17px}.main{min-width:0;padding:26px clamp(24px,3.2vw,44px) 72px 0}.topbar{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:18px;margin-bottom:16px;display:grid}h1{font:700 clamp(26px, 3vw, 34px)/1.08 var(--font-display);letter-spacing:-.03em;margin:0}.lead{color:var(--muted);letter-spacing:-.12px;max-width:72ch;margin:7px 0 0;font-size:13px;line-height:1.5}.actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.btn{border:1px solid var(--border);background:var(--bg);min-height:34px;color:var(--fg);white-space:nowrap;letter-spacing:-.08px;transition:background var(--motion-fast) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard), transform var(--motion-fast) var(--ease-standard);border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:0 13px;font-size:12px;font-weight:650;display:inline-flex}.btn:hover{border-color:var(--border);background:var(--surface-warm);color:var(--fg)}.btn:focus-visible{box-shadow:var(--focus-ring);outline:0}.btn:active{transform:scale(.985)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-on);box-shadow:0 8px 18px color-mix(in oklab, var(--accent), transparent 78%)}.btn.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:var(--accent-on)}.btn.primary:active{background:var(--accent-active);border-color:var(--accent-active);color:var(--accent-on)}.btn.danger{color:var(--danger);border-color:color-mix(in oklab, var(--danger), transparent 68%);background:var(--bg)}.btn.danger:hover{border-color:var(--danger);background:color-mix(in oklab, var(--danger), transparent 94%);color:var(--danger)}.btn.ghost{background:0 0;border-color:#0000}.grid{gap:18px;display:grid}.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.panel{border:1px solid var(--border-soft);border-radius:var(--radius-lg);background:var(--bg);overflow:hidden;box-shadow:0 10px 26px #1118120b}.panel+.panel{margin-top:18px}.panel-head{border-bottom:1px solid var(--border-soft);background:var(--bg);justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.panel-head h2{letter-spacing:-.22px;margin:0;font-size:15px;font-weight:700}.panel-body{padding:14px}.metric{background:var(--bg);padding:14px;position:relative}.metric:after{content:"";border-radius:var(--radius-pill) var(--radius-pill) 0 0;background:var(--border-soft);height:3px;position:absolute;bottom:0;left:16px;right:16px}.metric.due:after{background:var(--danger)}.metric.budget:after{background:var(--accent)}.metric.soon:after{background:var(--warn)}.grid.cols-3>.metric{flex-direction:column;justify-content:space-between;min-height:104px;display:flex}.metric span{color:var(--muted);letter-spacing:-.12px;font-size:12px}.metric strong{font:750 28px/1 var(--font-display);letter-spacing:-.03em;margin-top:8px;display:block}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.list-toolbar{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;gap:14px;padding:14px;display:flex}.list-toolbar .input{width:min(340px,100%)}.segmented{border:1px solid var(--border-soft);background:var(--surface-warm);border-radius:11px;align-items:center;gap:4px;padding:4px;display:inline-flex}.segment{min-height:30px;color:var(--muted);letter-spacing:-.1px;transition:background var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard);background:0 0;border:1px solid #0000;border-radius:8px;padding:0 11px;font-size:12px;font-weight:650}.segment:hover{color:var(--fg)}.segment.active{color:var(--accent-active);background:var(--bg);border-color:var(--border-soft);box-shadow:0 4px 12px #1118120d}.input,select,textarea{border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--bg);min-height:34px;color:var(--fg);letter-spacing:-.08px;transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard), background var(--motion-fast) var(--ease-standard);outline:none;padding:0 10px;font-size:12px}textarea{resize:vertical;padding:10px 11px}.input::placeholder,textarea::placeholder{color:var(--meta)}.input:hover,select:hover,textarea:hover{border-color:var(--border)}.input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:var(--focus-ring);background:var(--bg)}table{border-collapse:collapse;width:100%}th,td{border-bottom:1px solid var(--border-soft);text-align:left;vertical-align:middle;padding:10px 12px}th{color:var(--meta);font:700 11px/1 var(--font-body);letter-spacing:-.08px;background:var(--surface-warm)}td{letter-spacing:-.08px;color:var(--fg-2);font-size:12px}td:first-child{color:var(--fg);font-weight:600}tbody tr:hover{background:color-mix(in oklab, var(--accent), transparent 94%)}.row-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.row-actions .btn{min-height:30px;color:var(--accent-active);border-color:color-mix(in oklab, var(--accent), transparent 70%);background:color-mix(in oklab, var(--accent), transparent 96%);border-radius:6px;gap:5px;padding:0 10px;font-size:12px}.row-actions .btn:hover{color:var(--accent-on);border-color:var(--accent);background:var(--accent)}.row-actions .btn.danger{color:var(--danger);border-color:color-mix(in oklab, var(--danger), transparent 68%);background:var(--bg)}.row-actions .btn.danger:hover{border-color:var(--danger);background:color-mix(in oklab, var(--danger), transparent 94%);color:var(--danger)}.tag,.status{border:1px solid var(--border-soft);letter-spacing:-.12px;white-space:nowrap;background:var(--bg);min-height:22px;color:var(--fg);border-radius:7px;align-items:center;gap:7px;padding:0 7px;font-size:11px;display:inline-flex}.tag{box-shadow:none;background:color-mix(in oklab, currentColor, transparent 94%)}.status.ok{color:var(--success);background:color-mix(in oklab, var(--success), transparent 92%);border-color:color-mix(in oklab, var(--success), transparent 72%)}.status.warn{color:color-mix(in oklab, var(--warn), black 26%);background:color-mix(in oklab, var(--warn), transparent 90%);border-color:color-mix(in oklab, var(--warn), transparent 66%)}.status.off{color:var(--muted);background:var(--surface-warm);border-color:var(--border-soft)}.dot{width:9px;height:9px;box-shadow:0 0 0 3px color-mix(in oklab, currentColor, transparent 86%);background:currentColor;border-radius:50%}.renewal-strip{border-color:color-mix(in oklab, var(--accent-active), transparent 84%);background:var(--bg);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;margin-bottom:14px;display:grid}.renewal-strip .panel-body{grid-template-columns:1fr auto;align-items:center;gap:14px;display:grid}.renewal-strip h2{letter-spacing:-.22px;margin:0 0 5px;font-size:15px}.renewal-strip p{color:var(--muted);margin:0;font-size:12px;line-height:1.48}.renewal-list{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.renewal-pill{border:1px solid var(--border);border-radius:var(--radius-sm);background:color-mix(in oklab, var(--bg), transparent 2%);min-height:28px;color:var(--fg-2);align-items:center;gap:7px;padding:0 9px;font-size:11px;display:inline-flex}.renewal-pill strong{color:var(--fg)}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.field{gap:7px;display:grid}.field label,.field span{color:var(--muted);letter-spacing:-.12px;font-size:12px}.field.full{grid-column:1/-1}.settings-list{gap:10px;display:grid}.setting-item{border:1px solid var(--border-soft);border-radius:var(--radius-md);background:var(--surface-warm);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:14px;display:grid}.setting-item strong{color:var(--fg);font:700 14px/1.25 var(--font-body);letter-spacing:-.16px;display:block}.setting-item span{color:var(--muted);margin-top:5px;font-size:12px;line-height:1.45;display:block}.role-badge{border:1px solid color-mix(in oklab, var(--accent), transparent 72%);border-radius:var(--radius-sm);background:color-mix(in oklab, var(--accent), transparent 92%);min-width:64px;color:var(--accent);text-align:center;font:700 12px/1 var(--font-body);margin:0;padding:7px 10px}.modal{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg);width:min(720px,100vw - 28px);color:var(--fg);box-shadow:var(--elev-raised);padding:0}.modal::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0000006b}.toast{background:var(--fg);color:var(--bg);border:1px solid var(--fg);border-radius:var(--radius-md);opacity:0;z-index:20;box-shadow:var(--elev-raised);padding:10px 14px;font-size:12px;transition:all .18s;position:fixed;bottom:20px;right:20px;transform:translateY(12px)}.toast.show{opacity:1;transform:translateY(0)}.mobile-nav{display:none}.auth-shell{place-items:center;min-height:100vh;padding:20px;display:grid}.auth-card{width:min(440px,100%)}.switch{border:1px solid var(--border-soft);border-radius:var(--radius-pill);background:var(--surface-warm);vertical-align:middle;width:42px;height:24px;transition:background var(--motion-fast) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard);align-items:center;padding:2px;display:inline-flex;position:relative}.switch:before{content:"";background:var(--muted);border-radius:50%;width:18px;height:18px;transition:transform .18s,background .18s}.switch.on{background:var(--switch-on);border-color:color-mix(in oklab, var(--switch-on), transparent 45%)}.switch.on:before{background:var(--bg);transform:translate(18px)}button.switch{color:#0000;padding:2px;font-size:0}.switch-field{min-height:34px;color:var(--fg);align-items:center;gap:10px;display:flex}.switch-label{align-items:center;gap:10px;display:inline-flex}.switch-text{color:var(--muted);font:600 12px/1 var(--font-body);letter-spacing:-.12px}.calendar-toolbar{align-items:center;gap:8px;display:flex}.calendar-month{text-align:center;min-width:118px}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-weekdays{border-left:1px solid var(--border-soft);border-top:1px solid var(--border-soft)}.calendar-weekdays span{border-right:1px solid var(--border-soft);color:var(--meta);font:700 11px/1 var(--font-body);letter-spacing:-.12px;padding:9px}.calendar-grid{border-left:1px solid var(--border-soft);border-top:1px solid var(--border-soft)}.calendar-day{border-right:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft);background:var(--bg);align-content:start;gap:7px;min-height:108px;padding:8px;display:grid}.calendar-day.muted{opacity:.52;background:var(--surface-warm)}.calendar-day.today{background:color-mix(in oklab, var(--accent), transparent 91%)}.calendar-date{font-family:var(--font-body);letter-spacing:-.12px;color:var(--muted);font-size:12px}.calendar-event{border:1px solid color-mix(in oklab, currentColor, transparent 72%);letter-spacing:-.12px;color:var(--fg);background:var(--bg);border-radius:7px;padding:5px 6px;font-size:11px;line-height:1.35;box-shadow:inset 3px 0}.calendar-event.design{color:var(--danger);background:color-mix(in oklab, var(--danger), transparent 94%)}.calendar-event.dev{color:var(--success);background:color-mix(in oklab, var(--success), transparent 94%)}.calendar-event.office{color:color-mix(in oklab, var(--warn), black 28%);background:color-mix(in oklab, var(--warn), transparent 90%)}@media (width<=860px){.app{display:block}.sidebar{display:none}.main{padding:18px 14px 92px}.topbar{grid-template-columns:1fr;align-items:stretch}.actions{justify-content:stretch}.actions .btn,.actions .input,.toolbar .input,.toolbar select{flex:100%}.grid.cols-3,.form-grid{grid-template-columns:1fr}.setting-item{grid-template-columns:1fr;justify-items:start;gap:12px}.panel-head{flex-direction:column;align-items:flex-start}table,thead,tbody,tr,th,td{display:block}thead{display:none}tr{border-bottom:1px solid var(--border-soft);padding:10px 0}td{border:0;grid-template-columns:96px minmax(0,1fr);gap:10px;padding:7px 14px;display:grid}td:before{content:attr(data-label);color:var(--muted);letter-spacing:-.12px;font-size:12px}.row-actions{justify-content:flex-start}.list-toolbar{flex-direction:column;align-items:stretch}.list-toolbar .input{width:100%}.segmented{width:100%;overflow-x:auto}.segment{flex:1 0 auto}.mobile-nav{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg);z-index:10;box-shadow:var(--elev-raised);grid-template-columns:repeat(5,1fr);gap:4px;padding:6px;display:grid;position:fixed;bottom:12px;left:12px;right:12px}.mobile-nav a{min-height:44px;color:var(--muted);letter-spacing:-.12px;border-radius:8px;place-items:center;font-size:12px;display:grid}.mobile-nav a.active{color:var(--fg);background:color-mix(in oklab, var(--accent), transparent 82%);font-weight:700}.calendar-weekdays{display:none}.calendar-grid{border-top:0;grid-template-columns:1fr}.calendar-day{grid-template-columns:48px minmax(0,1fr);align-items:start;min-height:auto}}.modal.open{z-index:60;display:block;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.modal-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:50;background:#0000006b;position:fixed;inset:0}.mobile-nav a.active{color:var(--accent-active);font-weight:700}.ant-message{font-family:var(--font-body)}.grid.cols-3>.metric{flex-direction:column;justify-content:space-between;height:124px;min-height:124px;display:flex}.grid.cols-3>.metric strong{white-space:nowrap;align-items:flex-end;min-height:34px;display:flex}.grid.cols-3>.metric:after{bottom:0}@media (width<=920px){.grid.cols-3>.metric{height:auto;min-height:104px}}.grid.cols-3>.panel.metric{overflow:hidden;flex-direction:column!important;justify-content:space-between!important;height:100%!important;min-height:0!important;display:flex!important}.grid.cols-3>.panel.metric strong{white-space:nowrap!important;align-items:flex-end!important;min-height:34px!important;line-height:1!important;display:flex!important}@media (width<=920px){.grid.cols-3{grid-auto-rows:auto}.grid.cols-3>.panel.metric{height:auto!important;min-height:104px!important}}.grid.cols-3{grid-auto-rows:128px!important;align-items:stretch!important}.grid.cols-3>.panel.metric,.grid.cols-3>.metric{flex-direction:column!important;justify-content:space-between!important;height:128px!important;min-height:128px!important;max-height:128px!important;display:flex!important}.grid.cols-3>.panel.metric small,.grid.cols-3>.metric small{min-height:14px;margin-top:6px;line-height:14px;display:block}@media (width<=920px){.grid.cols-3{grid-auto-rows:128px!important}.grid.cols-3>.panel.metric,.grid.cols-3>.metric{height:128px!important;min-height:128px!important;max-height:128px!important}}.grid.cols-3>.panel+.panel{margin-top:0!important}.calendar-event{text-align:left;cursor:pointer;position:relative}.calendar-event .calendar-tooltip{z-index:30;border:1px solid var(--border);background:var(--bg);min-width:220px;max-width:280px;color:var(--fg);box-shadow:var(--elev-raised);border-radius:10px;padding:10px 12px;font-size:12px;line-height:1.5;display:none;position:absolute;top:calc(100% + 8px);left:0}.calendar-event:hover .calendar-tooltip{gap:4px;display:grid}.calendar-tooltip strong{font-size:13px}.calendar-tooltip em{color:var(--muted);font-style:normal}.grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid;grid-auto-rows:128px!important;align-items:stretch!important}.grid.cols-4>.panel+.panel{margin-top:0!important}.grid.cols-4>.panel.metric,.grid.cols-4>.metric{flex-direction:column!important;justify-content:space-between!important;height:128px!important;min-height:128px!important;max-height:128px!important;display:flex!important}.grid.cols-4>.panel.metric small,.grid.cols-4>.metric small{min-height:14px;margin-top:6px;line-height:14px;display:block}@media (width<=1180px){.grid.cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=860px){.grid.cols-4{grid-template-columns:1fr}}.metric.warn:after{background:var(--warn)}.btn.success{color:var(--success);border-color:color-mix(in oklab, var(--success), transparent 60%);background:color-mix(in oklab, var(--success), transparent 95%)}.btn.success:hover{color:var(--success);border-color:var(--success);background:color-mix(in oklab, var(--success), transparent 90%)}.pagination{border-top:1px solid var(--border-soft);justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}table{border-collapse:collapse}th,td{vertical-align:middle}td.row-actions{align-content:center;align-items:center;height:100%}.list-toolbar>select.input{width:150px}@media (width<=860px){.pagination{flex-direction:column;align-items:stretch}.list-toolbar>select.input{width:100%}}.topbar .eyebrow{display:none}.subscription-summary{grid-template-columns:minmax(0,4fr) minmax(260px,1.15fr);align-items:stretch;gap:18px;margin-bottom:18px;display:grid}.subscription-summary>.grid.cols-4{margin:0}.subscription-summary>.renewal-strip{min-height:128px;margin:0!important}.subscription-summary .renewal-strip .panel-body{flex-direction:column;justify-content:space-between;gap:12px;height:100%;display:flex}.subscription-summary .renewal-strip h2{margin-bottom:6px}.subscription-summary .renewal-strip p{margin:0}.subscription-list-panel{flex-direction:column;min-height:360px;max-height:calc(100vh - 286px);display:flex}.subscription-list-panel .list-toolbar{justify-content:flex-start;gap:10px;padding:0 14px 12px}.subscription-list-panel .list-toolbar>.input:first-child{width:min(360px,45vw)}.subscription-list-panel .table-scroll{border-top:1px solid var(--border-soft);flex:auto;overflow:auto}.subscription-list-panel thead th{z-index:2;background:var(--bg);position:sticky;top:0}.subscription-list-panel .pagination{flex:none}@media (width<=1180px){.subscription-summary{grid-template-columns:1fr}}@media (width<=860px){.subscription-list-panel{max-height:none}.subscription-list-panel .table-scroll{overflow:visible}.subscription-list-panel table{min-width:0}.subscription-list-panel .list-toolbar>.input:first-child{width:100%}}tr[data-expiry-status=soon] td{background:color-mix(in oklab, var(--warn), transparent 88%)}tr[data-expiry-status=urgent] td{background:color-mix(in oklab, var(--danger), transparent 90%)}tr[data-expiry-status=expired] td{background:color-mix(in oklab, var(--danger), transparent 86%)}tr[data-expiry-status=soon]:hover td,tr[data-expiry-status=urgent]:hover td,tr[data-expiry-status=expired]:hover td{background:color-mix(in oklab, currentColor, transparent 94%)}button.renewal-pill{cursor:pointer;text-align:left}button.renewal-pill:hover{border-color:var(--accent);color:var(--accent-active);background:color-mix(in oklab, var(--accent), transparent 94%)}td.row-actions{vertical-align:middle!important;height:auto!important;display:table-cell!important}td.row-actions .btn{margin-bottom:4px;margin-right:6px}td.row-actions .btn:last-child{margin-right:0}@media (width<=860px){td.row-actions{grid-template-columns:96px minmax(0,1fr)!important;display:grid!important}}.calendar-day{gap:5px;min-height:82px;padding:6px}.calendar-weekdays span{padding:7px 8px}.calendar-event{padding:3px 5px;font-size:10.5px;line-height:1.25}.calendar-date{font-size:11px}@media (width<=860px){.calendar-day{min-height:auto}}.calendar-events-scroll{gap:4px;min-height:0;max-height:58px;padding-right:2px;display:grid;overflow-y:auto}.calendar-events-scroll::-webkit-scrollbar{width:4px}.calendar-events-scroll::-webkit-scrollbar-thumb{background:var(--border);border-radius:999px}.calendar-day{grid-template-rows:auto auto}.calendar-events-scroll{align-content:start;align-self:start}.calendar-event{width:100%;min-height:26px}.calendar-tooltip{display:none!important}.confirm-card{width:min(420px,100vw - 28px)}.confirm-actions{justify-content:flex-end;gap:10px;display:flex}.subscription-list-panel .table-scroll{overflow:auto}.subscription-list-panel table{table-layout:fixed;width:max-content;min-width:1180px}.subscription-list-panel th:first-child,.subscription-list-panel td:first-child{width:220px}.subscription-list-panel th:nth-child(2),.subscription-list-panel td:nth-child(2){width:160px}.subscription-list-panel th:nth-child(3),.subscription-list-panel td:nth-child(3){width:110px}.subscription-list-panel th:nth-child(4),.subscription-list-panel td:nth-child(4),.subscription-list-panel th:nth-child(5),.subscription-list-panel td:nth-child(5){width:130px}.subscription-list-panel th:nth-child(6),.subscription-list-panel td:nth-child(6){white-space:nowrap;text-overflow:ellipsis;width:260px;max-width:260px;overflow:hidden}.subscription-list-panel th:nth-child(7),.subscription-list-panel td:nth-child(7){z-index:3;background:var(--bg);width:310px;min-width:310px;max-width:310px;box-shadow:-1px 0 0 var(--border-soft);position:sticky;right:0}.subscription-list-panel thead th:nth-child(7){z-index:5}.subscription-list-panel tr[data-expiry-status=soon] td:nth-child(7){background:color-mix(in oklab, var(--warn), transparent 88%)}.subscription-list-panel tr[data-expiry-status=urgent] td:nth-child(7){background:color-mix(in oklab, var(--danger), transparent 90%)}.subscription-list-panel tr[data-expiry-status=expired] td:nth-child(7){background:color-mix(in oklab, var(--danger), transparent 86%)}.subscription-list-panel td.row-actions{white-space:nowrap}.subscription-list-panel td.row-actions .btn{margin-bottom:0;margin-right:4px;padding:0 10px}@media (width<=860px){.subscription-list-panel th:nth-child(7),.subscription-list-panel td:nth-child(7){width:auto;min-width:0;max-width:none;box-shadow:none;position:static}.subscription-list-panel th:nth-child(6),.subscription-list-panel td:nth-child(6){white-space:normal;width:auto;max-width:none;text-overflow:initial;overflow:visible}}.panel.subscription-list-panel .table-scroll{max-width:100%!important;overflow:scroll auto!important}.panel.subscription-list-panel .table-scroll>table th:nth-child(4),.panel.subscription-list-panel .table-scroll>table td:nth-child(4),.panel.subscription-list-panel .table-scroll>table th:nth-child(5),.panel.subscription-list-panel .table-scroll>table td:nth-child(5){width:130px!important}.panel.subscription-list-panel .table-scroll>table th:nth-child(6),.panel.subscription-list-panel .table-scroll>table td:nth-child(6){white-space:nowrap!important;text-overflow:ellipsis!important;width:960px!important;max-width:960px!important;overflow:hidden!important}.panel.subscription-list-panel .table-scroll>table th:nth-child(7),.panel.subscription-list-panel .table-scroll>table td:nth-child(7){z-index:10!important;background:var(--bg)!important;width:300px!important;min-width:300px!important;max-width:300px!important;box-shadow:-1px 0 0 var(--border-soft)!important;position:sticky!important;right:0!important}.panel.subscription-list-panel .table-scroll>table thead th:nth-child(7){z-index:12!important}.panel.subscription-list-panel .table-scroll>table tr[data-expiry-status=soon] td:nth-child(7){background:color-mix(in oklab, var(--warn), transparent 88%)!important}.panel.subscription-list-panel .table-scroll>table tr[data-expiry-status=urgent] td:nth-child(7){background:color-mix(in oklab, var(--danger), transparent 90%)!important}.panel.subscription-list-panel .table-scroll>table tr[data-expiry-status=expired] td:nth-child(7){background:color-mix(in oklab, var(--danger), transparent 86%)!important}@media (width<=860px){.panel.subscription-list-panel .table-scroll{overflow-x:visible!important}.panel.subscription-list-panel .table-scroll>table{width:100%!important;min-width:0!important}.panel.subscription-list-panel .table-scroll>table th:nth-child(7),.panel.subscription-list-panel .table-scroll>table td:nth-child(7){width:auto!important;min-width:0!important;max-width:none!important;position:static!important}}.subscription-list-panel .list-toolbar{align-items:center!important}.subscription-list-panel .list-toolbar .input,.subscription-list-panel .list-toolbar select.input,.subscription-list-panel .segmented{height:42px!important;min-height:42px!important}.subscription-list-panel .segmented{align-items:center!important;padding:4px!important;display:inline-flex!important}.subscription-list-panel .segment{justify-content:center!important;align-items:center!important;height:34px!important;min-height:34px!important;display:inline-flex!important}.subscription-list-panel td.name-cell{font-weight:650;padding-left:18px!important}.panel.subscription-list-panel .table-scroll>table{width:2120px!important;min-width:2120px!important}@media (width<=860px){.subscription-list-panel td.name-cell{padding-left:14px!important}.panel.subscription-list-panel .table-scroll>table{width:100%!important;min-width:0!important}.panel.subscription-list-panel .table-scroll>table th:nth-child(8),.panel.subscription-list-panel .table-scroll>table td:nth-child(8){width:auto!important;min-width:0!important;max-width:none!important;position:static!important}}.subscription-list-panel .list-toolbar{justify-content:flex-end!important}.subscription-list-panel .list-toolbar>.input:first-child{margin-left:auto}.panel.subscription-list-panel .table-scroll>table th:nth-child(7),.panel.subscription-list-panel .table-scroll>table td:nth-child(7){width:850px!important;max-width:850px!important}.panel.subscription-list-panel .table-scroll{overflow-x:auto!important}.panel.subscription-list-panel .table-scroll>table{table-layout:fixed!important;width:100%!important;min-width:1180px!important}.panel.subscription-list-panel .table-scroll>table th:nth-child(8),.panel.subscription-list-panel .table-scroll>table td:nth-child(8){z-index:10!important;width:300px!important;min-width:300px!important;max-width:300px!important;position:sticky!important;right:0!important}.panel.subscription-list-panel .table-scroll>table th:nth-child(7),.panel.subscription-list-panel .table-scroll>table td:nth-child(7){white-space:nowrap!important;text-overflow:ellipsis!important;width:auto!important;max-width:none!important;overflow:hidden!important}.panel.subscription-list-panel .table-scroll>table th:nth-child(8),.panel.subscription-list-panel .table-scroll>table td:nth-child(8){z-index:auto!important;width:300px!important;min-width:300px!important;max-width:300px!important;box-shadow:none!important;position:static!important;right:auto!important}.panel.subscription-list-panel .table-scroll>table td.row-actions{text-align:right!important;white-space:nowrap!important}.subscription-list-panel .list-toolbar{align-items:center!important;padding:10px 14px!important}.subscription-list-panel .list-toolbar .input,.subscription-list-panel .list-toolbar select.input,.subscription-list-panel .list-toolbar .segmented{height:40px!important;min-height:40px!important;max-height:40px!important}.subscription-list-panel .list-toolbar .input,.subscription-list-panel .list-toolbar select.input{line-height:40px!important}.subscription-list-panel .list-toolbar .segmented{padding:3px!important}.subscription-list-panel .list-toolbar .segment{height:32px!important;min-height:32px!important;padding-top:0!important;padding-bottom:0!important;line-height:32px!important}.panel.subscription-list-panel .table-scroll{overflow:auto!important}.panel.subscription-list-panel .table-scroll>table{table-layout:fixed!important;width:1800px!important;min-width:1800px!important;max-width:none!important}.panel.subscription-list-panel .table-scroll>table th:first-child,.panel.subscription-list-panel .table-scroll>table td:first-child{width:220px!important}.panel.subscription-list-panel .table-scroll>table th:nth-child(2),.panel.subscription-list-panel .table-scroll>table td:nth-child(2){width:150px!important}.panel.subscription-list-panel .table-scroll>table th:nth-child(3),.panel.subscription-list-panel .table-scroll>table td:nth-child(3){width:110px!important}.panel.subscription-list-panel .table-scroll>table th:nth-child(4),.panel.subscription-list-panel .table-scroll>table td:nth-child(4){width:180px!important}.panel.subscription-list-panel .table-scroll>table th:nth-child(5),.panel.subscription-list-panel .table-scroll>table td:nth-child(5),.panel.subscription-list-panel .table-scroll>table th:nth-child(6),.panel.subscription-list-panel .table-scroll>table td:nth-child(6){width:130px!important}.panel.subscription-list-panel .table-scroll>table th:nth-child(7),.panel.subscription-list-panel .table-scroll>table td:nth-child(7){z-index:auto!important;white-space:nowrap!important;text-overflow:ellipsis!important;width:580px!important;max-width:580px!important;position:static!important;right:auto!important;overflow:hidden!important}.panel.subscription-list-panel .table-scroll>table th:nth-child(8),.panel.subscription-list-panel .table-scroll>table td:nth-child(8){z-index:10!important;background:var(--bg)!important;width:300px!important;min-width:300px!important;max-width:300px!important;box-shadow:-1px 0 0 var(--border-soft)!important;position:sticky!important;right:0!important}.panel.subscription-list-panel .table-scroll>table thead th:nth-child(8){z-index:12!important}.panel.subscription-list-panel .table-scroll>table tr[data-expiry-status=soon] td:nth-child(8){background:color-mix(in oklab, var(--warn), transparent 88%)!important}.panel.subscription-list-panel .table-scroll>table tr[data-expiry-status=urgent] td:nth-child(8){background:color-mix(in oklab, var(--danger), transparent 90%)!important}.panel.subscription-list-panel .table-scroll>table tr[data-expiry-status=expired] td:nth-child(8){background:color-mix(in oklab, var(--danger), transparent 86%)!important}@media (width<=860px){.panel.subscription-list-panel .table-scroll{overflow-x:visible!important}.panel.subscription-list-panel .table-scroll>table{width:100%!important;min-width:0!important}.panel.subscription-list-panel .table-scroll>table th:nth-child(8),.panel.subscription-list-panel .table-scroll>table td:nth-child(8){width:auto!important;min-width:0!important;max-width:none!important;box-shadow:none!important;position:static!important}}.th-sort{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.th-sort:hover{color:var(--accent-active)}.btn.invisible{visibility:hidden;pointer-events:none}.panel.subscription-list-panel .table-scroll>table th:nth-child(7),.panel.subscription-list-panel .table-scroll>table td:nth-child(7){z-index:auto!important;box-shadow:none!important;position:static!important;right:auto!important}.panel.subscription-list-panel .table-scroll>table tbody tr:hover td{background:color-mix(in oklab, var(--accent), transparent 94%)!important}tr[data-expiry-status=soon] td,.panel.subscription-list-panel .table-scroll>table tr[data-expiry-status=soon] td:nth-child(8){background:#fff7e6!important}tr[data-expiry-status=urgent] td,tr[data-expiry-status=expired] td,.panel.subscription-list-panel .table-scroll>table tr[data-expiry-status=urgent] td:nth-child(8),.panel.subscription-list-panel .table-scroll>table tr[data-expiry-status=expired] td:nth-child(8){background:#fff1f0!important}.panel.subscription-list-panel .table-scroll>table tbody tr:hover td,.panel.subscription-list-panel .table-scroll>table tbody tr[data-expiry-status=soon]:hover td,.panel.subscription-list-panel .table-scroll>table tbody tr[data-expiry-status=urgent]:hover td,.panel.subscription-list-panel .table-scroll>table tbody tr[data-expiry-status=expired]:hover td{filter:none!important}.panel.subscription-list-panel .table-scroll>table tbody tr[data-expiry-status=soon]:hover td{background:#fff7e6!important}.panel.subscription-list-panel .table-scroll>table tbody tr[data-expiry-status=urgent]:hover td,.panel.subscription-list-panel .table-scroll>table tbody tr[data-expiry-status=expired]:hover td{background:#fff1f0!important}.switch-field input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent)}.subscription-list-panel{min-height:0!important;max-height:none!important;overflow:visible!important}.subscription-list-panel .table-scroll{flex:none!important;max-height:none!important;overflow-y:visible!important}.subscription-list-panel thead th{position:static!important;top:auto!important}.sidebar{background:var(--bg);border-right:0;gap:14px;padding:20px 14px}.sidebar-card{border:1px solid var(--border-soft);background:var(--surface);box-shadow:var(--elev-soft);border-radius:28px;gap:18px;padding:22px 16px;display:grid}.nav-group{gap:10px;display:grid}.nav-title{color:var(--meta);font:700 14px/1.1 var(--font-body);letter-spacing:-.18px;margin:0;padding:0 24px}.nav-divider{background:var(--border-soft);height:1px;margin:0 2px}.nav{gap:8px}.nav a{min-height:48px;color:var(--fg-2);letter-spacing:-.35px;border:0;border-radius:999px;gap:14px;padding:0 24px;font-size:16px;font-weight:650}.nav a:hover{color:var(--fg);background:var(--surface-warm);border-color:#0000}.nav a.active{background:var(--surface-warm);color:var(--fg);box-shadow:none;border-color:#0000}.nav-icon{color:currentColor;place-items:center;width:22px;font-size:19px;line-height:1;display:inline-grid}.sidebar-footer{display:none}.sidebar-card .logout{color:var(--danger)}.subscription-list-panel .table-scroll{position:relative;overflow-x:auto}.subscription-list-panel table{min-width:1120px}.subscription-list-panel .action-header,.subscription-list-panel .action-cell{z-index:2;background:var(--bg);min-width:310px;position:sticky;right:0;box-shadow:-12px 0 18px -18px #11181273}.subscription-list-panel .action-header{z-index:3;background:var(--surface-warm)}.subscription-list-panel tbody tr:hover .action-cell{background:color-mix(in oklab, var(--accent), transparent 94%)}.subscription-list-panel .action-cell{flex-wrap:nowrap;gap:8px}.subscription-list-panel .action-cell .switch{flex:none;margin-right:2px}@media (width<=860px){.subscription-list-panel .table-scroll{overflow-x:visible}.subscription-list-panel table{min-width:0}.subscription-list-panel .action-header,.subscription-list-panel .action-cell{min-width:0;box-shadow:none;position:static}.subscription-list-panel .action-cell{flex-wrap:wrap}}.nav-divider{background:var(--border-soft);height:1px}.nav-title{color:var(--meta);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px;padding:0 9px;font-size:10px}.nav-icon{flex:0 0 18px;place-items:center;width:18px;font-size:15px;line-height:1;display:inline-grid}.nav a.logout{color:var(--danger)}.nav a.logout:hover{border-color:color-mix(in oklab, var(--danger), transparent 72%);background:color-mix(in oklab, var(--danger), transparent 95%);color:var(--danger)}.subscription-list-panel th{text-align:center}.subscription-list-panel .th-sort{margin:0 auto}.subscription-list-panel .action-cell{white-space:nowrap;flex-direction:row;justify-content:flex-start;align-items:center;display:flex}.subscription-list-panel .action-cell .btn,.subscription-list-panel .action-cell .switch{flex:none}.color-field{grid-template-columns:44px minmax(0,1fr);align-items:center;gap:8px;display:grid}.color-picker{border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--bg);width:44px;height:34px;padding:2px}.subscription-list-panel table{border-collapse:separate;border-spacing:0}.subscription-list-panel .action-header,.subscription-list-panel .action-cell{transform:translate(3px)}.subscription-list-panel .table-scroll{padding-right:3px}.subscription-list-panel td{text-align:center}.subscription-list-panel td[data-label=名称],.subscription-list-panel td[data-label=备注]{text-align:left}.subscription-list-panel .action-cell{justify-content:flex-start}.subscription-table-shell{grid-template-columns:minmax(0,1fr) 310px;align-items:start;display:grid}.subscription-data-scroll{overflow-x:auto;padding-right:0!important}.subscription-data-scroll table{border-collapse:collapse;min-width:1490px}.subscription-action-freeze{z-index:4;border-left:1px solid var(--border-soft);background:var(--bg);position:relative;box-shadow:-12px 0 18px -18px #11181273}.subscription-action-freeze table{border-collapse:collapse;width:310px;min-width:310px}.subscription-action-freeze th,.subscription-action-freeze td{background:var(--bg)}.subscription-action-freeze th{background:var(--surface-warm);text-align:center}.subscription-action-freeze .action-cell{width:310px;min-width:310px;height:51px;box-shadow:none;white-space:nowrap;flex-wrap:nowrap;justify-content:flex-start;align-items:center;display:flex;position:static;transform:none!important}.subscription-data-scroll tbody tr,.subscription-action-freeze tbody tr,.subscription-data-scroll td,.subscription-action-freeze td{height:51px}.subscription-list-panel .subscription-data-scroll td[data-label=备注]{text-overflow:ellipsis;white-space:nowrap;max-width:260px;overflow:hidden}.subscription-list-panel .subscription-data-scroll tbody tr:hover,.subscription-list-panel .subscription-action-freeze tbody tr:hover{background:color-mix(in oklab, var(--accent), transparent 94%)}@media (width<=860px){.subscription-table-shell{display:block}.subscription-action-freeze{box-shadow:none;border-left:0}.subscription-action-freeze table,.subscription-data-scroll table{width:100%;min-width:0}.subscription-action-freeze thead{display:none}.subscription-action-freeze .action-cell{flex-wrap:wrap;width:auto;min-width:0;height:auto}}.app{grid-template-columns:252px minmax(0,1fr)}.brand{border-bottom:0;padding:0 8px 12px}.mark{color:#111;box-shadow:none;background:#fff;border-color:#d9d9d9}.brand strong{color:#111;font-size:14px}.brand span{color:#777}.sidebar-card,.sidebar-bottom{background:#fff;border:1px solid #e5e5e5;border-radius:30px;padding:16px;box-shadow:0 14px 34px #1111110f}.nav a:hover,.nav a.active{color:#111;box-shadow:none;background:#f0f0f0}.nav a.logout,.nav a.logout:hover{color:#111;background:0 0}.nav a.logout:hover{background:#f0f0f0}.mobile-nav a{color:#202020}.mobile-nav a.active{color:#111;background:#f0f0f0}.app{grid-template-columns:246px minmax(0,1fr);column-gap:0}.sidebar{color:#151515;background:#fff;border-right:1px solid #e7e7e7;gap:22px;padding:28px 14px 18px}.brand{border-bottom:1px solid #eee;gap:12px;min-height:48px;padding:0 10px 18px}.mark{color:#111;width:38px;height:38px;box-shadow:none;background:linear-gradient(135deg,#dffbd4,#73df48);border:1px solid #e1e1e1;border-radius:12px}.mark svg{width:21px;height:21px}.brand strong{color:#151515;letter-spacing:-.25px;font-size:16px;font-weight:750}.brand span{color:#8a8a8a;font-size:10px}.sidebar-card,.sidebar-bottom{box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.sidebar-card{gap:8px;display:grid}.sidebar-bottom{gap:8px;margin-top:auto;display:grid}.sidebar-bottom:before{content:"";background:#eee;height:1px;margin:0 8px 8px;display:block}.sidebar-bottom .nav-divider{display:none}.nav{gap:4px;display:grid}.nav a{color:#1d1d1d;letter-spacing:-.18px;background:0 0;border:1px solid #0000;border-radius:8px;gap:10px;min-height:40px;padding:0 10px;font-size:14px;font-weight:700}.nav a:hover{color:#151515;box-shadow:none;background:#f7f7f7;border-color:#eee}.nav a.active{color:var(--sidebar-active);background:var(--sidebar-active-bg);box-shadow:none;border-color:#e1efda}.nav a.logout,.nav a.logout:hover{color:#1d1d1d}.nav a.logout:hover{background:#f7f7f7;border-color:#eee}.nav-icon{color:currentColor;width:22px;height:22px;font-family:var(--font-mono);flex:0 0 22px;place-items:center;font-size:18px;font-weight:750;line-height:1;display:inline-grid}.main{padding-left:clamp(24px,3.2vw,44px)}@media (width<=860px){.app{display:block}.main{padding-left:14px}}:root{--sidebar-active:#1677ff;--sidebar-active-bg:#eef5ff}.mark{color:#0b3a8f;background:linear-gradient(135deg,#dcecff 0%,#8fc2ff 100%);border-color:#b8d8ff}.nav a.active{color:var(--sidebar-active);background:var(--sidebar-active-bg);border-color:#cfe3ff}.list-toolbar{justify-content:flex-start}.btn.icon.refresh-btn{width:36px;min-width:36px;color:var(--accent-active);background:color-mix(in oklab, var(--accent), transparent 94%);border-color:color-mix(in oklab, var(--accent), transparent 72%);border-radius:9px;padding:0;font-size:18px;font-weight:800}.btn.icon.refresh-btn:hover{color:var(--accent-on);background:var(--accent);border-color:var(--accent)}.muted-cell{color:var(--meta)}.btn.icon.refresh-btn{text-align:center;place-items:center;line-height:1;display:inline-grid}.btn.icon.refresh-btn svg{width:18px;height:18px;display:block}.nav-icon svg{width:21px;height:21px;display:block}.nav-icon span{line-height:1;display:block}.renewal-strip{background:linear-gradient(#fff 0%,#fbfdff 100%);border-color:#d6e6ff;border-radius:18px}.renewal-strip .panel-body{grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);min-height:126px;padding:22px 24px}.renewal-strip h2{letter-spacing:-.45px;font-size:20px;line-height:1.15}.renewal-strip p{color:var(--muted);margin-top:10px;font-size:14px}.renewal-list{place-content:center flex-end;align-items:center;min-height:56px}.renewal-pill{background:#fff;border-color:#dfe5ee;border-radius:12px;min-height:40px;padding:0 14px;font-size:14px;box-shadow:0 6px 18px #1118120d}.renewal-pill strong{letter-spacing:-.18px;font-size:14px}.renewal-pill .dot{width:12px;height:12px}@media (width<=860px){.renewal-strip .panel-body{text-align:left;grid-template-columns:1fr}.renewal-list{justify-content:flex-start}html,body,#root{width:100%;min-width:0;overflow-x:hidden}.main{width:100%;padding:16px 12px calc(92px + env(safe-area-inset-bottom))}.topbar{gap:12px;margin-bottom:12px}.subscription-summary{overflow:visible}.list-toolbar{grid-template-columns:42px minmax(0,1fr);align-items:stretch;gap:10px;display:grid}.list-toolbar select,.list-toolbar .segmented{grid-column:1/-1}.btn.icon.refresh-btn{width:42px;min-width:42px;height:42px;min-height:42px}.subscription-table-shell{gap:0;display:grid}.subscription-data-scroll,.subscription-action-freeze{width:100%;overflow:visible}.subscription-data-scroll table,.subscription-action-freeze table{display:block;width:100%!important;min-width:0!important}.subscription-data-scroll tbody,.subscription-action-freeze tbody{display:block}.subscription-data-scroll tr,.subscription-action-freeze tr{border-bottom:1px solid var(--border-soft);padding:10px 0;display:grid;height:auto!important}.subscription-data-scroll td,.subscription-action-freeze td{grid-template-columns:86px minmax(0,1fr);min-height:32px;padding:6px 12px;display:grid;text-align:left!important;height:auto!important}.subscription-action-freeze tr{margin-top:-1px;padding-top:0}.subscription-action-freeze .action-cell{flex-wrap:wrap;gap:6px;padding-left:98px;width:auto!important;min-width:0!important;display:flex!important}.subscription-action-freeze .action-cell:before{content:attr(data-label);width:86px;color:var(--muted);margin-left:-86px;font-size:12px;line-height:30px}.subscription-list-panel .subscription-data-scroll td[data-label=备注]{white-space:normal;max-width:none}.mobile-nav{left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom));grid-template-columns:repeat(5,minmax(0,1fr))}.mobile-nav a{min-width:0;min-height:42px;font-size:12px}}@media (display-mode:standalone){.main{padding-top:calc(16px + env(safe-area-inset-top))}.mobile-nav{bottom:calc(10px + env(safe-area-inset-bottom))}}@media (width<=860px){.modal.open{width:calc(100vw - 24px);max-width:calc(100vw - 24px);max-height:calc(100vh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));top:calc(12px + env(safe-area-inset-top));left:12px;right:12px;overflow:auto;transform:none}.modal.open .panel{border-radius:14px}.modal.open .panel-head{z-index:2;background:var(--bg);position:sticky;top:0}.modal.open .panel-body{padding:12px}.modal.open input,.modal.open select,.modal.open textarea,.modal.open .input{width:100%;min-width:0}.modal.open .color-field{grid-template-columns:44px minmax(0,1fr)}.panel:not(.subscription-list-panel)>table,.panel:not(.subscription-list-panel)>table thead,.panel:not(.subscription-list-panel)>table tbody,.panel:not(.subscription-list-panel)>table tr,.panel:not(.subscription-list-panel)>table th,.panel:not(.subscription-list-panel)>table td{display:block}.panel:not(.subscription-list-panel)>table thead{display:none}.panel:not(.subscription-list-panel)>table tr{border-bottom:1px solid var(--border-soft);padding:10px 0}.panel:not(.subscription-list-panel)>table td{text-align:left;overflow-wrap:anywhere;border:0;grid-template-columns:86px minmax(0,1fr);gap:10px;padding:7px 12px;display:grid}.panel:not(.subscription-list-panel)>table td:before{content:attr(data-label);color:var(--muted);letter-spacing:-.12px;font-size:12px}.panel:not(.subscription-list-panel)>table td:not([data-label]):before{content:""}.panel:not(.subscription-list-panel) .row-actions{flex-wrap:wrap;justify-content:flex-start}.calendar-toolbar{grid-template-columns:1fr auto 1fr;width:100%;display:grid}.calendar-event{width:100%;min-width:0}.calendar-events-scroll{min-width:0}.panel-head form{grid-template-columns:1fr;gap:8px;width:100%;display:grid}}
