.os{--ink-success:color-mix(in srgb, hsl(var(--success)) 72%, hsl(var(--foreground)));--ink-warning:color-mix(in srgb, hsl(var(--warning)) 62%, hsl(var(--foreground)));--ink-destructive:color-mix(in srgb, hsl(var(--destructive)) 82%, hsl(var(--foreground)));--ink-review:color-mix(in srgb, hsl(var(--review)) 86%, hsl(var(--foreground)));--topbar-h:56px;--tabbar-h:64px;--rail-w:220px;background:hsl(var(--background));min-height:100dvh;color:hsl(var(--foreground));font-family:var(--font-inter), "Inter", system-ui, -apple-system, sans-serif;font-feature-settings:"cv02", "cv03", "cv04", "cv11";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;font-size:14px;line-height:20px}html,body{overscroll-behavior:none}.os *,.os :before,.os :after{border-color:hsl(var(--border))}.os h1{letter-spacing:-.025em;margin:0;font-size:24px;font-weight:600;line-height:32px}.os h2{margin:0;font-size:16px;font-weight:600;line-height:24px}.os h3{margin:0;font-size:14px;font-weight:600;line-height:20px}.os p{margin:0}:where(.os) button,:where(.os) input,:where(.os) textarea,:where(.os) select{font:inherit;color:inherit}:where(.os) a{color:inherit;text-decoration:none}.os :focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px}.sub{color:hsl(var(--muted-foreground));font-size:14px;line-height:20px}.cap{color:hsl(var(--muted-foreground));font-size:12px;line-height:16px}.over{color:hsl(var(--muted-foreground));letter-spacing:.025em;text-transform:uppercase;font-size:12px;font-weight:600;line-height:16px}.mono{font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,monospace;font-size:12px}.num{font-variant-numeric:tabular-nums}.nowrap{white-space:nowrap}.shell{min-height:100dvh}.mobilebar{z-index:40;height:var(--topbar-h);padding:0 8px 0 16px;padding-top:env(safe-area-inset-top);box-sizing:content-box;background:hsl(var(--background) / .85);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border-bottom:1px solid hsl(var(--border) / .6);justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.brandmark{align-items:center;gap:8px;font-size:14px;font-weight:600;line-height:20px;display:flex}.brandmark img{flex:none;width:24px;height:24px}.brandname{flex-direction:column;display:flex}.brandname .cap{font-weight:400}.login-logo{width:64px;height:64px;margin:0 auto;display:block}.topbar,.rail{display:none}.main{padding:16px 16px calc(var(--tabbar-h) + 24px + env(safe-area-inset-bottom))}.main>.inner{max-width:1600px;margin:0 auto}.main>.inner.reading{max-width:768px}.tabbar{z-index:50;height:calc(var(--tabbar-h) + env(safe-area-inset-bottom));padding:0 8px env(safe-area-inset-bottom);background:hsl(var(--background) / .85);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border-top:1px solid hsl(var(--border) / .7);grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.tab{min-height:44px;color:hsl(var(--muted-foreground));flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:11px;font-weight:500;line-height:1;transition:color .1s ease-out;display:flex;position:relative}.tab .ico{border-radius:9999px;justify-content:center;align-items:center;width:48px;height:28px;transition:background .1s ease-out;display:flex;position:relative}.tab svg{width:20px;height:20px}.tab[aria-current=page]{color:hsl(var(--primary));font-weight:600}.tab[aria-current=page] .ico{background:hsl(var(--primary) / .1)}.navcount{background:hsl(var(--warning) / .14);min-width:20px;height:20px;color:var(--ink-warning);font-variant-numeric:tabular-nums;border-radius:9999px;justify-content:center;align-items:center;padding:0 6px;font-size:11px;font-weight:600;display:inline-flex}.tab .navcount.desk-only{display:none}.tab .navcount{box-shadow:0 0 0 2px hsl(var(--background));background:color-mix(in srgb, hsl(var(--warning)) 14%, hsl(var(--background)));position:absolute;top:-6px;left:30px}@media (min-width:1024px){.mobilebar,.tabbar{display:none}.rail{width:var(--rail-w);z-index:30;background:hsl(var(--muted) / .3);border-right:1px solid hsl(var(--border));flex-direction:column;display:flex;position:fixed;inset:0 auto 0 0}.rail .brandmark{height:var(--topbar-h);flex:none;padding:0 16px}.rail nav{flex-direction:column;gap:4px;padding:8px 12px;display:flex}.rail .tab{border-radius:10px;flex-direction:row;justify-content:flex-start;gap:12px;min-height:0;padding:8px 12px;font-size:14px;font-weight:400;line-height:20px;transition:background .1s ease-out,color .1s ease-out}.rail .tab .ico{background:0 0;width:auto;height:auto}.rail .tab svg{width:16px;height:16px}.rail .tab:hover{background:hsl(var(--muted));color:hsl(var(--foreground))}.rail .tab[aria-current=page]{background:hsl(var(--primary) / .1);color:hsl(var(--primary));font-weight:500}.rail .tab .label{flex:1}.rail .navcount{box-shadow:none;background:hsl(var(--warning) / .14);position:static}.rail .navcount.phone-only{display:none}.rail .navcount.desk-only{display:inline-flex}.topbar{height:var(--topbar-h);z-index:20;margin-left:var(--rail-w);background:hsl(var(--background) / .95);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-bottom:1px solid hsl(var(--border));justify-content:flex-end;align-items:center;gap:12px;padding:0 24px;display:flex;position:sticky;top:0}.avatar{background:hsl(var(--primary) / .1);width:36px;height:36px;color:hsl(var(--primary));border-radius:9999px;flex:none;place-items:center;font-size:12px;font-weight:600;display:grid}.main{margin-left:var(--rail-w);padding:32px}}@media (min-width:640px) and (max-width:1023px){.main{padding-top:24px;padding-left:24px;padding-right:24px}}.page-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:4px;padding-bottom:12px;display:flex}.page-head .titles{flex:1;min-width:0}.page-head .titlerow{align-items:center;gap:12px;display:flex}.page-head .iconbox{background:hsl(var(--primary) / .1);width:34px;height:34px;color:hsl(var(--primary));border-radius:9px;flex:none;justify-content:center;align-items:center;display:none}.page-head .iconbox svg{width:18px;height:18px}.page-head .count{background:hsl(var(--muted-foreground) / .12);font-variant-numeric:tabular-nums;color:hsl(var(--muted-foreground));border-radius:9999px;padding:1px 7px;font-size:11px;font-weight:600;line-height:16px;display:inline-block}.page-head .subtitle{color:hsl(var(--muted-foreground));margin-top:2px;font-size:12px;line-height:16px;display:none}.page-head .subtitle.phone{display:block}.os .page-head h1{overflow-wrap:anywhere;font-size:34px;font-weight:700;line-height:41px}@media (min-width:768px){.page-head .iconbox{display:flex}.page-head .subtitle{font-size:14px;line-height:20px;display:block}.os .page-head h1{font-size:24px;font-weight:600;line-height:32px}}.card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:12px;box-shadow:0 1px 2px #0000000d}.stack{flex-direction:column;gap:16px;display:flex}.row{align-items:center;gap:12px;display:flex}.row.wrap{flex-wrap:wrap}.grow{flex:1;min-width:0}.section{flex-direction:column;gap:12px;padding:24px;display:flex;container-type:inline-size}.section.head{padding-bottom:0}.linkcard{transition:border-color .1s ease-out,background .1s ease-out}.linkcard:hover{border-color:hsl(var(--border-strong));background:hsl(var(--muted) / .4)}.divided>*+*{border-top:1px solid hsl(var(--border))}.grid-2,.grid-3{grid-template-columns:minmax(0,1fr);align-items:start;gap:16px;display:grid}@media (min-width:1024px){.grid-2{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1440px){.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.chip{background:hsl(var(--muted));color:hsl(var(--muted-foreground));white-space:nowrap;border-radius:10px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:500;line-height:16px;display:inline-flex}.chip.blue{background:hsl(var(--primary) / .1);color:hsl(var(--primary))}.chip.violet{background:hsl(var(--review) / .1);color:var(--ink-review)}.chip.amber{background:hsl(var(--warning) / .1);color:var(--ink-warning)}.chip.green{background:hsl(var(--success) / .1);color:var(--ink-success)}.chip.red{background:hsl(var(--destructive) / .1);color:var(--ink-destructive)}.btn{border:1px solid hsl(var(--input));background:hsl(var(--background));height:44px;color:hsl(var(--foreground));white-space:nowrap;cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:14px;font-weight:500;line-height:20px;transition:background .1s ease-out,color .1s ease-out,transform .1s ease-out,opacity .1s ease-out;display:inline-flex}.btn:hover:not(:disabled){background:hsl(var(--muted))}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:hsl(var(--primary));color:hsl(var(--primary-foreground));box-shadow:var(--shadow-sm);border-color:#0000}.btn.primary:hover:not(:disabled){background:hsl(var(--primary) / .9)}.btn.danger{color:var(--ink-destructive)}.btn.danger:hover:not(:disabled){background:hsl(var(--destructive) / .1)}.btn.danger.solid{background:hsl(var(--destructive));color:hsl(var(--destructive-foreground));box-shadow:var(--shadow-sm);border-color:#0000}.btn.danger.solid:hover:not(:disabled){background:hsl(var(--destructive) / .9)}.btn.ghost{background:0 0;border-color:#0000}.btn.ghost:hover:not(:disabled){background:hsl(var(--muted))}.btn.sm{border-radius:8px;height:44px;padding:0 12px;font-size:12px;line-height:16px}.btn svg{flex:none;width:16px;height:16px}@media (min-width:1024px){.btn{height:40px}.btn.sm{height:32px}}.actions{grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:8px;display:grid}.actions .btn{width:100%}@media (max-width:480px){.actions.four{grid-template-columns:1fr 1fr}}.decide{flex-direction:column;gap:8px;display:flex}@media (max-width:1023px){.decide{bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom));z-index:5;background:hsl(var(--card) / .95);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-top:1px solid hsl(var(--border));border-radius:0 0 12px 12px;margin:0 -24px -24px;padding:12px 24px 24px;position:sticky}}.banner{border:1px solid;border-radius:12px;align-items:flex-start;gap:12px;padding:12px 16px;font-size:14px;line-height:20px;display:flex}.banner svg{flex:none;width:16px;height:16px;margin-top:2px}.banner.error{background:hsl(var(--destructive) / .08);border-color:hsl(var(--destructive) / .25);color:var(--ink-destructive)}.banner.warn{background:hsl(var(--warning) / .08);border-color:hsl(var(--warning) / .25);color:var(--ink-warning)}.banner.ok{background:hsl(var(--success) / .08);border-color:hsl(var(--success) / .25);color:var(--ink-success)}.banner.info{background:hsl(var(--primary) / .06);border-color:hsl(var(--primary) / .2);color:hsl(var(--foreground))}.banner.info svg{color:hsl(var(--muted-foreground))}.banner b{font-weight:600}.quote{border-left:2px solid hsl(var(--border-strong));white-space:pre-wrap;overflow-wrap:anywhere;padding:2px 0 2px 12px}.draft{background:hsl(var(--secondary) / .4);border:1px solid hsl(var(--border));white-space:pre-wrap;overflow-wrap:anywhere;border-radius:10px;padding:12px 16px;font-size:14px;line-height:20px}.clamp{-webkit-line-clamp:5;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.linkbtn{color:hsl(var(--primary));cursor:pointer;background:0 0;border:0;min-height:44px;padding:0;font-size:14px;font-weight:500}.linkbtn:hover{text-underline-offset:4px;text-decoration:underline}@media (min-width:1024px){.linkbtn{min-height:32px}}.inlinelink{white-space:nowrap;color:hsl(var(--primary));font-weight:500;position:relative}.inlinelink:after{content:"";position:absolute;inset:-15px -4px}.inlinelink:hover{text-underline-offset:4px;text-decoration:underline}.field{flex-direction:column;gap:4px;display:flex}.field label{font-size:14px;font-weight:500;line-height:20px}.field label.cap{color:hsl(var(--muted-foreground));font-size:12px;font-weight:400;line-height:16px}.input,.textarea{box-sizing:border-box;border:1px solid hsl(var(--input));background:hsl(var(--background));border-radius:10px;width:100%;padding:8px 12px;font-size:16px;line-height:24px}.input::placeholder,.textarea::placeholder{color:hsl(var(--muted-foreground))}@media (min-width:768px){.input,.textarea{font-size:14px;line-height:20px}}.input{height:40px;padding-top:0;padding-bottom:0}.textarea{resize:vertical;min-height:160px;font-family:inherit}.input[readonly]{background:hsl(var(--muted));color:hsl(var(--muted-foreground))}.seg{background:hsl(var(--muted));border-radius:12px;grid-auto-columns:1fr;grid-auto-flow:column;gap:4px;padding:4px;display:grid}.seg button{min-height:44px;color:hsl(var(--muted-foreground));cursor:pointer;background:0 0;border:0;border-radius:10px;font-size:14px;font-weight:500;transition:background .1s ease-out,color .1s ease-out}.seg button:hover{color:hsl(var(--foreground))}.seg button[aria-pressed=true]{background:hsl(var(--card));color:hsl(var(--foreground));box-shadow:var(--shadow-sm)}@media (min-width:1024px){.seg button{min-height:32px}}.switch{background:hsl(var(--border-strong));cursor:pointer;border:0;border-radius:9999px;flex:none;width:44px;height:24px;transition:background .1s ease-out;position:relative}.switch:after{content:"";background:hsl(var(--card));width:20px;height:20px;box-shadow:var(--shadow-sm);border-radius:50%;transition:transform .1s ease-out;position:absolute;top:2px;left:2px}.switch[aria-checked=true]{background:hsl(var(--success))}.switch[aria-checked=true]:after{transform:translate(20px)}.switch:before{content:"";position:absolute;inset:-10px -4px}.switch:disabled{opacity:.5;cursor:wait}.meter{background:hsl(var(--muted));border-radius:9999px;height:8px;overflow:hidden}.meter>i{background:hsl(var(--primary));border-radius:9999px;height:100%;transition:width .28s ease-out;display:block}.meter.full>i{background:hsl(var(--success))}.meter.hot>i{background:hsl(var(--warning))}.figs{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}@container (min-width:480px){.figs{grid-template-columns:repeat(4,minmax(0,1fr))}}.fig{background:hsl(var(--secondary) / .4);border-radius:10px;flex-direction:column;gap:4px;padding:8px 12px;display:flex}.fig b{font-variant-numeric:tabular-nums;font-size:16px;font-weight:600;line-height:24px}.fig.key dt{color:hsl(var(--foreground));font-weight:600}.skeleton{background:hsl(var(--muted));border-radius:10px;animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}@keyframes pulse{50%{opacity:.5}}@media (prefers-reduced-motion:reduce){.os *,.os :before,.os :after{transition-duration:1ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.empty{text-align:center;color:hsl(var(--muted-foreground));flex-direction:column;align-items:center;gap:8px;padding:24px;display:flex}.empty svg{width:32px;height:32px;color:hsl(var(--subtle-foreground))}.empty h2{color:hsl(var(--foreground))}.feed{margin:0;padding:0;list-style:none}.feed li{align-items:flex-start;gap:12px;padding:12px 24px;transition:background 75ms ease-out;display:flex}.feed li+li{border-top:1px solid hsl(var(--border))}.feed li>span.cap{white-space:nowrap;line-height:20px}.dot{background:hsl(var(--muted));width:28px;height:28px;color:hsl(var(--muted-foreground));border-radius:8px;flex:none;place-items:center;display:grid}.dot svg{width:16px;height:16px}.dot.blue{background:hsl(var(--muted));color:hsl(var(--muted-foreground))}.dot.green{background:hsl(var(--success) / .1);color:var(--ink-success)}.dot.amber{background:hsl(var(--warning) / .1);color:var(--ink-warning)}.dot.red{background:hsl(var(--destructive) / .1);color:var(--ink-destructive)}.dot.violet{background:hsl(var(--review) / .1);color:var(--ink-review)}dialog.sheet{border:1px solid hsl(var(--border));box-shadow:var(--shadow-lg);background:hsl(var(--card));width:min(448px,100vw - 32px);color:hsl(var(--foreground));border-radius:12px;margin:auto;padding:0}dialog.sheet::backdrop{background:hsl(var(--foreground) / .5)}@media (max-width:1023px){dialog.sheet{width:100%;max-width:100%;padding-bottom:env(safe-area-inset-bottom);border-bottom:0;border-radius:16px 16px 0 0;margin:auto 0 0}dialog.sheet[open]{animation:.28s cubic-bezier(.32,.72,0,1) sheet-up}dialog.sheet:before{content:"";background:hsl(var(--muted-foreground) / .25);border-radius:9999px;width:36px;height:4px;margin:8px auto 0;display:block}}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:none}}.banner.toast{left:16px;right:16px;top:calc(var(--topbar-h) + 8px + env(safe-area-inset-top));z-index:60;background:hsl(var(--card));max-width:512px;box-shadow:var(--shadow-md);margin:0 auto;position:fixed}@media (min-width:1024px){.banner.toast{top:auto;left:calc(var(--rail-w) + 24px);margin:0;bottom:24px}}.fail-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.fail-list li{color:var(--ink-destructive);align-items:flex-start;gap:8px;font-size:12px;line-height:16px;display:flex}.fail-list svg{flex:none;width:12px;height:12px;margin-top:2px}.okline{color:var(--ink-success);align-items:center;gap:6px;font-size:12px;line-height:16px;display:flex}.okline svg{flex:none;width:12px;height:12px}.rolabel{flex-direction:column;gap:4px;display:flex}@media (min-width:560px){.rolabel{flex-direction:row;align-items:baseline;gap:8px}.rolabel>.cap{flex:none;width:168px}}.textarea.auto{resize:none;overflow:hidden}.login{place-items:center;min-height:100dvh;padding:24px 16px;display:grid}.login .card{width:min(400px,100%)}html{scroll-padding-bottom:calc(var(--tabbar-h,64px) + 16px + env(safe-area-inset-bottom))}@media (min-width:1024px){html{scroll-padding-top:72px;scroll-padding-bottom:0}}
