:root{--sw-bg:#fbfaf7;--sw-surface:#fff;--sw-surface-2:#f2f0ea;--sw-border:#e6e2d8;--sw-text:#1d222b;--sw-muted:#5a6472;--sw-primary:#2f6fdd;--sw-primary-hover:#2559b8;--sw-danger:#d84848;--sw-ok:#178a52;--hl-yellow:#ffd84d;--hl-green:#6ee7a0;--hl-blue:#7cc4ff;--hl-pink:#ff9ec4;--hl-purple:#c4a7ff;--sw-tx:#e8e5dc;--sw-caption:#e0559a;--sw-shadow:0 10px 30px rgba(50,60,90,.14);--sw-shadow-card:0 1px 2px rgba(20,25,40,.06),0 12px 40px rgba(20,25,40,.12);--sw-nav-shadow:0 4px 18px rgba(20,25,40,.08);--sw-t-fast:120ms;--sw-ease:cubic-bezier(0.2,0.8,0.3,1)}html.lang-pending body{visibility:hidden}[data-theme=dark]{--sw-bg:#0f1115;--sw-surface:#171a21;--sw-surface-2:#1e2330;--sw-border:#262b36;--sw-text:#e6e9ef;--sw-muted:#9aa3b2;--sw-primary:#4c8dff;--sw-primary-hover:#6ba3ff;--sw-danger:#ff6b6b;--sw-ok:#4ade8f;--sw-tx:#262b36;--sw-caption:#ff9ec4;--sw-shadow:0 10px 30px rgba(0,0,0,.5);--sw-shadow-card:0 1px 2px rgba(0,0,0,.4),0 12px 40px rgba(0,0,0,.55);--sw-nav-shadow:0 4px 18px rgba(0,0,0,.45)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--sw-bg);color:var(--sw-text);font:400 13.5px/1.55 var(--font-inter),system-ui,-apple-system,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased}button,input,select{font:inherit;color:inherit}input::placeholder,textarea::placeholder{color:var(--sw-muted);opacity:1}a{color:var(--sw-primary);text-decoration:none}[tabindex]:focus-visible,a:focus-visible,button:focus-visible{outline:2px solid var(--sw-primary);outline-offset:2px;border-radius:4px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}.shell{display:grid;grid-template-columns:216px 1fr;min-height:100vh}.rail{border-right:1px solid var(--sw-border);padding:22px 14px;position:-webkit-sticky;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:2px}.logo{font-weight:800;font-size:15px;letter-spacing:-.01em;padding:0 10px 16px}.logo a,a.logo{color:var(--sw-text)}.logo em{font-style:normal;color:var(--sw-primary);position:relative}.logo em:after{content:"Beta";position:absolute;top:-1.05em;right:-10px;font-family:Segoe Print,Bradley Hand,Comic Sans MS,cursive;font-size:9px;font-weight:700;letter-spacing:.02em;line-height:1;padding:1px 6px 2px;border-radius:6px 3px 7px 4px;color:#1d222b;background:var(--hl-yellow);transform:rotate(-7deg)}.rail .nav{display:flex;align-items:center;gap:9px;color:var(--sw-muted);font-size:13px;padding:8px 10px;border-radius:7px;transition:background var(--sw-t-fast) var(--sw-ease),color var(--sw-t-fast) var(--sw-ease)}.rail .nav:hover{background:var(--sw-surface);color:var(--sw-text)}.rail .nav.on{background:var(--sw-surface-2);color:var(--sw-text)}.rail button.nav{background:none;border:none;cursor:pointer;width:100%;text-align:left;font-weight:400}.rail .nav.logout:hover{background:color-mix(in srgb,var(--sw-danger) 10%,transparent);color:var(--sw-danger)}.rail .spacer{flex:1 1}.rail .who{display:flex;align-items:center;gap:6px;font-size:11.5px;color:var(--sw-muted);padding:8px 10px;min-width:0}.rail .who .who-mail{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;min-width:0}.acct{position:relative}.acct-btn{display:flex;align-items:center;gap:6px;width:100%;min-width:0;padding:8px 10px;border:none;border-radius:8px;background:none;font:inherit;font-size:12px;color:var(--sw-text);cursor:pointer;transition:background var(--sw-t-fast) var(--sw-ease)}.acct-btn:hover,.acct-btn[aria-expanded=true]{background:var(--sw-surface-2)}.acct-btn .who-mail{flex:1 1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;text-align:left}.acct-caret{display:inline-flex;color:var(--sw-muted);transition:transform var(--sw-t-fast) var(--sw-ease)}.acct-caret.up{transform:rotate(180deg)}.acct-pop{position:absolute;bottom:calc(100% + 8px);left:0;right:0;z-index:70;display:flex;flex-direction:column;gap:2px;background:var(--sw-surface);border:1px solid var(--sw-border);border-radius:10px;padding:6px;box-shadow:var(--sw-shadow-card)}.acct-pop .nav{width:100%}.acct-pop-sep{height:1px;margin:4px 6px;background:var(--sw-border)}.pro-pill{display:inline-flex;align-items:center;flex:none;padding:1px 7px;border-radius:999px;background:var(--sw-primary);color:#fff;font-size:10px;font-weight:700;letter-spacing:.05em;line-height:1.5;vertical-align:1px}main{padding:30px 34px 60px;max-width:1400px;min-width:0}@media (max-width:760px){.shell{grid-template-columns:56px 1fr}.rail{padding:16px 8px}.rail .logo{font-size:0;padding:0 0 10px;text-align:center}.rail .logo:after{content:"S";font-size:17px;font-weight:800;color:var(--sw-primary)}.rail .logo em:after{content:none}.rail .nav{justify-content:center;gap:0;font-size:0;padding:9px 0}.rail .who{display:none}main{padding:20px 14px 48px}}h1{font-size:19px;font-weight:700;margin:0 0 4px;letter-spacing:-.01em}.sub{color:var(--sw-muted);font-size:13px;margin:0 0 22px}.skl{background:color-mix(in srgb,var(--sw-muted) 16%,var(--sw-surface-2));border-radius:6px;max-width:100%;animation:skl-pulse 1.4s ease-in-out infinite}@keyframes skl-pulse{0%,to{opacity:1}50%{opacity:.5}}.row.skl-row{cursor:default}.row.skl-row:hover{background:none}.spinning{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.route-progress{position:fixed;top:0;left:0;height:2px;width:0;background:var(--sw-primary);z-index:100;pointer-events:none;animation:route-progress .5s var(--sw-ease) forwards}@keyframes route-progress{0%{width:0;opacity:1}75%{width:100%;opacity:1}to{width:100%;opacity:0}}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:12px;gap:12px;margin-bottom:26px}.card{background:var(--sw-surface);border:1px solid var(--sw-border);border-radius:10px;padding:14px 16px;transition:border-color var(--sw-t-fast) var(--sw-ease)}.card:hover{border-color:color-mix(in srgb,var(--sw-muted) 35%,var(--sw-border))}.card .big{font-size:24px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.card .lbl{font-size:11.5px;color:var(--sw-muted);letter-spacing:.04em;text-transform:uppercase}.card.stat{border-top:2px solid var(--stat-c,var(--sw-primary));transition:border-color var(--sw-t-fast) var(--sw-ease),transform var(--sw-t-fast) var(--sw-ease)}.card.stat:hover{transform:translateY(-1px)}.card.stat .lbl{display:flex;align-items:center;gap:6px;margin-top:2px}.card.stat .lbl svg{color:var(--stat-c,var(--sw-muted))}.pagehead{display:flex;align-items:flex-start;gap:12px;margin-bottom:22px}.pagehead .grow{flex:1 1;min-width:0}.pagehead h1{margin-bottom:4px}.pagehead .sub{margin:0}.chart-card{position:relative;margin-bottom:26px}.chart-card .head{display:flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;color:var(--sw-muted);letter-spacing:.04em;text-transform:uppercase;margin-bottom:12px}.chart-tip{position:absolute;transform:translate(-50%,-100%);background:var(--sw-surface-2);border:1px solid var(--sw-border);border-radius:6px;padding:4px 9px;font-size:11.5px;white-space:nowrap;pointer-events:none;z-index:2}.chart-tip b{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.chart-card .bar{fill:var(--sw-surface-2);transition:fill var(--sw-t-fast) var(--sw-ease)}.chart-card .bar:hover{fill:color-mix(in srgb,var(--sw-muted) 30%,var(--sw-surface-2))}.chart-card .bar-today{fill:var(--sw-primary)}.chart-card .bar-today:hover{fill:var(--sw-primary-hover)}.avatar{flex:none;width:32px;height:32px;border-radius:8px;display:grid;place-items:center;font-size:14px;font-weight:700;text-transform:uppercase;background:color-mix(in srgb,var(--av-c,var(--sw-primary)) 16%,transparent);color:var(--av-c,var(--sw-primary))}.avatar.avatar-kindle{background:var(--sw-surface-2);color:var(--sw-muted)}.btn{display:inline-flex;align-items:center;gap:6px;border:1px solid transparent;border-radius:6px;height:32px;padding:0 14px;font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap;transition:background var(--sw-t-fast) var(--sw-ease),border-color var(--sw-t-fast) var(--sw-ease),color var(--sw-t-fast) var(--sw-ease),transform var(--sw-t-fast) var(--sw-ease),box-shadow var(--sw-t-fast) var(--sw-ease)}.btn:focus-visible{outline:2px solid var(--sw-primary);outline-offset:1px}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:active:not(:disabled){transform:translateY(0)}.btn.pri{background:var(--sw-primary);color:#fff;font-weight:600}.btn.pri:hover{background:var(--sw-primary-hover);box-shadow:0 6px 16px color-mix(in srgb,var(--sw-primary) 35%,transparent)}.btn.gho{background:transparent;border-color:var(--sw-border);color:var(--sw-text)}.btn.gho:hover{background:var(--sw-surface-2)}.btn:disabled{opacity:.45;cursor:not-allowed}.inp{background:var(--sw-surface-2);border:1px solid var(--sw-border);border-radius:6px;height:34px;padding:0 11px;color:var(--sw-text);width:100%;transition:border-color var(--sw-t-fast) var(--sw-ease),box-shadow var(--sw-t-fast) var(--sw-ease)}.inp:focus-visible{outline:none;border-color:var(--sw-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--sw-primary) 22%,transparent)}.row{display:flex;gap:11px;align-items:center;padding:10px 12px;border-radius:8px;cursor:pointer;transition:background var(--sw-t-fast) var(--sw-ease)}.row:hover{background:var(--sw-surface)}.row+.row{border-top:1px solid color-mix(in srgb,var(--sw-border) 60%,transparent)}.row .body{flex:1 1;min-width:0}.row .t1{font-size:13px}.row .t1,.row .t2{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.row .t2{font-size:11.5px}.row .arrow,.row .t2{color:var(--sw-muted)}.row .arrow{flex:none}.domain{display:inline-block;padding:0 6px;border-radius:4px;background:var(--sw-surface-2);font-size:10.5px;margin-right:6px}.count,.domain{color:var(--sw-muted)}.count{font-size:11.5px;flex:none;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.daylbl{font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--sw-muted);margin:18px 0 6px;padding:0 12px}.searchbox{position:relative;margin-bottom:6px;max-width:480px}.searchbox .inp{padding-left:34px;height:40px;border-radius:8px}.searchbox svg{position:absolute;left:11px;top:50%;transform:translateY(-50%);color:var(--sw-muted)}.searchbox.big{max-width:540px}.searchbox.big .inp{height:44px;border-radius:9px;font-size:13.5px;padding-right:36px}.search-kbd{position:absolute;right:10px;top:50%;transform:translateY(-50%);font:600 10.5px/1 ui-monospace,Consolas,monospace;color:var(--sw-muted);border:1px solid var(--sw-border);border-radius:4px;padding:3px 6px;background:var(--sw-surface);pointer-events:none}.filter-row{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin:8px 0 4px}.filter-chip-root{position:relative;display:inline-flex;align-items:center}.filter-chip{cursor:pointer;font:inherit;font-size:12px;transition:color var(--sw-t-fast) var(--sw-ease),border-color var(--sw-t-fast) var(--sw-ease),background var(--sw-t-fast) var(--sw-ease)}.filter-chip:hover{border-color:var(--sw-muted)}.filter-chip.on{border-color:color-mix(in srgb,var(--sw-primary) 55%,var(--sw-border));background:color-mix(in srgb,var(--sw-primary) 10%,transparent);color:var(--sw-primary);font-weight:600}.filter-x{margin-left:-6px;width:18px;height:18px;border-radius:50%;border:1px solid color-mix(in srgb,var(--sw-primary) 45%,var(--sw-border));background:var(--sw-surface);color:var(--sw-primary);font-size:9px;line-height:1;cursor:pointer;z-index:1;display:inline-flex;align-items:center;justify-content:center;padding:0}.filter-x:hover{background:color-mix(in srgb,var(--sw-danger) 10%,var(--sw-surface));color:var(--sw-danger);border-color:color-mix(in srgb,var(--sw-danger) 40%,var(--sw-border))}.filter-pop{left:0;right:auto;top:calc(100% + 8px);width:min(260px,84vw);gap:4px;max-height:280px;overflow-y:auto}.filter-opt{display:flex;align-items:center;gap:8px;font-size:12.5px;padding:4px 2px;border-radius:6px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.filter-opt:hover{background:var(--sw-surface-2)}.filter-opt .cat-name{flex:1 1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.filter-count{font-size:12px;color:var(--sw-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.search-count{font-size:11.5px;margin:0 0 14px;min-height:17px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.crumb,.search-count{color:var(--sw-muted)}.crumb{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;margin-bottom:12px;transition:color var(--sw-t-fast) var(--sw-ease)}.crumb:hover{color:var(--sw-text)}.hlfilters{display:flex;flex-direction:column;gap:7px;margin:2px 0 16px}.hlfilter{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.hlfilter .flab{font-size:10.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--sw-muted);margin-right:1px}.hlf{display:inline-flex;align-items:center;gap:6px;cursor:pointer;height:26px;padding:0 10px;border-radius:999px;font:inherit;font-size:12px;background:var(--sw-surface-2);border:1px solid var(--sw-border);color:var(--sw-text);transition:border-color var(--sw-t-fast) var(--sw-ease),background var(--sw-t-fast) var(--sw-ease),box-shadow var(--sw-t-fast) var(--sw-ease)}.hlf:hover{border-color:var(--sw-muted)}.hlf .d{width:12px;height:12px;border-radius:50%;flex:none;box-shadow:inset 0 0 0 1px rgba(0,0,0,.14)}.hlf .cn{font-size:11px;color:var(--sw-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hlf.on{border-color:color-mix(in srgb,var(--sw-primary) 55%,var(--sw-border));background:color-mix(in srgb,var(--sw-primary) 10%,transparent);box-shadow:0 0 0 2px color-mix(in srgb,var(--sw-primary) 30%,transparent);font-weight:600}.hlf.on .cn{color:var(--sw-primary)}.hlfilter-note{font-size:11.5px;color:var(--sw-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.linklike{background:none;border:none;padding:0;cursor:pointer;font:inherit;font-size:inherit;color:var(--sw-primary)}.linklike:hover{text-decoration:underline}.hl-item{border-left:3px solid var(--hl-yellow);padding:8px 12px;margin:10px 0;background:var(--sw-surface);border-radius:0 8px 8px 0}.hl-item .quote{font-size:13px}.hl-item .note{font-size:13px;color:var(--sw-muted);margin-top:4px;white-space:pre-wrap}.hl-item .note .pill{display:inline-block;padding:0 6px;border-radius:999px;font-size:11.5px;background:color-mix(in srgb,var(--sw-primary) 14%,transparent);border:1px solid color-mix(in srgb,var(--sw-primary) 40%,transparent);color:var(--sw-primary);white-space:nowrap}.item-actions{display:flex;align-items:center;gap:6px;margin-top:7px;opacity:.55;transition:opacity var(--sw-t-fast) var(--sw-ease)}.hl-item:hover .item-actions,.item-actions:focus-within{opacity:1}.item-act{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 9px;font-size:10.5px;border-radius:6px;background:none;border:1px solid var(--sw-border);color:var(--sw-muted);cursor:pointer;transition:color var(--sw-t-fast) var(--sw-ease),background var(--sw-t-fast) var(--sw-ease),border-color var(--sw-t-fast) var(--sw-ease)}.item-act:hover{color:var(--sw-text);background:var(--sw-surface-2)}.item-act.danger{color:var(--sw-danger);border-color:color-mix(in srgb,var(--sw-danger) 30%,var(--sw-border))}.item-act.danger:hover{background:color-mix(in srgb,var(--sw-danger) 10%,transparent)}.item-act.sm{height:18px;width:20px;padding:0;justify-content:center;border:none}.item-confirm{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--sw-muted)}.item-confirm .btn{height:22px;padding:0 9px;font-size:10.5px}.kind-chip .item-confirm{margin-left:2px}.note-editor{margin-top:6px}.note-input{width:100%;resize:vertical;min-height:34px;border:1px solid var(--sw-primary);border-radius:6px;padding:7px 9px;font-size:13px;line-height:1.55;background:var(--sw-surface-2);color:var(--sw-text);font-family:inherit}.note-input:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--sw-primary) 22%,transparent)}.note-editor-actions{display:flex;gap:8px;margin-top:7px;align-items:center;flex-wrap:wrap}.note-editor-actions .btn{height:26px;padding:0 12px;font-size:10.5px}.note-editor-actions .hint{font-size:9.5px;color:var(--sw-muted)}.meta{font-size:11px;margin-top:5px}.kind-chip,.meta{color:var(--sw-muted)}.kind-chip{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;border:1px solid var(--sw-border);border-radius:8px;padding:3px 9px 3px 3px;margin:3px 6px 3px 0}.kind-chip .thumb{display:block;flex:none;border-radius:5px;background:var(--sw-surface-2);border:1px solid color-mix(in srgb,var(--sw-border) 70%,transparent)}.dot{display:inline-block;width:9px;height:9px;border-radius:50%}.review-progress{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:700;font-size:14px;color:var(--sw-primary);padding:4px 12px;border-radius:999px;background:color-mix(in srgb,var(--sw-primary) 12%,transparent);border:1px solid color-mix(in srgb,var(--sw-primary) 35%,transparent)}.review-card{transition:opacity var(--sw-t-fast) var(--sw-ease);cursor:pointer}.review-card:hover{background:color-mix(in srgb,var(--sw-surface-2) 55%,var(--sw-surface))}.review-card.done{opacity:.45}.review-card .note .pill{white-space:normal}.review-card .note .pill .wiki{font-weight:600;text-decoration:underline;text-underline-offset:2px}.review-card .review-actions{display:flex;gap:8px;margin-top:9px;flex-wrap:wrap}.review-card .review-actions .btn{height:28px;font-size:12px;padding:0 12px}.review-done{text-align:center;padding:26px 18px;margin:4px 0 14px}.review-done .big{font-size:16px;font-weight:700}.review-done .sub{color:var(--sw-muted);font-size:13px;margin-top:5px}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:24px;position:relative}.login-wrap .corner-theme{position:absolute;top:18px;right:20px;z-index:3}.login-cols{display:grid;grid-template-columns:1fr;grid-gap:56px;gap:56px;align-items:center;width:100%;max-width:920px;min-width:0}.login-brand{display:none}@media (min-width:900px){.login-cols{grid-template-columns:1.15fr 1fr}.login-brand{display:block;position:relative}.login{justify-self:end}}.login-mini{position:absolute;width:148px;background:var(--sw-surface);border:1px solid var(--sw-border);border-radius:8px;padding:8px 10px;font-size:10.5px;line-height:1.5;box-shadow:var(--sw-shadow);pointer-events:none;z-index:0;animation:ld-float 4s ease-in-out infinite}.login-mini .hl-demo{padding:0 4px}.login-brand>:not(.login-mini){position:relative;z-index:1}.login-brand .logo{font-size:30px;padding:0 0 10px}.login-brand .tagline{font-size:16px;color:var(--sw-text);margin:0 0 26px;max-width:380px;line-height:1.5}.login-brand .perk{display:flex;align-items:flex-start;gap:11px;margin-bottom:16px;max-width:400px}.login-brand .perk .pic{flex:none;width:32px;height:32px;border-radius:8px;display:grid;place-items:center;color:var(--sw-primary);background:color-mix(in srgb,var(--sw-primary) 14%,transparent)}.login-brand .perk .pt1{font-size:13.5px;font-weight:600}.login-brand .perk .pt2{font-size:13px;color:var(--sw-muted)}.login{width:100%;max-width:400px;min-width:0;background:var(--sw-surface);border:1px solid var(--sw-border);border-radius:16px;padding:26px;display:grid;grid-gap:10px;gap:10px;box-shadow:var(--sw-shadow-card)}.login .field{display:grid;grid-gap:4px;gap:4px}.login .field label{font-size:11.5px;font-weight:600;color:var(--sw-text);letter-spacing:.03em;text-transform:uppercase}.pw-wrap{position:relative}.pw-wrap .inp{padding-right:40px}.pw-eye{position:absolute;right:5px;top:50%;transform:translateY(-50%);width:28px;height:28px;display:grid;place-items:center;background:none;border:none;border-radius:6px;padding:0;color:var(--sw-muted);cursor:pointer;transition:color var(--sw-t-fast) var(--sw-ease),background var(--sw-t-fast) var(--sw-ease)}.pw-eye:hover{color:var(--sw-text);background:var(--sw-surface-2)}.login .btn.pri{height:40px;justify-content:center}.login .forgot{text-align:right;font-size:11.5px;margin-top:-4px}.login .forgot button{background:none;border:none;color:var(--sw-muted);cursor:pointer;padding:0;font-size:11.5px}.login .forgot button:hover{color:var(--sw-text)}.btn.social{justify-content:center;background:var(--sw-surface)}.btn.social:hover{background:var(--sw-surface-2)}.btn.social .glyph{flex:none;width:16px;height:16px;border-radius:50%;display:grid;place-items:center}.divider{display:flex;align-items:center;gap:10px;color:var(--sw-muted);font-size:11px}.divider:after,.divider:before{content:"";flex:1 1;height:1px;background:var(--sw-border)}.login h1{margin-bottom:2px}.login .err{color:var(--sw-danger);font-size:13px;min-height:17px}.login .swap{font-size:13px;color:var(--sw-muted);text-align:center}.login .swap button{background:none;border:none;color:var(--sw-primary);cursor:pointer;padding:0}.login .privacy-link{text-align:center;margin-top:10px;font-size:11.5px}.login .privacy-link a{color:var(--sw-muted);text-decoration:underline;text-underline-offset:2px}.login .privacy-link a:hover{color:var(--sw-text)}.graph-wrap{position:relative;border:1px solid var(--sw-border);border-radius:12px;background:var(--sw-surface);background-image:radial-gradient(color-mix(in srgb,var(--sw-muted) 16%,transparent) 1px,transparent 1px);background-size:22px 22px;overflow:hidden}.graph-wrap canvas{display:block;width:100%;height:100%;cursor:-webkit-grab;cursor:grab}.graph-wrap .graph-reset{top:10px}.graph-preview,.graph-wrap .graph-reset{position:absolute;right:10px;background:var(--sw-surface)}.graph-preview{top:52px;width:280px;max-width:calc(100% - 20px);border:1px solid var(--sw-border);border-radius:10px;padding:12px 14px;box-shadow:var(--sw-shadow-card);z-index:3}.graph-preview .gp-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.graph-preview .gp-kind{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.graph-preview .gp-close{background:none;border:none;cursor:pointer;padding:2px 6px;color:var(--sw-muted);font-size:13px;border-radius:5px;line-height:1;transition:color var(--sw-t-fast) var(--sw-ease),background var(--sw-t-fast) var(--sw-ease)}.graph-preview .gp-close:hover{color:var(--sw-text);background:var(--sw-surface-2)}.graph-preview .gp-label{font-size:13px;font-weight:600;line-height:1.45;overflow-wrap:anywhere}.graph-preview .gp-page{display:flex;align-items:flex-start;gap:5px;font-size:11.5px;color:var(--sw-muted);margin-top:6px;overflow-wrap:anywhere}.graph-preview .gp-note svg,.graph-preview .gp-page svg{flex:none;margin-top:2px}.graph-preview .gp-note{display:flex;align-items:flex-start;gap:5px;font-size:11.5px;color:var(--sw-muted);margin-top:4px;background:var(--sw-surface-2);border-radius:6px;padding:5px 8px;overflow-wrap:anywhere}.graph-preview .gp-actions{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}.graph-preview .gp-actions .btn{height:28px;padding:0 11px;font-size:12px}.legend{display:flex;gap:14px;font-size:11.5px;color:var(--sw-muted);margin-top:10px;flex-wrap:wrap}.legend span{display:inline-flex;align-items:center;gap:5px}.graph-controls{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--sw-muted);margin:-12px 0 12px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:-moz-fit-content;width:fit-content}.graph-chips+.graph-controls{margin-top:0}.empty{text-align:center;padding:60px 0}.empty,.empty .ic{color:var(--sw-muted)}.empty .ic{margin-bottom:10px;opacity:.75}.empty .msg{font-size:13.5px;color:var(--sw-text)}.empty .sub2{font-size:13px;color:var(--sw-muted);margin-top:4px}.toast{position:fixed;bottom:18px;right:18px;background:var(--sw-surface);border:1px solid var(--sw-border);padding:9px 16px;border-radius:8px;font-size:13px;z-index:50;box-shadow:var(--sw-shadow);animation:toast-in .16s var(--sw-ease)}.toast.danger{border-color:color-mix(in srgb,var(--sw-danger) 55%,var(--sw-border));color:var(--sw-danger)}@keyframes toast-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}code.k{background:var(--sw-surface-2);border-radius:4px;padding:1px 6px;font-family:ui-monospace,Consolas,monospace;font-size:12px}.ld{min-height:100vh;flex-direction:column}.ld,.ld-nav{display:flex}.ld-nav{align-items:center;justify-content:space-between;padding:12px 32px;border-bottom:1px solid color-mix(in srgb,var(--sw-border) 80%,transparent);position:-webkit-sticky;position:sticky;top:0;background:color-mix(in srgb,var(--sw-bg) 82%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:20;transition:box-shadow .25s var(--sw-ease),background .25s var(--sw-ease),border-color .25s var(--sw-ease)}.ld-nav.scrolled{box-shadow:var(--sw-nav-shadow)}.ld-nav .nav-grp{position:relative;display:inline-flex}.ld-nav .nav-grp__btn{display:inline-flex;align-items:center;gap:4px;background:none;border:0;padding:0;cursor:pointer;font:inherit;font-size:13px;color:var(--sw-muted);transition:color var(--sw-t-fast) var(--sw-ease)}.ld-nav .nav-grp__btn.on,.ld-nav .nav-grp__btn:hover{color:var(--sw-text)}.ld-nav .links a.here,.ld-nav .nav-grp__btn.here{color:var(--sw-primary)}.ld-nav .links a.here:after,.ld-nav .nav-grp__btn.here:after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;border-radius:1px;background:var(--sw-primary);transform:none}.ld-nav .nav-grp__btn.here{position:relative}.nav-pop__item.on{background:color-mix(in srgb,var(--sw-primary) 12%,transparent)}.nav-pop__item.on b{color:var(--sw-primary)}.ld-nav .nav-grp__btn svg{transition:transform .16s var(--sw-ease)}.ld-nav .nav-grp__btn.on svg{transform:rotate(180deg)}.nav-pop{position:absolute;top:calc(100% + 12px);left:50%;transform:translateX(-50%);width:292px;padding:8px;background:var(--sw-surface);border:1px solid var(--sw-border);border-radius:12px;box-shadow:var(--sw-shadow);display:grid;grid-gap:1px;gap:1px;z-index:30;animation:nav-pop-in .14s var(--sw-ease)}@keyframes nav-pop-in{0%{opacity:0;transform:translateX(-50%) translateY(-4px)}}.nav-pop.closing{animation:nav-pop-out .12s var(--sw-ease) forwards;pointer-events:none}@keyframes nav-pop-out{to{opacity:0;transform:translateX(-50%) translateY(-4px)}}@media (prefers-reduced-motion:reduce){.nav-pop,.nav-pop.closing{animation:none}}.nav-pop__item{display:flex;gap:10px;padding:9px 10px;border-radius:9px;color:var(--sw-text)!important;text-decoration:none}.nav-pop__item:hover{background:var(--sw-surface2)}.nav-pop__item svg{flex:none;margin-top:2px;color:var(--sw-muted)}.nav-pop__item b{display:block;font-size:12.5px;font-weight:600}.nav-pop__item .d{display:block;color:var(--sw-muted);font-size:11.5px;line-height:1.45;margin-top:1px}.ld-nav .nav-pop a:after{content:none}.ld-menu__grp{display:flex;flex-direction:column}.ld-menu__grptitle{font-size:10.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--sw-muted);opacity:.75;padding:12px 8px 4px}.ld-nav .links{display:flex;gap:18px;align-items:center;color:var(--sw-muted);font-size:13px}.ld-nav .links a:not(.btn){color:var(--sw-muted);position:relative;transition:color var(--sw-t-fast) var(--sw-ease)}.ld-nav .links a:not(.btn):after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:1.5px;border-radius:1px;background:var(--sw-primary);transform:scaleX(0);transform-origin:left;transition:transform .16s var(--sw-ease)}.ld-nav .links a:not(.btn):hover{color:var(--sw-text)}.ld-nav .links a:not(.btn):hover:after{transform:scaleX(1)}.ld-nav .links a.btn.pri{color:#fff;font-weight:600}.ld-nav .burger{display:none;align-items:center;justify-content:center;width:36px;height:36px;border-radius:9px;border:1px solid var(--sw-border);background:none;color:var(--sw-text);cursor:pointer}.ld-menu{display:none;position:absolute;top:100%;left:0;right:0;padding:8px 16px 14px;background:var(--sw-bg);border-bottom:1px solid var(--sw-border);box-shadow:var(--sw-nav-shadow)}.ld-menu,.ld-menu__links{flex-direction:column;gap:2px}.ld-menu a,.ld-menu__links{display:flex}.ld-menu a{align-items:center;gap:10px;padding:11px 8px;border-radius:8px;color:var(--sw-text);font-size:14px}.ld-menu a svg{color:var(--sw-muted);flex:none}.ld-menu a:hover{background:var(--sw-surface)}.ld-menu a.on{background:color-mix(in srgb,var(--sw-primary) 14%,transparent);font-weight:600;box-shadow:inset 2px 0 0 var(--sw-primary)}.ld-menu a.on,.ld-menu a.on svg{color:var(--sw-primary)}.ld-menu__grp+.ld-menu__grp{margin-top:8px;padding-top:8px;border-top:1px solid color-mix(in srgb,var(--sw-border) 70%,transparent)}.ld-menu__prefs{display:flex;align-items:center;gap:10px;margin-top:10px;padding-top:12px;border-top:1px solid var(--sw-border)}@media (max-width:900px){.ld-nav{padding:12px 16px;position:-webkit-sticky;position:sticky}.ld-nav .links{gap:10px}.ld-nav.with-menu .links>:not(.burger){display:none}.ld-nav .burger{display:inline-flex}.ld-menu{display:flex;opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .15s var(--sw-ease),transform .15s var(--sw-ease),visibility 0s linear .15s}.ld-nav.menu-open .ld-menu{opacity:1;visibility:visible;transform:none;transition:opacity .15s var(--sw-ease),transform .15s var(--sw-ease),visibility 0s}}.ld-wrap{width:100%;max-width:1080px;margin:0 auto;padding:0 32px}@media (max-width:560px){.ld-wrap{padding:0 18px}}.ld-hero{display:grid;grid-template-columns:1.05fr .95fr;grid-gap:44px;gap:44px;align-items:center;padding:72px 0 56px}@media (max-width:900px){.ld-hero{grid-template-columns:1fr;padding-top:48px}}.ld-hero-left{position:relative}.ld-hero h1{font-size:40px;line-height:1.2;letter-spacing:-.02em;font-weight:800;margin:0 0 14px}@media (max-width:900px){.ld-hero h1{font-size:32px}}.ld-hero .lede{color:var(--sw-muted);font-size:15px;line-height:1.65;max-width:46ch;margin:0 0 22px}.ld-usp{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center;font-size:12.5px;color:var(--sw-muted);margin:-12px 0 20px;max-width:60ch}.ld-usp>span{display:inline-flex;align-items:center;gap:6px}.ld-usp svg{color:var(--sw-success,#6ee7a0);flex:none}.ld-cta{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.ld-cta .btn{height:42px;padding:0 20px;border-radius:11px;font-size:14px}@keyframes ld-fadeup{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.st{animation:ld-fadeup .55s var(--sw-ease) both}.st-1{animation-delay:0s}.st-2{animation-delay:.08s}.st-3{animation-delay:.16s}.st-4{animation-delay:.24s}html[data-lang] .rv{opacity:0;transform:translateY(24px);transition:opacity .5s var(--sw-ease),transform .5s var(--sw-ease)}html[data-lang] .rv.in{opacity:1;transform:translateY(0)}.rv-d1{transition-delay:.07s}.rv-d2{transition-delay:.14s}.rv-d3{transition-delay:.21s}.rv-d4{transition-delay:.28s}.rv-d5{transition-delay:.35s}.rv-d6{transition-delay:.42s}@media (prefers-reduced-motion:reduce){html[data-lang] .rv{opacity:1;transform:none}}:root[data-lang=en] .ld-about-vi,:root[data-lang=vi] .ld-about-en{display:none}.hl-word{border-radius:3px;padding:0 5px;background:color-mix(in srgb,var(--hl-yellow) 46%,transparent);box-decoration-break:clone;-webkit-box-decoration-break:clone}.hl-word.green{background:color-mix(in srgb,var(--hl-green) 38%,transparent)}.ld-sticky{position:absolute;right:-8px;top:-46px;width:178px;background:var(--sw-surface);border:1px solid var(--sw-border);border-radius:9px;padding:10px 12px;font-size:11.5px;line-height:1.55;box-shadow:var(--sw-shadow);transform:rotate(-2deg);z-index:2;animation:ld-float 4s ease-in-out infinite;transition:transform .16s var(--sw-ease)}.ld-sticky:hover{animation:none;transform:rotate(-4deg) translateY(-3px)}@keyframes ld-float{0%,to{transform:rotate(var(--tilt,-2deg)) translateY(0)}50%{transform:rotate(var(--tilt,-2deg)) translateY(-4px)}}@media (max-width:1180px){.ld-sticky{display:none}}.dots{display:flex;gap:4px;margin-bottom:6px}.dots i{width:8px;height:8px;border-radius:50%;display:inline-block}.ld-arrow{position:absolute;pointer-events:none}.ld-arrow path{stroke-dasharray:150;stroke-dashoffset:150}.ld-arrow.in path{stroke-dashoffset:0;transition:stroke-dashoffset .9s var(--sw-ease) .25s}.ld-arrow.in path+path{transition-delay:.9s;transition-duration:.4s}@media (prefers-reduced-motion:reduce){.ld-arrow path{stroke-dashoffset:0}}.ld-caption{position:absolute;font-size:12px;color:var(--sw-caption);transform:rotate(-3deg);white-space:nowrap}@media (max-width:900px){.ld-arrow,.ld-caption{display:none}}.ld-browser{border:1px solid var(--sw-border);border-radius:12px;overflow:hidden;background:var(--sw-surface);box-shadow:0 18px 44px rgba(50,60,90,.14)}.ld-browser .bar{display:flex;gap:5px;padding:9px 11px;border-bottom:1px solid var(--sw-border);align-items:center}.ld-browser .bar i{width:9px;height:9px;border-radius:50%;background:var(--sw-surface-2);display:inline-block}.ld-browser .url{flex:1 1;background:var(--sw-surface-2);border-radius:5px;font-size:10.5px;color:var(--sw-muted);padding:3px 9px}.ld-browser .page{padding:16px;position:relative;min-height:168px;font-size:12.5px}.ld-browser .tx{height:8px;border-radius:4px;background:var(--sw-tx);margin:9px 0}.hl-demo{background:color-mix(in srgb,var(--hl-yellow) 40%,transparent);border-radius:2px}.ld-browser .page .hl-demo{background:linear-gradient(color-mix(in srgb,var(--hl-yellow) 50%,transparent),color-mix(in srgb,var(--hl-yellow) 50%,transparent)) no-repeat;background-size:100% 100%;animation:ld-hero-sweep 8s var(--sw-ease) infinite}@keyframes ld-hero-sweep{0%,6%{background-size:0 100%}36%{background-size:100% 100%}96%{background-size:100% 100%}to{background-size:0 100%}}.ld-cursor{position:absolute;left:14px;top:46px;opacity:0;z-index:2;filter:drop-shadow(0 1px 2px rgba(20,25,40,.35));animation:ld-hero-cursor 8s var(--sw-ease) infinite}@keyframes ld-hero-cursor{0%{transform:translate(-30px,34px) scale(1);opacity:0}6%{transform:translate(72px,10px) scale(1);opacity:1}36%{transform:translate(228px,22px) scale(1);opacity:1}38%{transform:translate(228px,22px) scale(.8);opacity:1}41%{transform:translate(228px,22px) scale(1);opacity:1}88%{transform:translate(228px,22px) scale(1);opacity:1}94%,to{transform:translate(228px,34px) scale(1);opacity:0}}.ld-notepop{position:absolute;right:14px;top:52px;width:178px;background:var(--sw-surface);border:1px solid var(--sw-border);border-radius:8px;padding:9px;font-size:10.5px;line-height:1.5;box-shadow:var(--sw-shadow);transform:rotate(1deg);animation:ld-hero-pop 8s var(--sw-ease) infinite}@keyframes ld-hero-pop{0%,41%{opacity:0;transform:rotate(1deg) scale(.92) translateY(4px)}47%,94%{opacity:1;transform:rotate(1deg) scale(1) translateY(0)}99%,to{opacity:0;transform:rotate(1deg) scale(.96) translateY(2px)}}.ld-notepop .typing{--tw:30ch;display:inline-block;overflow:hidden;white-space:nowrap;vertical-align:bottom;max-width:var(--tw);border-right:2px solid var(--sw-primary);animation:ld-hero-type 8s steps(30) infinite,ld-caret .8s step-end infinite}[data-lang=en] .ld-notepop{width:228px}[data-lang=en] .ld-notepop .typing{--tw:38ch}@keyframes ld-hero-type{0%,47%{max-width:0}72%,to{max-width:var(--tw)}}.ld-browser:hover .ld-cursor,.ld-browser:hover .ld-notepop,.ld-browser:hover .ld-notepop .typing,.ld-browser:hover .page .hl-demo{animation-play-state:paused}.ld-proof{display:flex;gap:22px;justify-content:center;padding:6px 0 40px;color:var(--sw-muted);font-size:13px;flex-wrap:wrap}.ld-proof b{color:var(--sw-text);font-weight:600}.ld-proof span{display:inline-flex;align-items:center;gap:6px}.review-done .big{display:flex;align-items:center;justify-content:center;gap:8px}.ld-h2{font-size:22px;font-weight:800;letter-spacing:-.01em;margin:0 0 4px}.ld-h2 small{font-size:11.5px;color:var(--sw-muted);font-weight:400;margin-left:8px}.ld-sec{padding:22px 0 34px;scroll-margin-top:70px}.ld-3col{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px;margin-top:16px}@media (max-width:880px){.ld-3col{grid-template-columns:1fr}}.ld-feat{background:var(--sw-surface);border:1px solid var(--sw-border);border-radius:12px;padding:16px;transition:transform var(--sw-t-fast) var(--sw-ease),box-shadow var(--sw-t-fast) var(--sw-ease)}.ld-feat:hover{transform:translateY(-2px);box-shadow:var(--sw-shadow)}.ld-feat b{display:block;margin:10px 0 4px;font-size:14px}.ld-feat span.d{color:var(--sw-muted);font-size:13px;line-height:1.6}.ld-mini{height:84px;border-radius:8px;background:var(--sw-surface-2);display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;font-size:12px}.ld-mini .corner{position:absolute;right:9px;bottom:6px;font-size:9.5px;color:var(--sw-muted)}.demo-sweep .swept{background-image:linear-gradient(color-mix(in srgb,var(--hl-yellow) 55%,transparent),color-mix(in srgb,var(--hl-yellow) 55%,transparent));background-repeat:no-repeat;background-size:0 100%;border-radius:3px;padding:2px 4px;animation:ld-sweep 4.5s var(--sw-ease) infinite}.demo-sweep .cursor{position:absolute;left:18px;top:50%;font-size:13px;animation:ld-cursor 4.5s var(--sw-ease) infinite}@keyframes ld-sweep{0%,12%{background-size:0 100%}55%{background-size:100% 100%}92%,to{background-size:100% 100%}}@keyframes ld-cursor{0%,12%{transform:translateY(6px);opacity:1}55%{transform:translate(148px,6px);opacity:1}70%,88%{transform:translate(148px,6px);opacity:0}to{transform:translateY(6px);opacity:0}}.demo-type .notecard{background:var(--sw-surface);border:1px solid var(--sw-border);border-radius:7px;padding:7px 10px;box-shadow:0 6px 16px rgba(50,60,90,.14);font-size:11px}.demo-type .typing{display:inline-block;overflow:hidden;white-space:nowrap;vertical-align:bottom;max-width:17ch;border-right:2px solid var(--sw-primary);animation:ld-type 5s steps(17) infinite,ld-caret .8s step-end infinite}@keyframes ld-type{0%,8%{width:0}60%{width:17ch}94%,to{width:17ch}}@keyframes ld-caret{50%{border-right-color:transparent}}.demo-type .stroke path{stroke-dasharray:130;stroke-dashoffset:130;animation:ld-draw 5s var(--sw-ease) infinite}@keyframes ld-draw{0%,30%{stroke-dashoffset:130}75%{stroke-dashoffset:0}96%,to{stroke-dashoffset:0}}.demo-reload .content{animation:ld-reload 5s var(--sw-ease) infinite}@keyframes ld-reload{0%,30%{opacity:1}38%,52%{opacity:0}68%,to{opacity:1}}.demo-reload .spin{position:absolute;font-size:15px;color:var(--sw-muted);opacity:0;animation:ld-spin-show 5s linear infinite}@keyframes ld-spin-show{0%,34%{opacity:0;transform:rotate(0deg)}40%{opacity:1}60%{opacity:1;transform:rotate(1turn)}66%,to{opacity:0;transform:rotate(1turn)}}#features .anno-hl{background-image:linear-gradient(color-mix(in srgb,var(--hl-yellow) 46%,transparent),color-mix(in srgb,var(--hl-yellow) 46%,transparent));background-repeat:no-repeat;background-size:0 100%;border-radius:3px;padding:0 4px;margin:0 -4px;box-decoration-break:clone;-webkit-box-decoration-break:clone;transition:background-size .9s var(--sw-ease) .35s}#features.in .anno-hl{background-size:100% 100%}@media (prefers-reduced-motion:reduce){#features .anno-hl{background-size:100% 100%}}.anno-wrap{position:relative;display:inline-block}.anno-ellipse{position:absolute;left:-14px;right:-14px;top:-9px;bottom:-9px;width:calc(100% + 28px);height:calc(100% + 18px);pointer-events:none;overflow:visible}.anno-ellipse ellipse{stroke-dasharray:400;stroke-dashoffset:400}.anno-ellipse.in ellipse{stroke-dashoffset:0;transition:stroke-dashoffset 1.2s var(--sw-ease) .3s}@media (prefers-reduced-motion:reduce){.anno-ellipse ellipse{stroke-dashoffset:0}}.ld-price{position:relative}.ld-vs-lede{text-align:center;color:var(--sw-muted);font-size:13.5px;margin:4px 0 18px}.ld-vs-lede b{color:var(--sw-text)}.ld-vs{max-width:860px;margin:0 auto;border:1px solid var(--sw-border);border-radius:14px;overflow:hidden;background:var(--sw-surface)}.ld-vs .vs-head,.ld-vs .vs-row{display:grid;grid-template-columns:1fr 1fr}.ld-vs .vs-head>div{padding:12px 18px;font-size:13px;font-weight:700;border-bottom:1px solid var(--sw-border)}.ld-vs .vs-head .them{color:var(--sw-muted)}.ld-vs .vs-head .us{color:var(--sw-primary)}.ld-vs .vs-row>div{padding:11px 18px;font-size:13px;line-height:1.55;display:flex;gap:8px;align-items:flex-start;border-bottom:1px solid color-mix(in srgb,var(--sw-border) 60%,transparent)}.ld-vs .vs-row:last-child>div{border-bottom:none}.ld-vs .vs-row .them{color:var(--sw-muted)}.ld-vs .us{background:color-mix(in srgb,var(--sw-primary) 6%,transparent)}.ld-vs .mark{flex:none;font-weight:700;margin-top:1px}.ld-vs .them .mark{color:var(--sw-danger)}.ld-vs .us .mark{color:var(--sw-ok)}@media (max-width:720px){.ld-vs .vs-head{display:none}.ld-vs .vs-row{grid-template-columns:1fr}.ld-vs .vs-row .them{border-bottom:none;padding-bottom:4px}}.ld-quotes-h{text-align:center;font-size:16px;font-weight:800;margin:30px 0 2px}.ld-quotes-lede{text-align:center;color:var(--sw-muted);font-size:13px;margin:0 0 18px}.ld-quotes{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:18px;gap:18px}@media (max-width:880px){.ld-quotes{grid-template-columns:1fr}}.ld-quote{margin:0;background:var(--sw-surface);border:1px solid var(--sw-border);border-radius:10px;padding:14px 16px;box-shadow:var(--sw-shadow);display:flex;flex-direction:column;gap:8px;rotate:var(--qtilt,0deg);transition:rotate var(--sw-t-fast) var(--sw-ease),box-shadow var(--sw-t-fast) var(--sw-ease)}.ld-quote:hover{rotate:0deg;box-shadow:0 10px 26px rgba(50,60,90,.14)}.ld-quote blockquote{margin:0;font-size:13px;line-height:1.6;font-style:italic}.ld-quote .src{font-size:11px;color:var(--sw-muted)}.ld-quote .ans{margin-top:auto;font-size:12px;line-height:1.55;font-weight:600;color:var(--sw-ok);border-top:1px dashed var(--sw-border);padding-top:8px}.ld-steps{display:flex;gap:0;margin-top:16px}@media (max-width:880px){.ld-steps{flex-direction:column}}.ld-step{flex:1 1;padding:16px 18px;border-top:2px solid var(--sw-border)}.ld-step.hot{border-top-color:var(--sw-primary)}.ld-step .n{font-size:11.5px;font-weight:600;color:var(--sw-primary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.08em}.ld-step b{display:block;font-size:14px;margin:6px 0 3px}.ld-step span{color:var(--sw-muted);font-size:13px;line-height:1.55}.ld-price-head{text-align:center;margin:10px 0 18px}.ld-price-head .big{font-size:19px;font-weight:800}.ld-price-head .small{font-size:13px;color:var(--sw-muted);margin-top:4px}.ld-price{max-width:380px;margin:0 auto;background:linear-gradient(160deg,color-mix(in srgb,var(--sw-primary) 7%,var(--sw-surface)),var(--sw-surface) 60%);border:1px solid color-mix(in srgb,var(--sw-primary) 45%,var(--sw-border));border-radius:14px;padding:22px;box-shadow:var(--sw-shadow)}.ld-price h3{margin:0;font-size:15px}.ld-price h3 small{font-size:10.5px;color:var(--sw-muted);font-weight:400}.ld-price .amount{font-size:24px;font-weight:800;margin:8px 0 12px}.ld-price .amount small{font-size:12px;color:var(--sw-muted);font-weight:400}.ld-price ul{list-style:none;padding:0;margin:0 0 16px;display:grid;grid-gap:6px;gap:6px;font-size:13px;color:var(--sw-muted)}.ld-price li:before{content:"✓ ";color:var(--sw-ok);font-weight:700}.ld-price .btn{width:100%;justify-content:center}.ld-footer{border-top:1px solid var(--sw-border);font-size:12.5px;margin-top:40px;padding:38px 32px 0}.ld-footer,.ld-footer a{color:var(--sw-muted)}.ld-footer a:hover{color:var(--sw-text)}.ld-footer__cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;grid-gap:30px;gap:30px;max-width:1080px;margin:0 auto}.ld-footer__brand .logo{font-weight:800;font-size:15px;color:var(--sw-text)}.ld-footer__brand .logo em{color:var(--sw-primary);font-style:normal}.ld-footer__brand p{margin:8px 0 16px;max-width:30ch;line-height:1.6}.ld-footer__cta{font-size:12.5px;padding:9px 15px;color:#fff;font-weight:600}.ld-footer__col{display:flex;flex-direction:column;gap:8px}.ld-footer__col h2{font-size:10.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--sw-muted);opacity:.75;margin:0 0 2px}.ld-footer__bar{max-width:1080px;margin:30px auto 0;border-top:1px solid color-mix(in srgb,var(--sw-border) 60%,transparent);padding:14px 0 20px;justify-content:space-between;flex-wrap:wrap;font-size:12px}.ld-footer__bar,.ld-footer__prefs{display:flex;align-items:center;gap:12px}@media (max-width:900px){.ld-footer__cols{grid-template-columns:1fr 1fr;gap:26px}.ld-footer__cta{display:none}}@media (max-width:560px){.ld-footer{padding:30px 18px 0}.ld-footer__cols{grid-template-columns:1fr 1fr;gap:22px 18px}.ld-footer__brand{grid-column:1/-1}.ld-footer__brand p{max-width:none;margin-bottom:0}.ld-footer__col{gap:6px}.ld-footer__col a{line-height:1.35}.ld-footer__bar{flex-direction:column;align-items:flex-start;gap:14px}}@media (max-width:380px){.ld-footer__cols{grid-template-columns:1fr;gap:20px}}.pv-body{max-width:720px;margin:0 auto;padding:48px 32px 24px}.pv-body h1{font-size:30px;font-weight:800;letter-spacing:-.02em;margin:0 0 10px}.pv-lede{color:var(--sw-muted);font-size:14px;line-height:1.65;margin:0 0 8px}.pv-sec{padding:20px 0 6px;border-top:1px solid color-mix(in srgb,var(--sw-border) 60%,transparent);margin-top:20px}.pv-sec:first-of-type{border-top:none;margin-top:8px}.pv-sec h2{font-size:16.5px;font-weight:700;margin:0 0 8px}.pv-sec p{line-height:1.7;color:var(--sw-text)}.pv-sec p,.pv-sec ul{font-size:13.5px;margin:0 0 10px}.pv-sec ul{padding-left:20px;display:grid;grid-gap:6px;gap:6px;line-height:1.65}.langdd{position:relative;display:inline-flex}.langdd-btn{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;font:inherit;font-size:12.5px;color:var(--sw-text);background:var(--sw-surface);border:1px solid var(--sw-border);border-radius:8px;cursor:pointer;transition:border-color var(--sw-t-fast) var(--sw-ease)}.langdd-btn:hover{border-color:color-mix(in srgb,var(--sw-muted) 40%,var(--sw-border))}.langdd-btn svg:last-child{color:var(--sw-muted)}.langdd-pop{position:absolute;right:0;top:calc(100% + 6px);z-index:80;min-width:170px;max-width:calc(100vw - 24px);padding:6px;background:var(--sw-surface);border:1px solid var(--sw-border);border-radius:10px;box-shadow:var(--sw-shadow-card);display:flex;flex-direction:column;gap:2px}.langdd-pop.left{left:0;right:auto}.langdd-pop.right{right:0;left:auto}.langdd-pop.up{top:auto;bottom:calc(100% + 6px)}.langdd-row{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:none;border-radius:8px;background:none;font:inherit;font-size:13px;color:var(--sw-text);text-align:left;cursor:pointer}.langdd-row:hover{background:var(--sw-surface-2)}.langdd-row.on{color:var(--sw-primary);font-weight:600}.langdd-name{flex:1 1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.lang-toggle{display:inline-flex;border:1px solid var(--sw-border);border-radius:999px;background:var(--sw-surface);cursor:pointer;padding:2px;gap:0;transition:border-color var(--sw-t-fast) var(--sw-ease)}.lang-toggle:hover{border-color:color-mix(in srgb,var(--sw-muted) 40%,var(--sw-border))}.lang-toggle span{font-size:10.5px;font-weight:600;padding:2px 8px;border-radius:999px;color:var(--sw-muted);transition:background var(--sw-t-fast) var(--sw-ease),color var(--sw-t-fast) var(--sw-ease)}.lang-toggle span.on{background:var(--sw-primary);color:#fff}.lang-select{width:220px;height:32px;padding:0 30px 0 10px;font-size:12.5px;color:var(--sw-text);background:var(--sw-surface);border:1px solid var(--sw-border);border-radius:8px;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;transition:border-color var(--sw-t-fast) var(--sw-ease)}.lang-select:hover{border-color:color-mix(in srgb,var(--sw-muted) 40%,var(--sw-border))}.lang-select:focus-visible{outline:2px solid var(--sw-primary);outline-offset:1px}.seg{gap:2px;padding:2px;border:1px solid var(--sw-border);border-radius:9px;background:var(--sw-surface)}.seg,.seg button{display:inline-flex}.seg button{align-items:center;gap:6px;padding:5px 12px;border:none;border-radius:7px;font-size:12px;font-weight:500;color:var(--sw-muted);background:transparent;cursor:pointer;transition:background var(--sw-t-fast) var(--sw-ease),color var(--sw-t-fast) var(--sw-ease)}.seg button:hover{color:var(--sw-text);background:var(--sw-surface-2)}.seg button.on,.seg button.on:hover{background:var(--sw-primary);color:#fff}.settings-h{font-size:11.5px;font-weight:600;color:var(--sw-muted);letter-spacing:.06em;text-transform:uppercase;margin:22px 0 10px}h1+.settings-h{margin-top:16px}.device-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--sw-border)}.device-row:last-child{padding-bottom:0}.device-ic{flex:none;width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:var(--sw-surface-2);color:var(--sw-muted)}.device-info{flex:1 1;min-width:0}.device-name{font-size:13px;font-weight:600;display:flex;align-items:center;gap:8px}.device-current{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--sw-primary);border:1px solid color-mix(in srgb,var(--sw-primary) 45%,transparent);background:color-mix(in srgb,var(--sw-primary) 10%,transparent);border-radius:999px;padding:1px 8px}.device-sub{font-size:11.5px;color:var(--sw-muted)}.device-confirm{display:inline-flex;align-items:center;gap:8px}.device-row .btn{height:26px;padding:0 11px;font-size:11.5px}.share-noexpiry-note{margin:0 0 10px;padding:8px 10px;font-size:12px;line-height:1.5;color:var(--hl-yellow);background:color-mix(in srgb,var(--hl-yellow) 10%,transparent);border:1px solid color-mix(in srgb,var(--hl-yellow) 30%,transparent);border-radius:8px}.billing-alert{margin:12px 0 0;padding:11px 12px;display:flex;flex-direction:column;align-items:flex-start;gap:10px;background:color-mix(in srgb,var(--sw-danger) 10%,transparent);border:1px solid color-mix(in srgb,var(--sw-danger) 32%,transparent);border-radius:8px}.billing-alert p{margin:0;font-size:12.5px;line-height:1.55;color:var(--sw-text)}.share-row .device-info{min-width:0;flex:1 1}.share-row-title{color:inherit;text-decoration:none;display:inline-block;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;vertical-align:bottom}a.share-row-title:hover{color:var(--sw-primary)}.share-warn{color:var(--hl-yellow)}.share-row-actions{display:inline-flex;align-items:center;gap:6px;flex:none}.share-row-actions .btn-ico{height:26px;padding:0 8px}@media (max-width:480px){.share-row{flex-wrap:wrap}.share-row .device-info{flex-grow:1;flex-shrink:1;flex-basis:calc(100% - 44px)}.share-row-actions{margin-left:auto}}.btn.dgr{background:color-mix(in srgb,var(--sw-danger) 8%,transparent);border-color:color-mix(in srgb,var(--sw-danger) 35%,var(--sw-border));color:var(--sw-danger)}.btn.dgr:hover:not(:disabled){background:color-mix(in srgb,var(--sw-danger) 15%,transparent)}.theme-toggle{width:30px;height:30px;flex:none;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--sw-border);border-radius:999px;background:var(--sw-surface);color:var(--sw-muted);cursor:pointer;padding:0;transition:color var(--sw-t-fast) var(--sw-ease),background var(--sw-t-fast) var(--sw-ease),border-color var(--sw-t-fast) var(--sw-ease),transform var(--sw-t-fast) var(--sw-ease)}.theme-toggle:hover{color:var(--sw-text);background:var(--sw-surface-2);transform:translateY(-1px)}.connect-wrap{min-height:100vh;display:grid;place-items:center;padding:24px}.connect-card{width:100%;max-width:420px;background:var(--sw-surface);border:1px solid var(--sw-border);border-radius:14px;padding:28px;text-align:center;box-shadow:var(--sw-shadow)}.connect-card .puzzle{font-size:32px;margin-bottom:10px}.connect-card h1{font-size:17px}.connect-card .desc{color:var(--sw-muted);font-size:13px;margin:10px 0 4px}.connect-card .code{font-family:ui-monospace,Consolas,monospace;font-size:22px;font-weight:600;letter-spacing:.3em;background:var(--sw-surface-2);border:1px solid var(--sw-border);border-radius:9px;padding:10px 16px 10px 22px;display:inline-block;margin:12px 0}.connect-card .actions{display:flex;gap:10px;justify-content:center;margin-top:10px}.connect-card .fine{color:var(--sw-muted);font-size:10.5px;margin-top:14px}.avatar,.card,.chart-tip,.connect-card,.divider,.domain,.empty,.graph-wrap,.hl-item,.ld-browser,.ld-browser .bar,.ld-browser .url,.ld-feat,.ld-footer,.ld-mini,.ld-nav,.ld-notepop,.ld-price,.ld-step,.ld-sticky,.ld-vs,.ld-vs .vs-head>div,.ld-vs .vs-row>div,.login,.login-mini,.rail,.toast,body,code.k{transition:background .25s var(--sw-ease),background-color .25s var(--sw-ease),color .25s var(--sw-ease),border-color .25s var(--sw-ease)}.card.stat{transition:background .25s var(--sw-ease),color .25s var(--sw-ease),border-color var(--sw-t-fast) var(--sw-ease),transform var(--sw-t-fast) var(--sw-ease)}.ld-feat{transition:background .25s var(--sw-ease),color .25s var(--sw-ease),border-color .25s var(--sw-ease),transform var(--sw-t-fast) var(--sw-ease),box-shadow var(--sw-t-fast) var(--sw-ease)}.ld-nav{transition:background .25s var(--sw-ease),color .25s var(--sw-ease),border-color .25s var(--sw-ease),box-shadow .25s var(--sw-ease)}.connect-card .ok-msg{color:var(--sw-ok);font-size:14.5px;font-weight:600;margin:14px 0 6px}.share-pop-root{position:relative}.pd-scrim{display:none}.share-pop{position:absolute;right:0;top:calc(100% + 8px);z-index:40;width:min(340px,84vw);background:var(--sw-surface);border:1px solid var(--sw-border);border-radius:10px;padding:14px;box-shadow:var(--sw-shadow-card);display:flex;flex-direction:column;gap:10px}.share-pop-title{font-weight:700;font-size:13.5px}.share-pop-hint{margin:0;color:var(--sw-muted);font-size:12.5px;line-height:1.55}.share-url{width:100%;height:32px;padding:0 9px;background:var(--sw-surface-2);border:1px solid var(--sw-border);border-radius:7px;font-size:12px;color:var(--sw-text);overflow:hidden;text-overflow:ellipsis}.share-pop-actions{display:flex;gap:8px}.modal .share-pop-actions{justify-content:flex-end}.btn.gho.danger{color:var(--sw-danger)}.btn.gho.danger:hover{background:color-mix(in srgb,var(--sw-danger) 10%,transparent)}.share-set{border-top:1px solid var(--sw-border);padding-top:10px;display:flex;flex-direction:column;gap:7px}.share-set-head{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--sw-muted)}.share-set-row{display:flex;align-items:center;gap:10px;font-size:12.5px;cursor:pointer}.share-set-row .grow{flex:1 1;min-width:0}.share-set-row.locked{cursor:not-allowed;color:var(--sw-muted)}.share-set-select{background:var(--sw-surface-2);border:1px solid var(--sw-border);border-radius:7px;padding:4px 8px;font-size:12px;color:var(--sw-text);font-family:inherit}.share-set-hint{margin:-3px 0 0;font-size:11px;color:var(--sw-muted);line-height:1.5}.pro-badge{display:inline-block;padding:0 7px;border-radius:999px;font-size:9.5px;font-weight:700;vertical-align:1px;color:var(--sw-primary);background:color-mix(in srgb,var(--sw-primary) 12%,transparent);border:1px solid color-mix(in srgb,var(--sw-primary) 38%,transparent)}.share-set-toggle{-moz-appearance:none;appearance:none;-webkit-appearance:none;margin:0;flex:none;cursor:pointer;width:32px;height:18px;border-radius:999px;background:var(--sw-border);border:1px solid var(--sw-border);position:relative;transition:background .15s var(--sw-ease),border-color .15s var(--sw-ease)}.share-set-toggle:after{content:"";position:absolute;left:2px;top:2px;width:12px;height:12px;border-radius:50%;background:var(--sw-surface);transition:transform .15s var(--sw-ease);box-shadow:0 1px 2px rgba(0,0,0,.25)}.share-set-toggle:checked{background:var(--sw-primary);border-color:var(--sw-primary)}.share-set-toggle:checked:after{transform:translateX(14px)}.share-set-toggle:disabled{opacity:.5;cursor:not-allowed}.share-set-toggle:focus-visible{outline:2px solid color-mix(in srgb,var(--sw-primary) 55%,transparent);outline-offset:2px}.note-history-pop{left:0;right:auto;width:min(320px,84vw);max-height:300px;overflow-y:auto;gap:6px}.note-ver{padding:7px 9px;border-radius:7px;font-size:12.5px}.note-ver.cur{background:color-mix(in srgb,var(--sw-primary) 7%,transparent);border:1px solid color-mix(in srgb,var(--sw-primary) 30%,transparent)}.note-ver-text{white-space:pre-wrap;word-break:break-word;line-height:1.5}.note-ver-meta{margin-top:2px;font-size:11px;color:var(--sw-muted)}.note-ver-meta b{color:var(--sw-primary);font-weight:600}.export-menu{padding:6px;gap:2px;width:min(300px,84vw)}.export-menu .menu-item{display:flex;align-items:center;gap:9px;width:100%;text-align:left;background:none;border:none;border-radius:7px;padding:8px 10px;font-size:13px;color:var(--sw-text);cursor:pointer;transition:background var(--sw-t-fast) var(--sw-ease)}.export-menu .menu-item svg{flex:0 0 auto;color:var(--sw-muted)}.export-menu .menu-item:hover:not(:disabled) svg{color:var(--sw-text)}.export-menu .menu-item:hover:not(:disabled){background:var(--sw-surface-2)}.export-menu .menu-item:disabled{opacity:.55;cursor:default}.share-wrap{max-width:860px;margin:0 auto;padding:22px 20px 60px}.share-banner{display:flex;align-items:center;gap:9px;background:color-mix(in srgb,var(--sw-primary) 9%,var(--sw-surface));border:1px solid color-mix(in srgb,var(--sw-primary) 30%,var(--sw-border));color:var(--sw-text);border-radius:9px;padding:9px 13px;font-size:13px;margin-bottom:24px}.share-banner svg{color:var(--sw-primary);flex:none}.share-banner span{flex:1 1;min-width:0}.apply-banner{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:color-mix(in srgb,var(--sw-primary) 7%,var(--sw-surface));border:1px solid color-mix(in srgb,var(--sw-primary) 28%,var(--sw-border));border-radius:10px;padding:11px 14px;font-size:13px;margin-bottom:18px}.apply-banner svg{color:var(--sw-primary);flex:none}.apply-banner span{flex:1 1;min-width:200px}.apply-banner.ok{background:color-mix(in srgb,var(--sw-ok) 8%,var(--sw-surface));border-color:color-mix(in srgb,var(--sw-ok) 30%,var(--sw-border))}.apply-banner.ok svg{color:var(--sw-ok)}.apply-banner.err{background:color-mix(in srgb,var(--sw-danger) 6%,var(--sw-surface));border-color:color-mix(in srgb,var(--sw-danger) 35%,var(--sw-border))}.apply-banner.err svg{color:var(--sw-danger)}.share-gone{text-align:center;padding:60px 0 30px;color:var(--sw-muted)}.share-gone h1{margin:12px 0 6px;color:var(--sw-text)}.share-gone .btn{margin-top:14px;display:inline-flex}.share-cta{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:42px;padding:16px 18px;background:var(--sw-surface);border:1px solid var(--sw-border);border-radius:12px}.share-cta .grow{flex:1 1;min-width:220px}.share-cta strong{display:block;margin-bottom:2px}.rail-cats{display:flex;flex-direction:column}.rail-group{font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--sw-muted);padding:14px 10px 4px}.rail .nav.cat{justify-content:space-between;gap:8px}.rail .nav.cat .cat-name{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.rail button.nav.cat-create{color:var(--sw-muted);font-size:12.5px}.rail button.nav.cat-create:hover:not(:disabled){color:var(--sw-text)}.rail button.nav.cat-create:disabled{opacity:.55;cursor:default}.rail-group-row{display:flex;align-items:center;justify-content:space-between;padding-right:6px}.rail-group-row .rail-group{flex:1 1}.cat-create-mini{border:0;background:none;cursor:pointer;color:var(--sw-muted);font-size:11px;line-height:1;padding:4px 6px;border-radius:6px;margin-top:10px}.cat-create-mini:hover:not(:disabled){color:var(--sw-text);background:var(--sw-hover,hsla(0,0%,50%,.12))}.cat-create-mini:disabled{opacity:.55;cursor:default}@media (max-width:760px){.rail-cats{display:none}}.cat-banner{font-size:12.5px;color:var(--sw-muted);margin:-14px 0 14px}.cat-banner a{color:var(--sw-primary);text-decoration:underline;text-underline-offset:2px}.cat-chips{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin:-8px 0 18px}.cat-chip{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:999px;font-size:12px;background:var(--sw-surface-2);border:1px solid var(--sw-border);color:var(--sw-text)}.cat-chip .cat-x{background:none;border:none;cursor:pointer;color:var(--sw-muted);font-size:13px;line-height:1;padding:0 1px;border-radius:50%}.cat-chip .cat-x:hover:not(:disabled){color:var(--sw-danger)}.cat-chip.add{background:transparent;border-style:dashed;color:var(--sw-muted);cursor:pointer;transition:color var(--sw-t-fast) var(--sw-ease),border-color var(--sw-t-fast) var(--sw-ease)}.cat-chip.add:hover{border-color:var(--sw-muted)}.cat-chip.add:hover,.cat-chip.add[aria-expanded=true]{color:var(--sw-text)}.cat-pop{left:0;right:auto;width:min(360px,88vw);gap:6px}.cat-row{gap:6px;min-height:28px}.cat-row,.cat-row .cat-check{display:flex;align-items:center}.cat-row .cat-check{gap:8px;flex:1 1;min-width:0;cursor:pointer;font-size:13px}.cat-row .cat-check input{accent-color:var(--sw-primary)}.cat-row .cat-check .cat-name{flex:1 1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.cat-row .item-act{opacity:.75}.cat-row .item-act:hover{opacity:1}.cat-row .inp.cat-edit{flex:1 1;height:28px;font-size:12.5px}.cat-row .btn{height:26px;padding:0 11px;font-size:11px}.cat-row.cat-new{margin-top:4px;border-top:1px solid color-mix(in srgb,var(--sw-border) 60%,transparent);padding-top:10px}.item-cats{display:flex;gap:5px;flex-wrap:wrap;align-items:center;margin-top:7px}.cat-chip.sm{padding:1px 8px;font-size:11px;gap:4px}.cat-chip.inherited{opacity:.55}.cat-chip.own{font-weight:600;border-color:color-mix(in srgb,var(--sw-primary) 45%,var(--sw-border))}.cat-chip .own-dot{width:5px;height:5px;border-radius:50%;background:var(--sw-primary);flex:none}.item-cats-none{font-size:11px;color:var(--sw-muted);font-style:italic}.trash-count{font-size:13px;font-weight:400;color:var(--sw-muted)}.trash-row{display:flex;align-items:center;gap:12px;background:var(--sw-surface);border:1px solid var(--sw-border);border-radius:10px;padding:11px 14px;margin-bottom:8px;transition:border-color var(--sw-t-fast) var(--sw-ease)}.trash-row:hover{border-color:color-mix(in srgb,var(--sw-muted) 35%,var(--sw-border))}.trash-ic{width:30px;height:30px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--hl-yellow) 30%,transparent);color:var(--sw-text)}.trash-ic.sk{background:color-mix(in srgb,var(--hl-blue) 26%,transparent)}.trash-main{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:1px}.trash-label{font-size:13px;font-weight:600}.trash-label,.trash-meta{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.trash-meta{font-size:11.5px;color:var(--sw-muted)}.trash-meta a{color:inherit;text-decoration:underline;text-underline-offset:2px}.trash-meta a:hover{color:var(--sw-text)}.trash-days{flex:none;font-size:11.5px;color:var(--sw-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.trash-days.warn{color:var(--sw-danger);font-weight:700}.trash-row .btn,.trash-row .sel-check{flex:none}.trash-confirm{display:inline-flex;align-items:center;gap:8px;flex:none}.trash-confirm-msg{font-size:11.5px;color:var(--sw-muted);max-width:260px}.sel-all{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;color:var(--sw-muted);margin:0 0 10px 2px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.filter-opt input[type=checkbox],.graph-controls input[type=checkbox],.pdv2-check,.row .sel-check,.sel-all input,.trash-row .sel-check{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:16px;height:16px;flex:none;margin:0;border:1px solid var(--sw-border);border-radius:4px;background:var(--sw-surface) center /12px no-repeat;cursor:pointer;transition:background-color .12s var(--sw-ease),border-color .12s var(--sw-ease)}.filter-opt input[type=checkbox]:hover,.graph-controls input[type=checkbox]:hover,.pdv2-check:hover,.row .sel-check:hover,.sel-all input:hover,.trash-row .sel-check:hover{border-color:color-mix(in srgb,var(--sw-primary) 55%,var(--sw-border))}.filter-opt input[type=checkbox]:checked,.graph-controls input[type=checkbox]:checked,.pdv2-check:checked,.row .sel-check:checked,.sel-all input:checked,.trash-row .sel-check:checked{background-color:var(--sw-primary);border-color:var(--sw-primary);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 13 4 4 10-11'/%3E%3C/svg%3E")}.graph-controls input[type=checkbox]:focus-visible,.pdv2-check:focus-visible,.row .sel-check:focus-visible,.sel-all input:focus-visible,.trash-row .sel-check:focus-visible{outline:2px solid var(--sw-primary);outline-offset:2px}.cat-check input[type=radio],.export-opt input[type=radio],.filter-opt input[type=radio]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:16px;height:16px;flex:none;margin:0;border:1px solid var(--sw-border);border-radius:50%;background:var(--sw-surface);cursor:pointer;transition:background-color .12s var(--sw-ease),border-color .12s var(--sw-ease)}.cat-check input[type=radio]:hover,.export-opt input[type=radio]:hover,.filter-opt input[type=radio]:hover{border-color:color-mix(in srgb,var(--sw-primary) 55%,var(--sw-border))}.cat-check input[type=radio]:checked,.export-opt input[type=radio]:checked,.filter-opt input[type=radio]:checked{border-color:var(--sw-primary);background-image:radial-gradient(circle,var(--sw-primary) 0 3px,transparent 3.5px)}.cat-check input[type=radio]:focus-visible,.export-opt input[type=radio]:focus-visible,.filter-opt input[type=radio]:focus-visible{outline:2px solid var(--sw-primary);outline-offset:2px}.export-opt input[type=radio]{margin-top:3px}.sel-all .sel-n{color:var(--sw-text)}.row .sel-check{flex:none;opacity:0;transition:opacity var(--sw-t-fast) var(--sw-ease)}.row .sel-check:checked,.row .sel-check:focus-visible,.row:hover .sel-check,.rows.selecting .sel-check{opacity:1}.bulkbar{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:10px;z-index:60;background:var(--sw-surface);border:1px solid var(--sw-border);border-radius:12px;padding:10px 14px;box-shadow:var(--sw-shadow-card);max-width:min(92vw,720px);flex-wrap:wrap}.bulkbar .cnt{font-size:12.5px;font-weight:600;white-space:nowrap}.bulkbar .btn{height:30px;padding:0 13px;font-size:12px}.bulkbar .bulk-close{padding:0 9px}.bulk-pop{bottom:calc(100% + 10px);top:auto}.bulk-pick{display:flex;align-items:center;gap:8px;flex:1 1;min-width:0;background:none;border:none;cursor:pointer;font:inherit;font-size:13px;color:var(--sw-text);text-align:left;padding:4px 2px;border-radius:6px}.bulk-pick:hover:not(:disabled){color:var(--sw-primary)}.bulk-pick .cat-name{flex:1 1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.graph-chips{margin:0 0 12px}.graph-chips .cat-chip{cursor:pointer;font:inherit;font-size:12px;transition:color var(--sw-t-fast) var(--sw-ease),border-color var(--sw-t-fast) var(--sw-ease)}.graph-chips .cat-chip:hover{border-color:var(--sw-muted)}.graph-chips .cat-chip.on{border-color:color-mix(in srgb,var(--sw-primary) 55%,var(--sw-border));background:color-mix(in srgb,var(--sw-primary) 10%,transparent);color:var(--sw-primary);font-weight:600}.graph-chips .cat-chip .count{color:var(--sw-muted);font-size:11px}.ovw-grid{display:grid;grid-template-columns:1.1fr .9fr;grid-gap:20px;gap:20px;align-items:start}.ovw-grid .ovw-col{min-width:0}.ovw-grid .ovw-col .ins-card+.ins-card{margin-top:14px}.stat-delta{display:inline-flex;align-items:center;gap:3px;margin-top:7px;padding:2px 8px;font-size:11px;font-weight:600;line-height:1.4;color:var(--sw-ok);background:color-mix(in srgb,var(--sw-ok) 13%,transparent);border:1px solid color-mix(in srgb,var(--sw-ok) 32%,transparent);border-radius:999px}.toptopic{display:block;text-decoration:none;color:inherit;border-radius:8px;padding:2px}.toptopic:hover .toptopic-name{color:var(--sw-primary)}.toptopic-name{display:block;font-size:17px;font-weight:700;transition:color var(--sw-t-fast) var(--sw-ease)}.toptopic-sub{display:flex;align-items:center;gap:8px;margin-top:4px;font-size:12px;color:var(--sw-muted)}.toptopic-delta{color:var(--sw-ok);font-weight:600}.toptopic-delta.down{color:var(--sw-danger)}.act-row{display:flex;align-items:flex-start;gap:9px;padding:7px 4px;border-radius:8px;text-decoration:none;color:inherit;transition:background var(--sw-t-fast) var(--sw-ease)}.act-row:hover{background:var(--sw-surface-2)}.act-ico{flex:none;width:22px;height:22px;margin-top:1px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;border:1px solid var(--sw-border)}.act-ico.hl{color:var(--hl-yellow)}.act-ico.note{color:var(--hl-green)}.act-ico.sketch{color:var(--hl-purple)}.act-body{flex:1 1;min-width:0}.act-what{display:block;font-size:12.5px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.act-label{color:var(--sw-muted)}.act-page{display:block;margin-top:1px;overflow:hidden;text-overflow:ellipsis}.act-page,.act-ts{font-size:11px;color:var(--sw-muted);white-space:nowrap}.act-ts{flex:none;margin-top:2px}@media (max-width:980px){.ovw-grid{grid-template-columns:1fr}}.ovw-bottom{display:grid;grid-template-columns:1fr 1fr;grid-gap:20px;gap:20px;align-items:start;margin-top:20px}.ovw-bottom .ins-card{min-width:0}@media (max-width:980px){.ovw-bottom{grid-template-columns:1fr;gap:14px}}.card.stat .ins-streak-n{font-size:24px}.card.stat .ins-streak-n .unit{font-size:11.5px;font-weight:400;color:var(--sw-muted)}.card.stat .ins-streak-sub{font-size:11px;color:var(--sw-muted);margin-top:4px;line-height:1.45}.ins-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:14px;gap:14px}.ins-card{display:flex;flex-direction:column;gap:8px}.ins-card .head{gap:7px;font-size:12px;color:var(--sw-muted);letter-spacing:.04em;text-transform:uppercase;margin-bottom:4px}.ins-card .head,.ins-dom{display:flex;align-items:center}.ins-dom{gap:10px;font-size:12.5px}.ins-dom .dom-name{width:34%;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ins-dom .dom-bar{flex:1 1;height:8px;border-radius:4px;background:var(--sw-surface-2);overflow:hidden}.ins-dom .dom-bar i{display:block;height:100%;border-radius:4px;background:var(--sw-primary)}.ins-dom .dom-n{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600;min-width:3ch;text-align:right}.ins-axis{display:flex;justify-content:space-between;font-size:11px;color:var(--sw-muted);margin-top:6px}.ins-streak-n{font-size:34px;font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.1}.ins-streak-n .unit{font-size:13px;font-weight:400;color:var(--sw-muted)}.ins-streak-sub{font-size:12.5px;color:var(--sw-muted);line-height:1.55}.ins-stale-row{display:flex;align-items:baseline;gap:10px;font-size:12.5px;color:var(--sw-text);text-decoration:none;padding:4px 0;border-radius:6px}.ins-stale-row .t{flex:1 1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ins-stale-row:hover .t{color:var(--sw-primary);text-decoration:underline;text-underline-offset:2px}.ins-stale-row .w{color:var(--sw-muted);font-size:11.5px;white-space:nowrap}.ins-stale-empty{font-size:12.5px;color:var(--sw-muted)}.ins-card .bar{fill:var(--sw-surface-2);transition:fill var(--sw-t-fast) var(--sw-ease)}.ins-card .bar:hover{fill:color-mix(in srgb,var(--sw-muted) 30%,var(--sw-surface-2))}.ins-card .bar-today{fill:var(--sw-primary)}.ins-card .bar-today:hover{fill:var(--sw-primary-hover)}.review-head{display:flex;align-items:center;gap:10px;margin-bottom:18px;flex-wrap:wrap}.review-head h1{margin:0}.review-head .review-controls{margin-left:auto;display:inline-flex;gap:8px}.review-select{width:auto;min-width:120px}.review-card .review-actions .btn.review-grade{flex:1 1;justify-content:center;height:34px;font-size:13px;max-width:220px}.review-card .review-actions .btn.review-open{width:34px;height:34px;padding:0;justify-content:center;flex:none}.review-due{font-size:12.5px;color:var(--sw-primary);font-weight:600}.review-sched{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--sw-muted)}.review-again{color:var(--sw-danger);border-color:color-mix(in srgb,var(--sw-danger) 40%,var(--sw-border))}.review-again:hover:not(:disabled){background:color-mix(in srgb,var(--sw-danger) 10%,transparent)}.cat-nav-row{position:relative}.cat-nav-row .nav.cat{width:100%}.cat-menu-root{position:static}.cat-menu-btn{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:22px;height:22px;border-radius:6px;border:none;cursor:pointer;background:transparent;color:var(--sw-muted);font-size:14px;line-height:1;opacity:0;transition:opacity var(--sw-t-fast) var(--sw-ease);display:flex;align-items:center;justify-content:center}.cat-menu-btn:focus-visible,.cat-menu-btn[aria-expanded=true],.cat-nav-row:hover .cat-menu-btn{opacity:1}.cat-menu-btn:hover{background:var(--sw-surface-2);color:var(--sw-text)}.cat-nav-row:hover .count{visibility:hidden}.cat-menu-pop{left:auto;right:0;top:auto;width:200px;padding:6px;gap:2px}.cat-menu-pop .menu-item{display:flex;align-items:center;gap:8px;width:100%;background:none;border:none;cursor:pointer;font:inherit;font-size:12.5px;color:var(--sw-text);padding:7px 9px;border-radius:7px;text-align:left}.cat-menu-pop .menu-item:hover:not(:disabled){background:var(--sw-surface-2)}.modal-overlay{position:fixed;inset:0;z-index:90;background:color-mix(in srgb,#10131a 45%,transparent);display:flex;align-items:center;justify-content:center;padding:20px}.modal{width:min(440px,94vw);background:var(--sw-surface);border:1px solid var(--sw-border);border-radius:12px;padding:18px;box-shadow:var(--sw-shadow-card);display:flex;flex-direction:column;gap:10px}.modal.fb{width:min(520px,94vw)}.fb__head{display:flex;align-items:center;justify-content:space-between;gap:10px}.fb__head h2{font-size:16px;margin:0}.fb__lede{font-size:13px;color:var(--sw-muted);margin:0;line-height:1.6}.fb__kinds{display:flex;gap:8px;flex-wrap:wrap}.fb__kind{padding:7px 13px;border-radius:999px;font-size:13px;cursor:pointer;border:1px solid var(--sw-border);background:transparent;color:var(--sw-muted)}.fb__kind:hover{color:var(--sw-text)}.fb__kind.is-on{border-color:var(--sw-primary);color:var(--sw-primary);background:color-mix(in srgb,var(--sw-primary) 12%,transparent);font-weight:600}.fb__text{width:100%;min-height:132px;resize:vertical;padding:11px 13px;border-radius:10px;border:1px solid var(--sw-border);background:var(--sw-bg);color:var(--sw-text);font:inherit;font-size:14px;line-height:1.6}.fb__text:focus{outline:none;border-color:var(--sw-primary)}.fb__foot{display:flex;align-items:flex-end;justify-content:space-between;gap:14px}.fb__hint{font-size:11.5px;color:var(--sw-muted);line-height:1.5;flex:1 1}@media (max-width:560px){.fb__foot{flex-direction:column;align-items:stretch}}.share-cat-page{margin-top:30px;padding-top:18px;border-top:1px solid var(--sw-border)}.share-cat-page h2{font-size:16px;margin-bottom:4px}.export-opts{display:flex;flex-direction:column;gap:6px}.export-opt{display:flex;align-items:flex-start;gap:10px;cursor:pointer;border:1px solid var(--sw-border);border-radius:10px;padding:10px 12px;transition:border-color var(--sw-t-fast) var(--sw-ease),background var(--sw-t-fast) var(--sw-ease)}.export-opt:hover{background:var(--sw-surface-2)}.export-opt.on{border-color:var(--sw-primary);background:color-mix(in srgb,var(--sw-primary) 6%,transparent)}.export-opt input{margin-top:3px}.export-opt-ic{color:var(--sw-muted);display:inline-flex;margin-top:2px}.export-opt.on .export-opt-ic{color:var(--sw-primary)}.export-opt-body{display:flex;flex-direction:column;gap:2px;min-width:0}.export-opt-name{font-weight:600;font-size:13px}.export-opt-ext{font-weight:500;font-size:11px;color:var(--sw-muted);background:var(--sw-surface-2);border-radius:5px;padding:1px 6px;margin-left:4px}.export-opt-desc{font-size:12px;color:var(--sw-muted)}.export-progress{margin:0}.import-src{justify-content:flex-start;width:100%}.import-bar{height:8px;border-radius:4px;background:var(--sw-surface-2);overflow:hidden}.import-bar i{display:block;height:100%;border-radius:4px;background:var(--sw-primary);transition:width var(--sw-t-fast) var(--sw-ease)}.pagehead h1{overflow-wrap:anywhere}@media (max-width:640px){.pagehead{flex-wrap:wrap}.pagehead .grow{flex:1 1 100%}}.hl-item .note,.hl-item .quote{overflow-wrap:anywhere}.modal{max-width:100%}.share-pop-actions{flex-wrap:wrap}.toast{max-width:calc(100vw - 36px)}.ins-grid{grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr))}@media (max-width:760px){.rail .nav{padding:12px 0}}@media (max-width:480px){.cards{grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:18px}.card.stat{padding:10px 12px}.card.stat .big{font-size:20px}.ins-streak-sub,.stat-delta{display:none}.shell main{overflow-x:hidden}.trash-row{flex-wrap:wrap;row-gap:8px;gap:8px}.trash-row .trash-main{flex-grow:1;flex-shrink:1;flex-basis:calc(100% - 72px);min-width:0}.trash-row .trash-label,.trash-row .trash-meta{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.trash-row .trash-days{margin-left:26px;margin-right:auto}.trash-row .btn{height:30px;padding:0 10px;font-size:12px}.pd-scrim{display:block;position:fixed;inset:0;z-index:155;background:rgba(0,0,0,.45);animation:m-fade var(--sw-t-fast) var(--sw-ease)}.pdv2-head .share-pop{position:fixed;left:0;right:0;top:auto;bottom:0;width:auto;max-height:75dvh;overflow-y:auto;z-index:160;border-radius:16px 16px 0 0;border-left:0;border-right:0;border-bottom:0;padding:18px 14px calc(14px + env(safe-area-inset-bottom));animation:m-slide-up var(--sw-t-fast) var(--sw-ease)}.pdv2-head .share-pop:before{content:"";display:block;width:40px;height:4px;border-radius:999px;background:var(--sw-border);margin:-8px auto 10px}.hlfilter .pdv2-dd,.hlfilters .pdv2-dd{position:fixed;left:12px;right:12px;top:auto;bottom:calc(64px + env(safe-area-inset-bottom) + 8px);min-width:0;max-height:60dvh;overflow-y:auto;z-index:160}.bulkbar .share-pop-root{position:static}.bulkbar .share-pop{left:0;right:0;width:auto}.filter-row,.hlfilter{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:2px}.filter-row::-webkit-scrollbar,.hlfilter::-webkit-scrollbar{display:none}.filter-row>*,.hlfilter>*{flex:none}.btn{height:40px}.review-card .review-actions .btn.review-grade{height:44px;max-width:none}.review-card .review-actions .btn.review-open{width:44px;height:44px}.modal-overlay{padding:12px}.share-pop{width:min(340px,calc(100vw - 32px))}.export-menu,.note-history-pop{width:min(300px,calc(100vw - 32px))}}.pdv2-stats{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:12.5px;color:var(--sw-muted);margin:4px 0 12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pdv2-stats b{color:var(--sw-text);font-weight:700}.pdv2-stats .sep{width:3px;height:3px;border-radius:50%;background:var(--sw-border);display:inline-block}.pdv2-filters{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:14px}.pdv2-drop{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--sw-muted);font-weight:600}.pdv2-drop select{font:inherit;color:var(--sw-text);font-weight:600;background:var(--sw-surface);border:1px solid var(--sw-border);border-radius:8px;padding:4px 8px;cursor:pointer}.pdv2-drop select:focus-visible{outline:2px solid var(--sw-primary);outline-offset:1px}.hm-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.hm-head>span{display:inline-flex;align-items:center;gap:6px}.hm-head select{font:inherit;font-size:12px;font-weight:400;letter-spacing:normal;text-transform:none;color:var(--sw-text);background:var(--sw-surface);border:1px solid var(--sw-border);border-radius:8px;padding:4px 8px;cursor:pointer}.hm-head select:focus-visible{outline:2px solid var(--sw-primary);outline-offset:1px}.hm-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:5px;gap:5px;margin-top:4px}.hm-dow{font-size:9.5px;color:var(--sw-muted);text-align:center;line-height:1}.hm-cell{width:100%;height:13px;border-radius:4px;background:var(--sw-surface-2)}.hm-cell.pad{background:transparent}.hm-cell.l1{background:color-mix(in srgb,var(--sw-primary) 25%,var(--sw-surface-2))}.hm-cell.l2{background:color-mix(in srgb,var(--sw-primary) 45%,var(--sw-surface-2))}.hm-cell.l3{background:color-mix(in srgb,var(--sw-primary) 70%,var(--sw-surface-2))}.hm-cell.l4{background:var(--sw-primary)}.hm-legend{display:flex;align-items:center;justify-content:flex-end;gap:4px;margin-top:10px;font-size:10.5px;color:var(--sw-muted)}.hm-legend .hm-cell{width:11px;height:11px;aspect-ratio:auto;flex:none}.search-scrim{position:fixed;inset:0;z-index:200;background:rgba(0,0,0,.45);display:flex;justify-content:center;align-items:flex-start;padding:10vh 16px 16px}.search-modal{width:min(560px,100%);background:var(--sw-surface);border:1px solid var(--sw-border);border-radius:12px;box-shadow:var(--sw-shadow-card);overflow:hidden}.search-modal-inputrow{display:flex;align-items:center;gap:10px;padding:12px 14px;color:var(--sw-muted)}.search-modal-inputrow input{flex:1 1;min-width:0;border:none;outline:none;background:none;font:inherit;font-size:14px;color:var(--sw-text)}.search-modal-inputrow kbd{font:inherit;font-size:10.5px;color:var(--sw-muted);border:1px solid var(--sw-border);border-radius:5px;padding:2px 6px}.search-modal-body{max-height:55vh;overflow-y:auto;border-top:1px solid var(--sw-border);padding:6px}.search-modal-sec{padding:8px 10px 4px;font-size:10.5px;font-weight:600;letter-spacing:.4px;text-transform:uppercase;color:var(--sw-muted)}.search-row{display:flex;align-items:flex-start;gap:10px;width:100%;padding:8px 10px;border:none;border-radius:8px;background:none;font:inherit;text-align:left;color:inherit;cursor:pointer}.search-row.act,.search-row:focus-visible,.search-row:hover{background:var(--sw-surface-2)}.search-row .sr-ico{flex:none;margin-top:2px;color:var(--sw-muted)}.search-row .sr-body{flex:1 1;min-width:0}.search-row .sr-t{font-size:13px}.search-row .sr-s,.search-row .sr-t{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.search-row .sr-s{margin-top:1px;font-size:11px;color:var(--sw-muted)}.search-modal-empty{padding:16px 12px;font-size:12.5px;color:var(--sw-muted)}.rail-search{margin-bottom:4px}.rail-kbd{margin-left:auto;font-size:10px;color:var(--sw-muted);border:1px solid var(--sw-border);border-radius:5px;padding:1px 5px}.sec-head{margin:4px 0 10px}.btn-ico{padding:0 10px}.graph-legend{display:flex;flex-wrap:wrap;gap:12px;margin:6px 0 10px;font-size:11.5px;color:var(--sw-muted)}.graph-legend-item{display:inline-flex;align-items:center;gap:5px}.graph-legend-item .dot{width:9px;height:9px;border-radius:50%}.pdv2-dd-root{position:relative;display:inline-flex}.pdv2-ddbtn{display:inline-flex;align-items:center;gap:5px;font:inherit;font-size:12px;font-weight:600;color:var(--sw-text);background:var(--sw-surface);border:1px solid var(--sw-border);border-radius:999px;padding:4px 11px;cursor:pointer}.pdv2-ddbtn:hover{background:var(--sw-surface-2)}.pdv2-ddbtn.on{border-color:color-mix(in srgb,var(--sw-primary) 55%,var(--sw-border))}.pdv2-ddbtn .badge{min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:var(--sw-primary);color:#fff;font-size:10px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.pdv2-ddbtn .cv{font-size:10px;color:var(--sw-muted)}.pdv2-dd{position:absolute;top:calc(100% + 6px);left:0;z-index:40;min-width:220px;background:var(--sw-surface);border:1px solid var(--sw-border);border-radius:10px;box-shadow:var(--sw-shadow-card);padding:8px}.pdv2-dd .ddh{justify-content:space-between;font-size:11.5px;color:var(--sw-muted);padding:2px 4px 7px}.pdv2-dd .ddh,.pdv2-ddrow{display:flex;align-items:center}.pdv2-ddrow{gap:8px;width:100%;font:inherit;font-size:12.5px;color:var(--sw-text);background:transparent;border:0;border-radius:7px;padding:6px 8px;cursor:pointer}.pdv2-ddrow:hover{background:var(--sw-surface-2)}.pdv2-ddrow.on{background:color-mix(in srgb,var(--sw-primary) 10%,transparent)}.pdv2-ddrow .d{width:12px;height:12px;border-radius:4px;flex:0 0 auto}.pdv2-ddrow .nm{flex:1 1;text-align:left}.pdv2-ddrow .cn{color:var(--sw-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pdv2-ddrow .tk{width:15px;color:var(--sw-primary);display:inline-flex}.pdv2-body{display:grid;grid-template-columns:1fr;grid-gap:18px;gap:18px;align-items:start}.pdv2-body.has-sel{grid-template-columns:minmax(0,1fr) 340px}.pdv2-list{display:flex;flex-direction:column;gap:10px;min-width:0}.pdv2-item{padding:9px 12px;background:var(--sw-surface);border-radius:0 8px 8px 0;cursor:pointer;border:1px solid transparent;border-left:3px solid var(--hl-yellow);transition:background var(--sw-t-fast) var(--sw-ease)}.pdv2-item:hover{background:var(--sw-surface-2)}.pdv2-item:focus-visible{outline:2px solid var(--sw-primary);outline-offset:1px}.pdv2-item.sel{background:var(--sw-surface);border-top-color:color-mix(in srgb,var(--sw-primary) 40%,var(--sw-border));border-right-color:color-mix(in srgb,var(--sw-primary) 40%,var(--sw-border));border-bottom-color:color-mix(in srgb,var(--sw-primary) 40%,var(--sw-border));box-shadow:0 0 0 1px color-mix(in srgb,var(--sw-primary) 30%,transparent)}.pdv2-item .q{font-size:13px;line-height:1.5;overflow-wrap:anywhere}.pdv2-item .nt{display:flex;align-items:flex-start;gap:5px;margin-top:5px;font-size:12.5px;color:var(--sw-muted)}.pdv2-item .nt .ico{color:var(--sw-primary);flex:0 0 auto;margin-top:1px}.pdv2-item .mt{font-size:11px;color:var(--sw-muted);margin-top:5px}.pdv2-sketches{margin-top:14px;border:1px solid var(--sw-border);border-radius:12px;background:var(--sw-surface);padding:12px 14px}.pdv2-sketches h4{margin:0;font-size:14px}.pdv2-sketches .sub{margin:3px 0 10px}.pdv2-sk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));grid-gap:10px;gap:10px}.pdv2-sk{position:relative;border:1px solid var(--sw-border);border-radius:10px;background:var(--sw-bg);padding:8px 6px 6px;cursor:pointer;text-align:center}.pdv2-sk:hover{background:var(--sw-surface-2)}.pdv2-sk:focus-visible{outline:2px solid var(--sw-primary);outline-offset:1px}.pdv2-sk[draggable=true]{cursor:-webkit-grab;cursor:grab}.pdv2-sk.dragging{opacity:.45;cursor:-webkit-grabbing;cursor:grabbing}.pdv2-sk.droph{outline:2px dashed var(--sw-primary);outline-offset:1px}.pdv2-sk.sel{border-color:color-mix(in srgb,var(--sw-primary) 55%,var(--sw-border));box-shadow:0 0 0 1px color-mix(in srgb,var(--sw-primary) 35%,transparent)}.pdv2-sk .thumb{display:block;margin:4px auto 2px;width:44px;height:30px}.pdv2-sk .num{top:4px;left:6px;font-size:10px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pdv2-sk .dots,.pdv2-sk .num{position:absolute;color:var(--sw-muted)}.pdv2-sk .dots{top:2px;right:2px;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;border-radius:6px;cursor:pointer}.pdv2-sk .dots:hover{background:var(--sw-surface-2);color:var(--sw-text)}.pdv2-sk .notebadge{position:absolute;top:3px;left:3px;width:15px;height:15px;border-radius:50%;background:var(--sw-ok);color:#fff;display:inline-flex;align-items:center;justify-content:center}.pdv2-sk .lb{font-size:10.5px;color:var(--sw-muted);margin-top:3px}.pdv2-skmenu{position:absolute;top:24px;right:2px;z-index:30;background:var(--sw-surface);border:1px solid var(--sw-border);border-radius:8px;box-shadow:var(--sw-shadow-card);padding:4px}.pdv2-skmenu .tr{display:inline-flex;align-items:center;gap:6px;width:100%;font:inherit;font-size:12px;color:var(--sw-danger);background:transparent;border:0;border-radius:6px;padding:6px 10px;cursor:pointer;white-space:nowrap}.pdv2-skmenu .tr:hover{background:color-mix(in srgb,var(--sw-danger) 10%,transparent)}.pdv2-details{position:-webkit-sticky;position:sticky;top:16px;align-self:start;border:1px solid var(--sw-border);border-radius:12px;background:var(--sw-surface);padding:14px;min-width:0}.pdv2-dhead{display:flex;align-items:center;gap:6px;margin-bottom:8px}.pdv2-ico{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:8px;color:var(--sw-muted);cursor:pointer}.pdv2-ico:hover{background:var(--sw-surface-2);color:var(--sw-text)}.pdv2-ico:focus-visible{outline:2px solid var(--sw-primary);outline-offset:1px}.pdv2-ico.act{color:var(--sw-primary);border-color:color-mix(in srgb,var(--sw-primary) 45%,var(--sw-border));background:color-mix(in srgb,var(--sw-primary) 10%,transparent)}.pdv2-ico.danger:hover{color:var(--sw-danger);background:color-mix(in srgb,var(--sw-danger) 12%,transparent)}.pdv2-ico.danger.arm{width:auto;padding:0 10px;font-size:12px;font-weight:600;color:var(--sw-danger);border-color:color-mix(in srgb,var(--sw-danger) 50%,transparent);background:color-mix(in srgb,var(--sw-danger) 14%,transparent)}.pdv2-item{display:flex;align-items:flex-start;gap:10px}.pdv2-item__body{flex:1 1;min-width:0}.pdv2-check{margin-top:3px;opacity:.35;transition:opacity var(--sw-t-fast) var(--sw-ease)}.pdv2-check:checked,.pdv2-check:focus-visible,.pdv2-item:hover .pdv2-check{opacity:1}.pdv2-item.bulk{outline:1px solid color-mix(in srgb,var(--sw-primary) 55%,transparent)}.pdv2-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:999px;font-size:11.5px;font-weight:700;color:var(--sw-text)}.pdv2-row{padding:8px 0;border-top:1px solid var(--sw-border)}.pdv2-row:first-of-type{border-top:0}.pdv2-row .k{font-size:11px;color:var(--sw-muted);margin-bottom:4px;font-weight:600}.pdv2-row .v{font-size:13px;line-height:1.5;overflow-wrap:anywhere}.pdv2-row .v.sub{color:var(--sw-muted)}.pdv2-colorval{display:flex;align-items:center;gap:8px}.pdv2-imgpreview{display:block;max-width:100%;max-height:180px;margin-top:8px;border-radius:8px;border:1px solid var(--sw-border)}.pdv2-colorval .sw{width:13px;height:13px;border-radius:4px;flex:0 0 auto}.pdv2-colorval .thumb{width:44px;height:30px}.pdv2-cats{display:flex;flex-wrap:wrap;gap:6px}.pdv2-catpill,.pdv2-cchip{display:inline-flex;align-items:center;gap:5px;padding:2px 9px;border-radius:999px;font-size:10.5px;font-weight:600;color:var(--sw-text);border:1px solid color-mix(in srgb,var(--sw-primary) 45%,var(--sw-border));background:transparent}.pdv2-catpill .dot,.pdv2-cchip .dot{width:5px;height:5px;border-radius:50%;background:var(--sw-primary)}.pdv2-cats .item-cats{margin-top:0}.pdv2-cathint{font-size:11px;color:var(--sw-muted);line-height:1.45;margin:0 0 7px}.pdv2-catpick{display:flex;flex-wrap:wrap;gap:6px}.pdv2-catpill{cursor:pointer;border-style:dashed;opacity:.75}.pdv2-catpill.on{border-style:solid;opacity:1;background:color-mix(in srgb,var(--sw-primary) 8%,transparent)}.pdv2-catpill.inherit .dot{display:none}.pdv2-catpill.on.inh{opacity:.6;background:transparent}.pdv2-catpill svg{color:var(--sw-danger)}.pdv2-linksub{font-size:10.5px;color:var(--sw-muted);margin:6px 0 3px;font-weight:600}.pdv2-links{display:flex;flex-direction:column;gap:3px}.pdv2-linkitem{display:inline-flex;align-items:center;gap:7px;padding:5px 8px;border-radius:8px;font-size:12.5px;color:var(--sw-text);text-decoration:none;cursor:pointer}.pdv2-linkitem:hover{background:var(--sw-surface-2)}.pdv2-linkitem .li{color:var(--sw-primary);display:inline-flex;flex:0 0 auto}.pdv2-linkitem .bk{margin-left:4px;font-size:9.5px;color:var(--sw-muted);border:1px solid var(--sw-border);border-radius:999px;padding:0 6px}.pdv2-linkitem .nm{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pdv2-linkitem .pg{margin-left:auto;font-size:10.5px;color:var(--sw-muted);flex:0 0 auto}.pdv2-linkitem.edit{width:100%;cursor:default}.pdv2-linkitem.edit:hover{background:transparent}.pdv2-linkitem.edit .nm{flex:1 1}.pdv2-linkdel{flex:0 0 auto;margin-left:4px;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:6px;background:transparent;color:var(--sw-muted);cursor:pointer}.pdv2-linkdel:hover{background:color-mix(in srgb,var(--sw-danger) 12%,transparent);color:var(--sw-danger)}.pdv2-addlink-btn{display:inline-flex;align-items:center;gap:6px;margin-top:6px;font:inherit;font-size:12px;font-weight:600;color:var(--sw-primary);background:transparent;border:1px dashed color-mix(in srgb,var(--sw-primary) 45%,var(--sw-border));border-radius:8px;padding:6px 10px;cursor:pointer}.pdv2-addlink-btn:hover{background:color-mix(in srgb,var(--sw-primary) 8%,transparent)}.pdv2-addlink{margin-top:8px;border:1px solid var(--sw-border);border-radius:10px;background:var(--sw-surface-2);padding:8px}.pdv2-altabs{display:flex;align-items:center;gap:4px;margin-bottom:8px}.altab{display:inline-flex;align-items:center;gap:5px;font:inherit;font-size:11.5px;font-weight:600;color:var(--sw-muted);background:transparent;border:1px solid transparent;border-radius:7px;padding:5px 9px;cursor:pointer}.altab.on,.altab:hover{color:var(--sw-text)}.altab.on{background:var(--sw-surface);border-color:var(--sw-border)}.pdv2-addlink .alx{margin-left:auto;width:24px;height:24px}.pdv2-alsearch{display:flex;align-items:center;gap:6px;padding:0 8px;border:1px solid var(--sw-border);border-radius:8px;background:var(--sw-surface)}.pdv2-alsearch svg{color:var(--sw-muted);flex:0 0 auto}.pdv2-alsearch .note-input{border:0;background:transparent;padding:7px 0}.pdv2-alsearch .note-input:focus{outline:none;box-shadow:none}.pdv2-alhint{font-size:11.5px;color:var(--sw-muted);margin:8px 2px 2px}.pdv2-alresults{display:flex;flex-direction:column;gap:2px;margin-top:6px;max-height:220px;overflow-y:auto}.pdv2-alrow{display:flex;align-items:center;gap:7px;width:100%;text-align:left;font:inherit;font-size:12.5px;color:var(--sw-text);background:transparent;border:0;border-radius:7px;padding:6px 8px;cursor:pointer}.pdv2-alrow:hover{background:var(--sw-surface)}.pdv2-alrow .li{color:var(--sw-primary);display:inline-flex;flex:0 0 auto}.pdv2-alrow .nm{min-width:0}.pdv2-alrow .nm,.pdv2-alrow .pg{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pdv2-alrow .pg{margin-left:auto;font-size:10.5px;color:var(--sw-muted);flex:0 0 auto;max-width:40%}.pdv2-alweb{display:flex;flex-direction:column;gap:7px}.pdv2-alweb .note-input{width:100%}.pdv2-alweb .btn{align-self:flex-end;height:30px;padding:0 14px;font-size:12px}.pdv2-meta{display:flex;flex-direction:column;gap:3px}.pdv2-metarow{display:flex;justify-content:space-between;gap:12px;font-size:12.5px}.pdv2-metarow .ml{color:var(--sw-muted)}.pdv2-metarow .mv{color:var(--sw-text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pdv2-hist{display:flex;flex-direction:column;gap:4px}.pdv2-histrow{display:flex;gap:10px;font-size:12px}.pdv2-histrow .ts{color:var(--sw-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.pdv2-histrow .who{color:var(--sw-text)}.pdv2-histrow .who b{font-weight:600}.pdv2-histrow .who{min-width:0}.pdv2-histtext{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin-top:2px;color:var(--sw-muted);font-size:11.5px;line-height:1.45;cursor:pointer;overflow-wrap:anywhere}.pdv2-histtext.open{-webkit-line-clamp:unset}.pdv2-histtext:hover{color:var(--sw-text)}.pdv2-histmore{align-self:flex-start;font-size:11.5px;margin-top:2px}.pdv2-swatches{display:flex;gap:8px}.pdv2-swatch{width:24px;height:24px;border-radius:7px;border:2px solid transparent;cursor:pointer}.pdv2-swatch:focus-visible{outline:2px solid var(--sw-primary);outline-offset:1px}.pdv2-swatch.on{border-color:var(--sw-text);box-shadow:0 0 0 2px var(--sw-surface),0 0 0 4px color-mix(in srgb,var(--sw-primary) 40%,transparent)}.pdv2-ta{width:100%}.pdv2-save{display:flex;justify-content:flex-end;gap:8px;align-items:center}.pdv2-save .btn{height:30px;padding:0 14px;font-size:12px}.pdv2-save-del{margin-top:8px}@media (max-width:640px){.pdv2-body.has-sel{grid-template-columns:1fr}.pdv2-details{position:fixed;inset:0;top:0;left:0;width:100vw;height:100dvh;z-index:200;border-radius:0;border:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:16px 16px max(40px,env(safe-area-inset-bottom))}.pdv2-sk-grid{grid-template-columns:repeat(2,1fr)}.pdv2-filters{gap:6px}}.m-scrim,.m-tabbar{display:none}@media (max-width:640px){.shell{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr);min-height:100dvh}.rail{display:none}main{padding:14px 14px calc(64px + env(safe-area-inset-bottom))}.m-tabbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:90;background:var(--sw-bg);border-top:1px solid var(--sw-border);padding-bottom:env(safe-area-inset-bottom)}.m-tab{flex:1 1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;height:56px;padding:6px 2px;background:none;border:0;cursor:pointer;text-decoration:none;color:var(--sw-muted);font:inherit}.m-tab span{font-size:10.5px;line-height:1;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.m-tab.on{color:var(--sw-primary)}.m-tab:focus-visible{outline:2px solid var(--sw-primary);outline-offset:-2px}.m-scrim{display:block;position:fixed;inset:0;z-index:150;background:color-mix(in srgb,#000 46%,transparent);animation:m-fade var(--sw-t-fast) var(--sw-ease)}.m-sheet{position:fixed;left:0;right:0;bottom:0;z-index:151;max-height:80dvh;overflow-y:auto;-webkit-overflow-scrolling:touch;background:var(--sw-surface);border-top-left-radius:16px;border-top-right-radius:16px;border-top:1px solid var(--sw-border);padding:8px 12px calc(14px + env(safe-area-inset-bottom));animation:m-slide-up var(--sw-t-fast) var(--sw-ease)}.m-sheet:focus{outline:none}.m-sheet-grab{width:40px;height:4px;border-radius:999px;background:var(--sw-border);margin:4px auto 10px}.m-sheet .rail-cats{display:flex;flex-direction:column;margin-bottom:4px}.m-sheet .cat-nav-row{position:relative}.m-sheet-links{display:flex;flex-direction:column;border-top:1px solid var(--sw-border);padding-top:6px}.m-sheet .nav{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:12px 10px;border-radius:8px;font:inherit;font-size:14px;color:var(--sw-text);text-decoration:none;background:none;border:0;cursor:pointer}.m-sheet .nav.cat{justify-content:space-between}.m-sheet .nav.on{background:var(--sw-surface-2);color:var(--sw-primary)}.m-sheet .nav.logout{color:var(--sw-danger)}.m-sheet .rail-group{padding:10px 10px 4px}.m-sheet .cat-create-mini{margin-top:6px}.m-sheet-who{display:flex;align-items:center;gap:6px;padding:10px;font-size:12px;color:var(--sw-muted)}.m-sheet-who .who-mail{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;min-width:0}.m-sheet-who--head{padding:2px 10px 10px;margin-bottom:6px;border-bottom:1px solid var(--sw-border);font-size:12.5px}.m-sheet-sep{height:1px;background:var(--sw-border);margin:6px 0}.m-sheet .cat-name{flex:1 1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.m-sheet .nav .count{color:var(--sw-muted);font-size:12px}.toast{bottom:calc(64px + env(safe-area-inset-bottom))}}@keyframes m-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes m-fade{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.m-scrim,.m-sheet{animation:none}}.ro-banner{display:flex;align-items:center;gap:12px;justify-content:space-between;margin:0 0 16px;padding:9px 14px;font-size:13px;line-height:1.5;color:var(--hl-yellow);background:color-mix(in srgb,var(--hl-yellow) 10%,transparent);border:1px solid color-mix(in srgb,var(--hl-yellow) 30%,transparent);border-radius:10px}.ro-banner__cta{flex:none;font-weight:600;white-space:nowrap;color:var(--sw-primary);text-decoration:none}.ro-banner__cta:hover{text-decoration:underline}@media (max-width:480px){.ro-banner{flex-direction:column;align-items:flex-start;gap:6px}}.settings-wrap{display:flex;align-items:flex-start;gap:22px}.settings-nav{flex:none;width:210px;display:flex;flex-direction:column;gap:2px;position:-webkit-sticky;position:sticky;top:16px}.settings-tab{display:flex;align-items:center;gap:9px;padding:8px 11px;border:0;border-radius:8px;background:none;font:inherit;font-size:13.5px;color:var(--sw-muted);cursor:pointer;text-align:left;white-space:nowrap}.settings-tab:hover{background:color-mix(in srgb,var(--sw-text) 5%,transparent);color:var(--sw-text)}.settings-tab.on{background:color-mix(in srgb,var(--sw-primary) 11%,transparent);color:var(--sw-primary);font-weight:600}.settings-body{flex:1 1;min-width:0}@media (max-width:640px){.settings-wrap{flex-direction:column;gap:12px}.settings-nav{position:static;width:100%;flex-direction:row;gap:6px;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}.settings-tab{flex:none;font-size:13px;padding:7px 10px}.settings-body{width:100%}}.billing-plan{display:flex;align-items:center;gap:12px}.billing-plan__ic{flex:none;width:38px;height:38px;display:grid;place-items:center;border-radius:10px;color:var(--sw-primary);background:color-mix(in srgb,var(--sw-primary) 11%,transparent)}.billing-plan__info{min-width:0}.billing-inv-row{display:grid;grid-template-columns:1fr 1fr 1fr auto;grid-gap:8px;gap:8px;padding:7px 0;font-size:13px;align-items:center;border-top:1px solid var(--sw-border)}.billing-inv-row--head{border-top:0;color:var(--sw-muted);font-size:12px}.card--danger{border-color:color-mix(in srgb,var(--sw-danger) 35%,var(--sw-border))}.delacct-confirm .input{flex:1 1;min-width:200px;padding:7px 10px;font:inherit;font-size:13px;color:var(--sw-text);background:var(--sw-bg);border:1px solid var(--sw-border);border-radius:8px}.delacct-confirm .input:focus-visible{outline:none;border-color:color-mix(in srgb,var(--sw-danger) 50%,var(--sw-border))}.billing-inv-view{border:0;background:none;padding:0;font:inherit;font-size:13px;color:var(--sw-primary);cursor:pointer}.billing-inv-view:hover{text-decoration:underline}.prolock{position:relative;display:inline-flex;align-items:center;gap:6px;cursor:pointer}.prolock-inner{display:inline-flex;opacity:.45;pointer-events:none}.prolock-badge{flex:none;font-size:9px;font-weight:700;letter-spacing:.06em;padding:2px 5px;border-radius:5px;line-height:1;color:var(--sw-primary);background:color-mix(in srgb,var(--sw-primary) 14%,transparent);border:1px solid color-mix(in srgb,var(--sw-primary) 35%,transparent)}.prolock:hover .prolock-inner{opacity:.6}.menu-badge{margin-left:auto;display:inline-flex;align-items:center;gap:5px;font-size:10.5px;font-weight:600;line-height:1;padding:3px 7px;border-radius:999px}.menu-badge.on{color:var(--sw-ok);background:color-mix(in srgb,var(--sw-ok) 12%,transparent);border:1px solid color-mix(in srgb,var(--sw-ok) 32%,transparent)}.menu-badge.on .dot{width:5px;height:5px;border-radius:50%;background:var(--sw-ok)}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:14px;gap:14px;align-items:stretch;margin-top:18px}.price-card{position:relative;display:flex;flex-direction:column;gap:10px;padding:20px 18px;border-radius:14px;text-align:left;background:var(--sw-surface);border:1px solid var(--sw-border)}.price-card.featured{border-color:color-mix(in srgb,var(--sw-primary) 55%,var(--sw-border));box-shadow:0 10px 30px color-mix(in srgb,var(--sw-primary) 14%,transparent)}.price-ribbon{position:absolute;top:-10px;right:14px;font-size:10.5px;font-weight:700;letter-spacing:.03em;padding:3px 9px;border-radius:999px;color:#fff;background:var(--sw-primary)}.price-was{font-size:15px;font-weight:600;color:var(--sw-muted);margin-left:8px;text-decoration-thickness:2px}.price-name{font-weight:700;font-size:14px}.price-amount{font-size:28px;font-weight:800;letter-spacing:-.02em}.price-amount small{font-size:13px;font-weight:500;color:var(--sw-muted)}.price-perks{list-style:none;margin:0;padding:0;display:grid;grid-gap:7px;gap:7px;flex:1 1}.price-perks li{font-size:13px;color:var(--sw-muted);padding-left:20px;position:relative}.price-perks li:before{content:"";position:absolute;left:2px;top:5px;width:10px;height:6px;border-left:2px solid var(--sw-ok);border-bottom:2px solid var(--sw-ok);transform:rotate(-45deg)}.price-card .btn{justify-content:center}@media (max-width:720px){.price-grid{grid-template-columns:1fr}}.trial-modal{width:min(420px,calc(100% - 32px));background:var(--sw-bg);border:1px solid var(--sw-border);border-radius:16px;padding:28px 26px;text-align:center;box-shadow:var(--sw-shadow-card)}.trial-modal h2{margin:0 0 10px;font-size:19px;letter-spacing:-.01em}.trial-modal .sub{margin:0 0 18px;line-height:1.6}.trial-modal .btn{min-width:120px;justify-content:center}.plan-scrim{position:fixed;inset:0;z-index:300;overflow-y:auto;background:color-mix(in srgb,var(--sw-bg) 78%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:grid;place-items:center;padding:20px}.plan-modal{width:min(880px,100%);background:var(--sw-bg);border:1px solid var(--sw-border);border-radius:16px;padding:28px 26px;text-align:center;box-shadow:0 24px 70px rgba(0,0,0,.4)}.plan-modal h1{margin:0 0 6px;font-size:22px}.plan-modal>.sub{max-width:60ch;margin:0 auto}.plan-modal .price-grid{text-align:left}.plan-skip{margin-top:16px;border:0;background:none;font:inherit;font-size:13px;color:var(--sw-muted);cursor:pointer}.plan-skip:hover{color:var(--sw-text);text-decoration:underline}.share-row.suspended .device-ic,.share-row.suspended .device-info{opacity:.55}.share-suspended-badge{display:inline-flex;align-items:center;margin-left:6px;font-size:10px;font-weight:700;letter-spacing:.04em;line-height:1;padding:3px 7px;border-radius:999px;color:var(--hl-yellow);background:color-mix(in srgb,var(--hl-yellow) 12%,transparent);border:1px solid color-mix(in srgb,var(--hl-yellow) 32%,transparent)}.ld-about{max-width:68ch;margin:0 auto;text-align:center;font-size:13.5px;line-height:1.75;color:var(--sw-muted)}.ld-about b{color:var(--sw-text);font-weight:700}.ld-about a{color:var(--sw-muted);text-decoration:underline;text-underline-offset:2px}.ld-about a:hover{color:var(--sw-primary)}.ld-faq{display:grid;grid-gap:10px;gap:10px;margin-top:22px}.ld-faq-item{background:var(--sw-surface);border:1px solid var(--sw-border);border-radius:12px;padding:0 18px}.ld-faq-item summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:10px;font-weight:600;font-size:14.5px;padding:15px 0}.ld-faq-item summary::-webkit-details-marker{display:none}.ld-faq-item summary:after{content:"";margin-left:auto;flex:none;width:8px;height:8px;border-right:2px solid var(--sw-muted);border-bottom:2px solid var(--sw-muted);transform:rotate(45deg);transition:transform .18s ease}.ld-faq-item[open] summary:after{transform:rotate(-135deg)}.ld-faq-item>p{margin:0;padding:0 0 16px;font-size:13.5px;line-height:1.7;color:var(--sw-muted)}.pv-updated{font-size:12px;color:var(--sw-muted);font-style:italic}.login-hint{line-height:1.6;color:var(--sw-muted)}.login-devcode,.login-hint{margin:0 0 12px;font-size:12.5px}.login-devcode{padding:8px 10px;border-radius:8px;color:var(--hl-yellow);background:color-mix(in srgb,var(--hl-yellow) 10%,transparent);border:1px solid color-mix(in srgb,var(--hl-yellow) 30%,transparent)}.login-code-inp{font-size:22px;font-weight:700;letter-spacing:.34em;text-align:center;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.connect-card .code-label{margin-bottom:6px;font-size:12.5px}.connect-card .ok-msg{display:inline-flex;align-items:center;gap:7px}.emailchange{padding:10px 0 4px;border-top:1px solid var(--sw-border);margin-top:6px}.emailchange .input{flex:1 1;min-width:200px;padding:7px 10px;font:inherit;font-size:13px;color:var(--sw-text);background:var(--sw-bg);border:1px solid var(--sw-border);border-radius:8px}.emailchange .login-code-inp{flex:none;width:140px}.emailchange-err{color:var(--sw-danger);margin:8px 0 0}.srv-down{min-height:70vh;display:grid;place-items:center;padding:24px}.srv-down__card{max-width:440px;text-align:center;padding:36px 32px}.srv-down__icon{display:inline-flex;width:54px;height:54px;align-items:center;justify-content:center;border-radius:16px;background:color-mix(in srgb,var(--sw-danger,#e5534b) 14%,transparent);color:var(--sw-danger,#e5534b);margin-bottom:14px}.srv-down__icon--calm{background:color-mix(in srgb,var(--sw-primary) 14%,transparent);color:var(--sw-primary)}.srv-down__card h1{font-size:19px;margin:0 0 10px}.srv-down__card p{font-size:14px;color:var(--sw-muted);line-height:1.65;margin:0 0 8px}.srv-down__sub{font-size:12.5px}.srv-down__actions{display:flex;gap:10px;justify-content:center;margin-top:16px}.srv-down__card .btn{display:inline-flex;align-items:center;gap:7px}.cl-wrap{width:100%;max-width:720px;margin:0 auto;padding:48px 32px 16px}.cl-wrap h1{font-size:30px;font-weight:800;letter-spacing:-.02em;margin:0 0 8px}.cl-lede{color:var(--sw-muted);font-size:14px;margin:0 0 18px}.cl-jump{display:inline-flex;align-items:center;gap:6px;border:1px solid color-mix(in srgb,var(--sw-primary) 45%,transparent);color:var(--sw-primary);border-radius:999px;padding:6px 14px;font-size:12.5px;margin-bottom:26px;transition:background var(--sw-t-fast) var(--sw-ease)}.cl-jump:hover{background:color-mix(in srgb,var(--sw-primary) 10%,transparent)}.cl-entry{border:1px solid var(--sw-border);background:var(--sw-surface);border-radius:12px;padding:20px 22px;margin-bottom:16px;scroll-margin-top:80px}.cl-entry header{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}.cl-entry time{font-size:12.5px;color:var(--sw-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cl-ver{font-size:11px;color:var(--sw-muted);border:1px solid var(--sw-border);border-radius:5px;padding:2px 8px}.cl-latest{margin-left:auto;display:inline-flex;align-items:center;gap:6px;font-size:11.5px;color:var(--sw-primary)}.cl-latest i{width:6px;height:6px;border-radius:50%;background:var(--sw-primary)}.cl-sum{font-size:15px;font-weight:600;line-height:1.5;margin:0 0 14px}.cl-items{display:grid;grid-gap:2px;gap:2px}.cl-item{display:grid;grid-template-columns:88px 1fr;grid-gap:12px;gap:12px;align-items:start;padding:5px 0}.cl-item p{margin:0;font-size:13.5px;line-height:1.6}.cl-tag{font-size:10.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;border-radius:5px;padding:3px 0;text-align:center;background:var(--sw-surface2);color:var(--sw-muted)}.cl-tag.new{background:color-mix(in srgb,var(--sw-primary) 18%,transparent);color:var(--sw-primary)}.cl-soon{border-top:1px solid var(--sw-border);margin-top:30px;padding:22px 0 10px;scroll-margin-top:80px}.cl-soon h2{font-size:15px;font-weight:700;margin:0 0 8px}.cl-soon p{margin:0 0 4px;color:var(--sw-muted);font-size:13.5px}.cl-soon p+p{margin-bottom:14px}.cl-soon .btn{display:inline-flex;align-items:center;gap:7px}.cl-soon .btn.pri{color:#fff}@media (max-width:560px){.cl-wrap{padding:32px 18px 12px}.cl-wrap h1{font-size:24px}.cl-entry{padding:16px}.cl-sum{font-size:14px}.cl-item{grid-template-columns:1fr;gap:5px;padding:7px 0}.cl-tag{justify-self:start;padding:3px 9px}.cl-latest{margin-left:0}}.g-wrap{display:grid;grid-template-columns:224px minmax(0,1fr);width:100%;grid-gap:34px;gap:34px;max-width:1144px;margin:0 auto;padding:30px 32px 24px;align-items:start}.g-main{max-width:760px;padding-bottom:8px}.g-toc{position:-webkit-sticky;position:sticky;top:78px;max-height:calc(100vh - 100px);display:flex;flex-direction:column;padding-bottom:12px}.g-toc .g-search{flex:none}.g-toc__scroll{flex:1 1;min-height:0;overflow-y:auto;padding-right:6px;scrollbar-width:thin;scrollbar-color:var(--sw-border) transparent}.g-toc__scroll::-webkit-scrollbar{width:8px}.g-toc__scroll::-webkit-scrollbar-track{background:transparent}.g-toc__scroll::-webkit-scrollbar-thumb{background:var(--sw-border);border-radius:999px;border:2px solid transparent;background-clip:content-box}.g-toc__scroll::-webkit-scrollbar-thumb:hover{background:var(--sw-muted);background-clip:content-box}.g-toc__scroll::-webkit-scrollbar-button{display:none}.g-toc__grp{margin-bottom:16px}.g-toc__grp h2{font-size:10.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--sw-muted);opacity:.6;margin:0 0 5px;padding-left:9px}.g-toc__grp a{display:block;color:color-mix(in srgb,var(--sw-text) 82%,var(--sw-muted));font-size:12.5px;line-height:1.45;padding:5px 9px;border-radius:7px}.g-toc__grp a:hover{background:var(--sw-surface);color:var(--sw-text)}.g-toc__grp a.on{background:color-mix(in srgb,var(--sw-primary) 14%,transparent);color:var(--sw-primary);font-weight:600;box-shadow:inset 2px 0 0 var(--sw-primary)}.g-toc__grp a.on:hover{background:color-mix(in srgb,var(--sw-primary) 20%,transparent);color:var(--sw-primary)}.g-search{display:flex;align-items:center;gap:8px;background:var(--sw-surface2);border:1px solid var(--sw-border);border-radius:9px;padding:7px 11px;margin-bottom:18px;color:var(--sw-muted)}.g-search input{flex:1 1;min-width:0;background:none;border:0;outline:none;color:var(--sw-text);font:inherit;font-size:12.5px}.g-search input::placeholder{color:var(--sw-muted)}.g-search button{background:none;border:0;padding:0;cursor:pointer;color:var(--sw-muted);display:flex}.g-hits{display:grid;grid-gap:2px;gap:2px}.g-hits a{display:block;color:var(--sw-text);font-size:12.5px;padding:7px 9px;border-radius:7px}.g-hits a:hover{background:var(--sw-surface)}.g-hits__none{color:var(--sw-muted);font-size:12.5px;padding:4px 9px;margin:0}.g-h1{font-size:26px;font-weight:800;letter-spacing:-.02em;margin:0 0 8px}.g-intro{color:var(--sw-muted);font-size:14px;line-height:1.7;margin:0 0 26px}.g-h2{font-size:13.5px;font-weight:700;margin:0 0 11px}.g-steps{counter-reset:gs;list-style:none;padding:0;margin:0 0 24px;display:grid;grid-gap:10px;gap:10px}.g-steps li{counter-increment:gs;position:relative;padding-left:30px;font-size:13.5px;line-height:1.65}.g-steps li:before{content:counter(gs);position:absolute;left:0;top:1px;width:20px;height:20px;border-radius:50%;background:var(--sw-surface2);color:var(--sw-text);font-size:11px;font-weight:700;display:grid;place-items:center;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.g-list{list-style:none;padding:0 0 0 14px;margin:0 0 24px;border-left:2px solid var(--sw-border);display:grid;grid-gap:7px;gap:7px}.g-list li{font-size:13.5px;line-height:1.65;color:var(--sw-muted)}.g-list--note{border-left-color:color-mix(in srgb,var(--sw-primary) 55%,transparent)}.g-see{display:flex;flex-wrap:wrap;gap:8px 18px;margin-bottom:26px}.g-see a{color:var(--sw-primary);font-size:13px}.g-prevnext{border-top:1px solid var(--sw-border);padding-top:16px;display:flex;justify-content:space-between;gap:16px;font-size:13px}.g-prevnext a{color:var(--sw-muted)}.g-prevnext a:hover{color:var(--sw-text)}.g-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.g-card{border:1px solid var(--sw-border);background:var(--sw-surface);border-radius:11px;padding:15px 17px}.g-card h2{display:flex;align-items:center;gap:8px;font-size:13.5px;font-weight:700;margin:0 0 9px}.g-card h2 svg{color:var(--sw-muted);flex:none}.g-card a{display:block;color:var(--sw-muted);font-size:12.5px;padding:3px 0;line-height:1.5}.g-card a:hover{color:var(--sw-text)}.g-clip{margin:0 0 24px;max-width:520px}.g-clip__frame{position:relative;border:1px solid var(--sw-border);border-radius:10px;overflow:hidden;background:var(--sw-surface2);aspect-ratio:16/9}.g-clip__frame video{width:100%;height:100%;object-fit:cover;display:block}.g-clip__btn{position:absolute;right:9px;bottom:9px;width:28px;height:28px;border-radius:50%;background:color-mix(in srgb,var(--sw-bg) 78%,transparent);border:1px solid var(--sw-border);color:var(--sw-text);display:grid;place-items:center;cursor:pointer}.g-clip figcaption{color:var(--sw-muted);font-size:12.5px;margin-top:8px}.g-mobtop{display:none}.g-mobtoc{display:flex;align-items:center;justify-content:space-between;width:100%;border:1px solid var(--sw-border);background:var(--sw-surface);border-radius:9px;padding:10px 13px;margin-bottom:20px;color:var(--sw-text);font:inherit;font-size:13px;cursor:pointer}.g-sheet{position:fixed;inset:0;z-index:60;display:flex;flex-direction:column;justify-content:flex-end}.g-sheet__scrim{position:absolute;inset:0;background:rgba(0,0,0,.5);border:0;padding:0}.g-sheet__panel{position:relative;background:var(--sw-surface);border-top:1px solid var(--sw-border);border-radius:14px 14px 0 0;max-height:78vh;display:flex;flex-direction:column;animation:m-slide-up .18s var(--sw-ease)}.g-sheet.closing .g-sheet__panel{animation:m-slide-down .16s var(--sw-ease) forwards}.g-sheet.closing .g-sheet__scrim{animation:m-fade-out .16s var(--sw-ease) forwards}@keyframes m-slide-down{to{transform:translateY(100%)}}@keyframes m-fade-out{to{opacity:0}}@media (prefers-reduced-motion:reduce){.g-sheet.closing .g-sheet__panel,.g-sheet.closing .g-sheet__scrim,.g-sheet__panel{animation:none}}.g-sheet__head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 10px;font-weight:700;font-size:14px}.g-sheet__head button{background:none;border:0;color:var(--sw-muted);cursor:pointer;display:flex}.g-sheet__body{overflow-y:auto;padding:0 12px 20px;scrollbar-width:thin;scrollbar-color:var(--sw-border) transparent}@media (max-width:900px){.g-wrap{grid-template-columns:1fr;gap:0;padding:22px 18px 20px}.g-toc{display:none}.g-mobtop{display:block}.g-clip,.g-main{max-width:100%}.g-grid{grid-template-columns:1fr}.g-h1{font-size:22px}.g-prevnext{position:-webkit-sticky;position:sticky;bottom:0;background:var(--sw-bg);margin:0 -18px;padding:12px 18px calc(12px + env(safe-area-inset-bottom))}}.acct-dot{width:6px;height:6px;border-radius:50%;background:var(--sw-primary);margin-left:6px;flex:none}.g-soon{color:var(--sw-muted);font-size:12.5px;font-style:italic;border-left:2px solid var(--sw-border);padding-left:12px;margin:0 0 24px}.connect-code{display:block;width:100%;max-width:260px;margin:4px auto 14px;background:var(--sw-surface2);border:1px solid var(--sw-border);border-radius:10px;padding:12px 14px;color:var(--sw-text);font:700 24px/1.2 ui-monospace,Consolas,monospace;letter-spacing:.24em;text-align:center;text-indent:.24em;outline:none}.connect-code:focus{border-color:var(--sw-primary)}.connect-code::placeholder{color:var(--sw-muted);font-weight:400}.connect-help{margin-top:14px;text-align:left;font-size:12.5px}.connect-help summary{cursor:pointer;color:var(--sw-primary);text-align:center;list-style:none;padding:4px 0}.connect-help summary::-webkit-details-marker{display:none}.connect-help ol{margin:10px 0 8px;padding-left:20px;color:var(--sw-muted);display:grid;grid-gap:5px;gap:5px}.connect-help p{margin:0;color:var(--sw-muted)}.connect-help a{color:var(--sw-primary)}