.sleep-q1{--sleep-q-color:#d64545}.sleep-q2{--sleep-q-color:#d68a45}.sleep-q3{--sleep-q-color:#c2a53c}.sleep-q4{--sleep-q-color:#6aa05e}.sleep-q5{--sleep-q-color:#2c7a5b}.sleep-pos{color:#2c7a5b}.sleep-neg{color:var(--danger)}.sleep-top{display:grid;grid-template-columns:minmax(0,1fr) 300px;grid-gap:20px;gap:20px;margin-bottom:20px;align-items:start}.sleep-hero{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:18px;background:var(--card-panel-bg);border:1px solid var(--line);border-radius:0;padding:22px 24px}.sleep-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(420px 140px at 12% -10%,color-mix(in srgb,#5b6bd6 14%,transparent),transparent 70%);pointer-events:none}.sleep-hero>*{position:relative}.sleep-hero-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.sleep-greeting{display:flex;align-items:center;gap:12px}.sleep-greeting-icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;color:#d6a545;background:color-mix(in srgb,#d6a545 12%,transparent)}.sleep-greeting h2{font-size:1.15rem;font-weight:700;margin:0}.sleep-greeting p{font-size:.8rem;color:var(--muted);margin:2px 0 0}.sleep-slider{margin:8px 2px 0;touch-action:none}.sleep-slider-track{position:relative;height:34px;border-radius:10px;background:color-mix(in srgb,var(--muted) 8%,transparent)}.sleep-slider-band{position:absolute;top:0;bottom:0;background:color-mix(in srgb,var(--muted) 12%,transparent);border-radius:8px}.sleep-slider-midnight{position:absolute;top:-4px;bottom:-4px;width:1px;background:color-mix(in srgb,var(--muted) 35%,transparent)}.sleep-slider-span{position:absolute;top:4px;bottom:4px;border-radius:7px;background:linear-gradient(90deg,#4a56b8,#5b6bd6 55%,#d6a545);cursor:-webkit-grab;cursor:grab;display:flex;align-items:center;justify-content:center;min-width:10px}.sleep-slider-span:active{cursor:-webkit-grabbing;cursor:grabbing}.sleep-slider-dur{font-size:.78rem;font-weight:700;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.35);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;pointer-events:none;white-space:nowrap}.sleep-slider-handle{position:absolute;top:-2px;bottom:-2px;width:14px;transform:translateX(-50%);cursor:ew-resize;display:flex;justify-content:center}.sleep-slider-handle:after{content:"";width:4px;border-radius:3px;background:var(--text);box-shadow:0 0 0 2px var(--card-panel-bg)}.sleep-slider-handle-label{position:absolute;top:-22px;display:inline-flex;align-items:center;gap:4px;font-size:.72rem;font-weight:700;color:var(--text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap;pointer-events:none}.sleep-slider-handle-bed .sleep-slider-handle-label svg{color:#5b6bd6}.sleep-slider-handle-wake .sleep-slider-handle-label svg{color:#d6a545}.sleep-slider-ticks{position:relative;height:16px;margin-top:6px}.sleep-slider-ticks span{position:absolute;transform:translateX(-50%);font-size:.66rem;font-weight:600;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sleep-form-row{display:flex;align-items:flex-end;gap:18px;flex-wrap:wrap}.sleep-time-field{display:flex;flex-direction:column;gap:5px}.sleep-time-field>label{display:inline-flex;align-items:center;gap:5px;font-size:.72rem;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.sleep-time-controls{display:flex;align-items:stretch;gap:0}.sleep-time-controls input[type=time]{padding:7px 10px;border:1px solid var(--line);border-radius:0;font:inherit;font-size:1.05rem;font-weight:600;background:var(--bg);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sleep-time-controls button{font:inherit;font-size:.7rem;font-weight:700;color:var(--muted);background:var(--bg);border:1px solid var(--line);padding:0 9px;cursor:pointer}.sleep-time-controls button:first-child{border-radius:8px 0 0 8px;border-right:none}.sleep-time-controls button:last-child{border-radius:0 8px 8px 0;border-left:none}.sleep-time-controls button:hover{color:var(--text);background:color-mix(in srgb,var(--muted) 8%,var(--bg))}.sleep-form-preview{display:flex;flex-direction:column;gap:2px;padding-bottom:4px;margin-left:auto;text-align:right}.sleep-form-preview-dur{font-size:1.4rem;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.1}.sleep-form-preview-delta{font-size:.74rem;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sleep-form-quality{display:flex;flex-direction:column;gap:7px}.sleep-form-label{font-size:.72rem;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.sleep-quality-row{display:flex;gap:8px;flex-wrap:wrap}.sleep-quality-btn{display:inline-flex;align-items:center;gap:6px;font:inherit;font-size:.78rem;font-weight:600;color:var(--muted);background:var(--bg);border:1px solid var(--line);border-radius:999px;padding:6px 12px;cursor:pointer;transition:color .12s,border-color .12s,background .12s}.sleep-quality-btn svg{color:color-mix(in srgb,var(--sleep-q-color) 65%,var(--muted))}.sleep-quality-btn:hover{color:var(--text);border-color:color-mix(in srgb,var(--sleep-q-color) 50%,var(--line))}.sleep-quality-sel{border-color:var(--sleep-q-color);background:color-mix(in srgb,var(--sleep-q-color) 10%,transparent)}.sleep-quality-sel,.sleep-quality-sel svg{color:var(--sleep-q-color)}.sleep-form-bottom{display:flex;align-items:center;gap:10px}.sleep-notes-input{flex:1 1;min-width:120px;padding:9px 12px;border:1px solid var(--line);border-radius:8px;font:inherit;font-size:.85rem;background:var(--bg)}.sleep-log-btn{white-space:nowrap}.sleep-summary{display:flex;align-items:center;gap:26px}.sleep-ring-wrap{position:relative;width:128px;height:128px;flex:none}.sleep-ring-bg{stroke:color-mix(in srgb,var(--muted) 15%,transparent)}.sleep-ring-fg{stroke:#5b6bd6}.sleep-ring-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px}.sleep-ring-dur{font-size:1.25rem;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sleep-ring-sub{font-size:.68rem;color:var(--muted);font-weight:600}.sleep-summary-facts{display:flex;flex-direction:column;gap:10px;min-width:0}.sleep-summary-title{display:flex;align-items:center;gap:12px}.sleep-summary-title h2{font-size:1.15rem;font-weight:700;margin:0}.sleep-chip{font-size:.72rem;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;border:1px solid;border-radius:999px;padding:3px 10px;white-space:nowrap}.sleep-summary-times{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:.95rem;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sleep-summary-times>span{display:inline-flex;align-items:center;gap:5px}.sleep-summary-arrow,.sleep-summary-times svg{color:var(--muted)}.sleep-summary-quality{gap:7px!important;font-size:.82rem;color:var(--muted)}.sleep-summary-note{font-size:.82rem;color:var(--muted);font-style:italic;margin:0}.sleep-summary-actions{display:flex;gap:8px;margin-top:2px}.sleep-side{display:flex;flex-direction:column;gap:20px;min-width:0}.sleep-side-card{background:var(--panel);border:1px solid var(--line);border-radius:0;padding:18px 20px}.sleep-side-head{display:flex;align-items:center;justify-content:space-between}.sleep-side-head .sleep-section-title{margin-bottom:0}.sleep-side-card .sleep-side-head{margin-bottom:12px}.sleep-sched-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.95rem;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sleep-sched-time{display:inline-flex;align-items:center;gap:5px}.sleep-sched-time svg{color:var(--muted)}.sleep-sched-target{font-size:.72rem;font-weight:700;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:2px 9px;margin-left:auto;white-space:nowrap}.sleep-schedule-form-wrap{display:flex;flex-direction:column;gap:10px}.sleep-schedule-form{display:flex;align-items:center;gap:8px}.sleep-schedule-form input[type=time]{padding:7px 9px;border:1px solid var(--line);border-radius:8px;font:inherit;font-size:.92rem;background:var(--bg);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;min-width:0}.sleep-schedule-form-actions{display:flex;align-items:center;gap:8px}.sleep-insights{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}.sleep-insights li{position:relative;padding-left:16px;font-size:.82rem;line-height:1.45}.sleep-insights li:before{content:"";position:absolute;left:0;top:.5em;width:6px;height:6px;border-radius:50%;background:#5b6bd6}.sleep-section-title{font-size:14px;font-weight:700;margin-bottom:14px}.sleep-title-count{color:var(--muted);font-weight:600}.sleep-section{background:var(--panel);border:1px solid var(--line);border-radius:0;padding:22px;margin-bottom:20px}.sleep-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:14px;gap:14px;margin-bottom:20px}.sleep-stat{display:flex;flex-direction:column;gap:2px;background:var(--panel);border:1px solid var(--line);border-radius:0;padding:14px 18px}.sleep-stat-value{font-size:1.3rem;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sleep-stat-label{font-size:.72rem;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.sleep-stat-positive{color:#2c7a5b}.sleep-stat-negative{color:var(--danger)}.sleep-stat-streak{display:inline-flex;align-items:center;gap:6px}.sleep-stat-streak svg{color:#d6772e}.sleep-chart{padding-top:8px}.sleep-chart-plot{position:relative;display:flex;align-items:flex-end;gap:6px;height:150px}.sleep-chart-target{position:absolute;left:0;right:0;border-top:1px dashed color-mix(in srgb,var(--muted) 45%,transparent);pointer-events:none}.sleep-chart-target:after{content:attr(data-label);position:absolute;right:0;top:-16px;font-size:.66rem;font-weight:600;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sleep-chart-col{flex:1 1;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-end;height:100%;min-width:0}.sleep-chart-days{display:flex;gap:6px;margin-top:5px}.sleep-chart-days span{flex:1 1;min-width:0}.sleep-chart-bar{--sleep-q-color:#5b6bd6;border-radius:5px 5px 2px 2px;background:color-mix(in srgb,var(--sleep-q-color) 78%,var(--panel));cursor:pointer;transition:filter .12s;min-height:3px}.sleep-chart-bar:hover{filter:brightness(1.12)}.sleep-chart-short{opacity:.75}.sleep-chart-empty{height:3px;border-radius:2px;background:color-mix(in srgb,var(--muted) 22%,transparent)}.sleep-chart-day{text-align:center;font-size:.64rem;font-weight:600;color:var(--muted)}.sleep-chart-today{color:var(--text);font-weight:700}.sleep-qdots{display:inline-flex;gap:3px;align-items:center}.sleep-qdots i{width:6px;height:6px;border-radius:50%;background:color-mix(in srgb,var(--muted) 25%,transparent)}.sleep-qdots i.sleep-qdot-on{background:var(--sleep-q-color)}.sleep-field-error{color:var(--danger);font-size:.8rem;margin:6px 0 0}.sleep-hero .sleep-field-error{margin:0}.sleep-date-trigger{display:inline-flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;font:inherit;font-size:.85rem;font-weight:600;background:var(--bg);color:var(--text);cursor:pointer;white-space:nowrap}.sleep-date-trigger svg{color:var(--muted)}.sleep-date-trigger:disabled{opacity:.6;cursor:default}.sleep-table{width:100%;border-collapse:collapse;font-size:.88rem}.sleep-table th{text-align:left;padding:8px 10px;font-size:.75rem;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.sleep-table td,.sleep-table th{border-bottom:1px solid var(--line)}.sleep-table td{padding:10px}.sleep-table tbody tr{cursor:pointer}.sleep-table tbody tr:hover td{background:color-mix(in srgb,var(--muted) 6%,transparent)}.sleep-table-date{font-weight:600;white-space:nowrap}.sleep-table-dur,.sleep-table-time{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.sleep-table tr:last-child td{border-bottom:none}.sleep-row-editing td{background:color-mix(in srgb,var(--accent) 8%,transparent)}.sleep-table-quality{white-space:nowrap}.sleep-table-note-cell{width:28px}.sleep-note-dot{display:inline-flex;color:var(--muted);cursor:help}.sleep-table-actions{display:flex;gap:4px}.sleep-col-bar{width:99%;min-width:220px;position:relative}.sleep-axis{position:relative;height:14px}.sleep-axis-tick{position:absolute;top:0;transform:translateX(-50%);font-size:.68rem;font-weight:600;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:0}.sleep-bar-track{position:relative;height:14px}.sleep-bar-band{position:absolute;top:0;bottom:0;background:color-mix(in srgb,var(--muted) 13%,transparent);border-radius:4px}.sleep-bar-midnight{position:absolute;top:-3px;bottom:-3px;width:1px;background:color-mix(in srgb,var(--muted) 35%,transparent)}.sleep-bar{position:absolute;top:2px;bottom:2px;background:linear-gradient(90deg,#4a56b8,#5b6bd6 60%,#7a87e0);border-radius:4px}@media (max-width:980px){.sleep-top{grid-template-columns:1fr}}@media (max-width:760px){.sleep-col-bar{display:none}.sleep-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.sleep-summary{flex-direction:column;align-items:flex-start;gap:16px}.sleep-hero{padding:18px;gap:16px}.sleep-form-preview{margin-left:0;text-align:left}.sleep-slider-ticks span:nth-child(2n){display:none}.sleep-chart-plot{height:120px;gap:4px}.sleep-chart-days{gap:4px}.sleep-form-bottom{flex-wrap:wrap}.sleep-form-bottom .sleep-notes-input{flex:1 1 100%}.sleep-form-bottom .sleep-log-btn{flex:1 1}.sleep-section{padding:16px}.sleep-history{overflow-x:auto}.sleep-table td,.sleep-table th{padding:8px 6px}.sleep-table{font-size:.82rem}.sleep-table td:nth-child(7),.sleep-table th:nth-child(7){display:none}}@media (max-width:480px){.sleep-table td:nth-child(2),.sleep-table td:nth-child(3),.sleep-table th:nth-child(2),.sleep-table th:nth-child(3){display:none}}.billing-page{gap:16px}.billing-banner,.billing-page{display:flex;flex-direction:column}.billing-banner{border-radius:16px;padding:14px 18px;gap:4px;border:1px solid var(--line);box-shadow:var(--shadow)}.billing-banner strong{font-size:.95rem}.billing-banner-success{background:color-mix(in srgb,var(--accent) 12%,transparent);border-color:color-mix(in srgb,var(--accent) 35%,var(--line))}.billing-banner-warning{background:color-mix(in srgb,#f59e0b 14%,transparent);border-color:color-mix(in srgb,#f59e0b 35%,var(--line))}.billing-status-card{display:flex;flex-direction:column;gap:12px}.billing-status-body{margin-top:6px}.billing-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:16px 24px;gap:16px 24px;margin:0;padding:0}.billing-meta>div{display:flex;flex-direction:column;gap:4px}.billing-meta dt{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600}.billing-meta dd{margin:0;font-size:1rem;font-weight:500}.billing-status-pill{text-transform:capitalize}.billing-status-pill[data-status=active],.billing-status-pill[data-status=trialing]{background:color-mix(in srgb,var(--accent) 18%,transparent);color:color-mix(in srgb,var(--accent) 80%,var(--text))}.billing-status-pill[data-status=past_due],.billing-status-pill[data-status=unpaid]{background:color-mix(in srgb,#f59e0b 18%,transparent);color:color-mix(in srgb,#f59e0b 80%,var(--text))}.billing-status-pill[data-status=canceled],.billing-status-pill[data-status=incomplete],.billing-status-pill[data-status=incomplete_expired]{background:color-mix(in srgb,#ef4444 16%,transparent);color:color-mix(in srgb,#ef4444 80%,var(--text))}.billing-plans-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:16px;gap:16px}.billing-plan-card{display:flex;flex-direction:column;gap:10px;transition:border-color .12s ease,transform .12s ease}.billing-plan-card-current{border-color:color-mix(in srgb,var(--accent) 50%,var(--line));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 25%,transparent),var(--shadow)}.billing-plan-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.billing-plan-header h3{margin:0;font-size:1.1rem}.billing-plan-action{margin-top:auto;display:flex;align-items:center;justify-content:flex-end;gap:8px}.billing-plan-disabled-note{font-size:.78rem}.billing-help-list{display:flex;flex-direction:column;gap:6px;margin:8px 0 0;padding-left:18px}.billing-help-list li{line-height:1.5}.billing-help-list code{background:var(--panel-muted,rgba(127,127,127,.12));padding:1px 6px;border-radius:6px;font-size:.85em}.sites-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));grid-gap:14px;gap:14px;padding:4px 0 18px}.site-card-clickable{cursor:pointer}.site-card-clickable:hover{border-color:var(--line-strong,rgba(255,255,255,.22))}.site-card{border:1px solid var(--line);border-radius:16px;background:var(--card-panel-bg);padding:16px;display:flex;flex-direction:column;gap:12px;position:relative}.site-card:before{content:"";position:absolute;top:0;left:16px;right:16px;height:3px;background:var(--proj-color,#6b7280);border-radius:0 0 4px 4px}.site-card-head{display:flex;align-items:flex-start;gap:12px}.site-card-dot{width:38px;height:38px;border-radius:9px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#fff}.site-card-info{flex:1 1 auto;min-width:0;display:flex;flex-direction:column}.site-card-name{margin:0;font-size:1.04rem;font-weight:600;color:var(--text);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.site-card-name:hover{color:var(--accent,#3b82f6)}.site-card-url{font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;text-decoration:none;color:var(--muted)}.site-card-url:hover{color:var(--text)}.site-card-stats{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px}.site-stat{display:flex;flex-direction:column;align-items:center;padding:8px 4px;border-radius:10px;background:rgba(0,0,0,.04)}[data-theme=dark] .site-stat{background:rgba(255,255,255,.04)}.site-stat-value{font-weight:600;font-size:1.05rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.site-stat-label{font-size:.7rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-top:2px}.site-stat-delta{font-size:.68rem;margin-top:2px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.site-stat-delta.is-up{color:#16a34a}.site-stat-delta.is-down{color:#dc2626}.site-card-foot{font-size:.74rem;display:flex;align-items:baseline;justify-content:space-between;gap:10px}.site-card-blog-link{font-size:.78rem;margin-left:auto}.sites-not-configured{font-size:.78rem}.sites-error{color:#dc2626;font-size:.84rem;margin:6px 0 0}.sites-script-box{width:100%;box-sizing:border-box;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.76rem;border:1px solid var(--line);border-radius:10px;background:rgba(0,0,0,.04);color:var(--text);padding:8px 10px;resize:none;margin-bottom:10px}[data-theme=dark] .sites-script-box{background:rgba(255,255,255,.05)}.sites-connected{display:flex;flex-direction:column;align-items:flex-start}.sites-empty{grid-column:1/-1;text-align:center;padding:60px 20px}.sites-empty-emoji{font-size:3rem;margin-bottom:8px}.sites-empty h3{margin:0 0 6px}.sites-empty p{margin:0 0 16px}.sblog{max-width:860px;display:flex;flex-direction:column;gap:22px;padding-bottom:24px}.sblog-title,.sblog-title-row{display:flex;align-items:baseline;gap:12px}.sblog-title{margin:0;font-size:1.15rem;font-weight:600}.sblog-domain{font-size:.84rem;font-weight:400;text-decoration:none}.sblog-domain:hover{text-decoration:underline}.sblog-section{display:flex;flex-direction:column;gap:10px}.sblog-section-head{display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--line);padding-bottom:6px}.sblog-section-head h3{margin:0;font-size:.92rem;font-weight:600}.sblog-live-dot{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--color-success,#34d399)}.sblog-linkbtn{background:none;border:none;padding:0;font:inherit;cursor:pointer}.sblog-list{display:flex;flex-direction:column}.sblog-row{display:flex;align-items:center;gap:10px;padding:8px 6px;border-bottom:1px solid var(--line-soft,var(--line));text-align:left}.sblog-row-btn{background:none;border:0;border-bottom:1px solid var(--line-soft,var(--line));color:inherit;font:inherit;cursor:pointer}.sblog-row-btn:hover{background:var(--hover-bg,rgba(255,255,255,.04))}.sblog-row-title{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem}.sblog-row-meta{display:flex;align-items:center;gap:4px}.sblog-row-meta,.sblog-row-open{flex-shrink:0;font-size:.78rem}.sblog-state{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;padding:1px 6px;border-radius:2px;border:1px solid var(--line);color:var(--muted)}.sblog-state[data-state=published]{color:var(--color-success,#34d399);border-color:color-mix(in srgb,var(--color-success,#34d399) 40%,transparent)}.sblog-state[data-state=deleted],.sblog-state[data-state=error]{color:var(--color-danger,#e53e3e);border-color:color-mix(in srgb,var(--color-danger,#e53e3e) 40%,transparent)}.sblog-state[data-state=published_unlinked]{color:var(--color-warning,#d9a441);border-color:color-mix(in srgb,var(--color-warning,#d9a441) 40%,transparent)}.sblog-warn{margin:0;font-size:.85rem;color:var(--color-warning,#d9a441)}.sblog-footnote{font-size:.78rem;margin:4px 0 0}.sblog-cred{display:flex;flex-direction:column;gap:8px}.sblog-cred-row{display:flex;align-items:baseline;gap:12px;font-size:.86rem}.sblog-cred-mask{font-family:var(--font-mono,ui-monospace,monospace);letter-spacing:.08em}.sblog-cred-prev{opacity:.65}.sblog-cred-actions{display:flex;gap:8px;margin-top:4px;flex-wrap:wrap}.sblog-form{display:flex;flex-direction:column;gap:10px;max-width:480px}.sblog-danger span{color:var(--color-danger,#e53e3e)}.sblog-verify{font-size:.85rem;border-left:2px solid var(--line);padding:4px 10px;margin-top:6px}.sblog-verify p{margin:2px 0}.sblog-verify.ok{border-left-color:var(--color-success,#34d399)}.sblog-verify.bad{border-left-color:var(--color-danger,#e53e3e)}.sblog-audit{display:flex;flex-direction:column;font-size:.8rem}.sblog-audit-row{display:flex;align-items:baseline;gap:10px;padding:5px 6px;border-bottom:1px solid var(--line-soft,var(--line))}.sblog-audit-result{flex-shrink:0;width:34px;text-transform:uppercase;font-size:.68rem;letter-spacing:.05em}.sblog-audit-result.ok{color:var(--color-success,#34d399)}.sblog-audit-result.bad{color:var(--color-danger,#e53e3e)}.sblog-audit-action{flex-shrink:0;width:110px}.sblog-audit-detail{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sblog-audit-when{flex-shrink:0}.settings-popup-card.sblog-editor{max-width:760px;width:min(760px,calc(100vw - 32px))}.sblog-editor-headline{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.sblog-editor-title{background:none;border:0;outline:none;color:inherit;font-size:1.15rem;font-weight:600;padding:2px 0;width:100%}.sblog-editor-title::placeholder{color:var(--muted)}.sblog-editor-body{display:flex;flex-direction:column;gap:14px}.sblog-editor-textarea{width:100%;min-height:260px;resize:vertical;background:var(--input-bg,rgba(255,255,255,.03));border:1px solid var(--line);border-radius:2px;color:inherit;font-family:var(--font-mono,ui-monospace,monospace);font-size:.86rem;line-height:1.55;padding:10px 12px}.sblog-editor-textarea:focus{outline:none;border-color:var(--line-strong,rgba(255,255,255,.22))}.sstats-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));grid-gap:10px;gap:10px;margin-bottom:14px}.sstats-tile{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;border:1px solid var(--line);border-radius:2px;background:var(--input-bg,rgba(255,255,255,.03))}.sstats-tile-value{font-weight:600;font-size:1.25rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sstats-tile-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-soft,inherit);opacity:.7}.sstats-chartbox{border:1px solid var(--line);border-radius:2px;background:var(--input-bg,rgba(255,255,255,.03));padding:12px 12px 6px}.sstats-chart{display:flex;align-items:stretch;gap:3px;height:140px}.sstats-bar-slot{flex:1 1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:4px}.sstats-bar-stack{position:relative;flex:1 1 auto;width:100%;max-width:36px;border-bottom:1px solid var(--line)}.sstats-bar{position:absolute;left:0;right:0;bottom:0;min-height:2px;border-radius:2px 2px 0 0;background:var(--proj-color,#6587b3);opacity:.35;transition:opacity .12s ease}.sstats-bar-visits{opacity:.95}.sstats-bar-slot:hover .sstats-bar{opacity:.55}.sstats-bar-slot:hover .sstats-bar-visits{opacity:1}.sstats-bar-label{height:13px;font-size:.62rem;line-height:13px;color:var(--text-soft,inherit);opacity:.6;white-space:nowrap;overflow:hidden}.sstats-legend{display:flex;gap:14px;padding:4px 2px 2px;font-size:.7rem}.sstats-legend span{display:inline-flex;align-items:center;gap:5px}.sstats-swatch{width:9px;height:9px;border-radius:1px;background:var(--proj-color,#6587b3);opacity:.35}.sstats-swatch-visits{opacity:.95}.sstats-breakdowns{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));grid-gap:14px;gap:14px;margin-top:14px}.sstats-breakdown{border:1px solid var(--line);border-radius:2px;background:var(--input-bg,rgba(255,255,255,.03));padding:10px 12px}.sstats-breakdown-title{margin:0 0 8px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-soft,inherit);opacity:.7}.sstats-breakdown-empty{margin:0;font-size:.85rem}.sstats-breakdown-row{position:relative;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:3px 6px;margin:2px 0;border-radius:1px;overflow:hidden;font-size:.82rem}.sstats-breakdown-fill{position:absolute;inset:0 auto 0 0;background:var(--proj-color,#6587b3);opacity:.16;border-radius:1px}.sstats-breakdown-label{position:relative;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sstats-breakdown-count{position:relative;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--text-soft,inherit)}.sblog-title-link{color:inherit;text-decoration:none}.sblog-title-link:hover{text-decoration:underline;text-underline-offset:3px}.sblog-md{display:flex;flex-direction:column;gap:6px}.sblog-md-bar{justify-content:space-between;gap:10px}.sblog-md-bar,.sblog-md-tools{display:flex;align-items:center;flex-wrap:wrap}.sblog-md-tools{gap:2px}.sblog-md-btn{min-width:28px;height:26px;padding:0 7px;border:1px solid transparent;border-radius:2px;background:none;color:var(--text-soft,inherit);font-size:.78rem;line-height:1;cursor:pointer;transition:background .12s ease,border-color .12s ease}.sblog-md-btn:hover:not(:disabled){background:var(--input-bg,rgba(255,255,255,.05));border-color:var(--line)}.sblog-md-btn:disabled{opacity:.4;cursor:default}.sblog-md-btn code{font-size:.72rem}.sblog-md-preview{min-height:260px;max-height:60vh;overflow-y:auto;border:1px solid var(--line);border-radius:2px;background:var(--input-bg,rgba(255,255,255,.03));padding:12px 16px;font-size:.9rem;line-height:1.65}.sblog-md-preview h3,.sblog-md-preview h4,.sblog-md-preview h5{margin:1.1em 0 .4em;line-height:1.3}.sblog-md-preview h3{font-size:1.15rem}.sblog-md-preview h4{font-size:1rem}.sblog-md-preview h5{font-size:.92rem}.sblog-md-preview p{margin:.55em 0}.sblog-md-preview ol,.sblog-md-preview ul{margin:.55em 0;padding-left:1.4em}.sblog-md-preview li{margin:.25em 0}.sblog-md-preview blockquote{margin:.7em 0;padding:2px 0 2px 12px;border-left:2px solid var(--line-strong,rgba(255,255,255,.22));color:var(--text-soft,inherit)}.sblog-md-preview pre{margin:.7em 0;padding:10px 12px;overflow-x:auto;border:1px solid var(--line);border-radius:2px;background:rgba(0,0,0,.18);font-size:.82rem}.sblog-md-preview code{font-family:var(--font-mono,ui-monospace,monospace);font-size:.85em}.sblog-md-preview img.post-figure{max-width:100%;border-radius:2px;margin:.7em 0}.sblog-md-preview hr{border:none;border-top:1px solid var(--line);margin:1em 0}.sblog-editor-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px 14px;gap:10px 14px}.sblog-span2{grid-column:span 2}.sblog-field-note{font-size:.75rem;margin-top:2px;display:inline-block}.sblog-save-error{color:var(--color-danger,#e53e3e)}.sblog-conflict{border-left:2px solid var(--color-warning,#d9a441);padding:6px 10px;display:flex;flex-direction:column;gap:8px;align-items:flex-start}.sblog-conflict p{margin:0;font-size:.85rem}.sblog-editor-footer{display:flex;justify-content:space-between;gap:10px}.sblog-editor-footer-left,.sblog-editor-footer-right{display:flex;gap:8px;flex-wrap:wrap}@media (max-width:640px){.sblog-editor-grid{grid-template-columns:1fr}.sblog-span2{grid-column:auto}}.client-card .site-card-info{min-width:0}.client-card-projects{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-status{flex-shrink:0;font-size:11px;font-weight:600;padding:3px 9px;border-radius:999px;background:var(--neutral-bg);color:var(--neutral-text);white-space:nowrap}.client-status[data-status=on_track]{background:var(--ok-bg);color:var(--ok-text)}.client-status[data-status=at_risk]{background:var(--warn-bg);color:var(--warn-text)}.client-status[data-status=delayed]{background:var(--bad-bg);color:var(--bad-text)}.client-card-stale{font-size:11px;font-weight:600;color:var(--warn-text)}.client-manage{display:flex;flex-direction:column;gap:16px;max-width:980px}.client-panel{border:none;border-radius:0;background:var(--panel);padding:18px 20px 20px;box-shadow:0 1px 2px rgba(0,0,0,.08),0 10px 28px rgba(0,0,0,.05)}.client-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}.client-panel-head h3{margin:0;font-size:14.5px;font-weight:650;letter-spacing:.2px}.client-panel-hint{font-size:12px}.client-back-link{font-size:13px;white-space:nowrap}.client-name-input{border:none;background:transparent;font:inherit;font-size:16px;font-weight:600;color:var(--text);text-align:center;padding:4px 8px;border-radius:8px;min-width:120px;max-width:360px}.client-name-input:hover{background:var(--wash-hover)}.client-name-input:focus{background:var(--wash-focus);outline:none}.client-cred-row{display:flex;gap:8px;align-items:center}.client-cred-row .projects-panel-input{flex:1 1;min-width:0}.client-cred-secret{font-family:ui-monospace,monospace;letter-spacing:.4px}.client-cred-meta{margin-top:10px;font-size:12.5px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.client-cred-meta code{font-size:12px}.client-inline-btn{background:none;border:none;padding:0;font:inherit;font-size:12.5px;cursor:pointer}.client-danger-link{color:var(--danger)}.client-danger-row{margin-top:12px}.client-attached-list{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-direction:column}.client-attached-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line)}.client-attached-row:last-child{border-bottom:none}.client-attached-info{display:flex;flex-direction:column;gap:2px;min-width:0;font-size:13.5px}.client-attached-info .muted{font-size:12px}.client-attached-title{font-weight:600}.client-attached-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.client-attachable{display:flex;flex-direction:column;gap:12px}.client-attachable-group{display:flex;flex-direction:column;gap:2px}.client-attachable-project{font-size:11.5px;text-transform:uppercase;letter-spacing:.4px;margin-bottom:2px}.client-attachable-item{display:flex;align-items:center;gap:9px;font-size:13.5px;cursor:pointer;padding:4px 8px;margin:0 -8px;border-radius:8px;transition:background .1s}.client-attachable-item:hover{background:var(--wash-hover)}.client-attachable-item input[type=checkbox],.client-toggle input[type=checkbox]{accent-color:var(--accent)}.client-toggle{display:flex;align-items:baseline;gap:8px;font-size:13.5px;cursor:pointer;margin-bottom:14px}.client-settings-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px;margin-bottom:12px}.client-currency-input{max-width:90px;flex:0 0 auto}.client-note-input{resize:vertical}.client-log-editor{display:flex;flex-direction:column;gap:10px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--line)}.client-log-editor-actions{display:flex;justify-content:flex-end;gap:8px}.client-log-list{list-style:none;margin:0;padding:0}.client-log-row{padding:10px 0;border-bottom:1px solid var(--line)}.client-log-row:last-child{border-bottom:none}.client-log-row-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.client-log-title{font-weight:600;font-size:14px}.client-log-row-head .muted{font-size:12px}.client-log-actions{margin-left:auto;display:flex;gap:10px}.client-log-preview{margin:4px 0 0;font-size:12.5px;overflow-wrap:anywhere}.client-events-scroll{overflow-x:auto}.client-events-table{width:100%;border-collapse:collapse;font-size:12.5px}.client-events-table th{text-align:left;font-weight:600;color:var(--muted);padding:4px 10px 6px 0;border-bottom:1px solid var(--line);white-space:nowrap}.client-events-table td{padding:6px 10px 6px 0;border-bottom:1px solid var(--line);vertical-align:top}.client-events-table tr:last-child td{border-bottom:none}.client-events-table tbody tr{transition:background .1s}.client-events-table tbody tr:hover{background:var(--wash-hover)}.client-event-kind[data-kind=auth_fail]{color:var(--bad-text);font-weight:600}.client-event-kind[data-kind=auth_ok]{color:var(--ok-text)}.client-event-ref,.client-event-ua{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-credentials{gap:12px}.client-credentials,.portal-page{display:flex;flex-direction:column}.portal-page{max-width:820px;margin:0 auto;padding:36px 20px 56px;min-height:100vh;gap:16px}.portal-center{justify-content:center;align-items:center}.portal-muted{color:var(--muted);font-size:13.5px;margin:0}.portal-link{color:inherit}.portal-gate{width:100%;max-width:420px;border:1px solid var(--line);border-radius:16px;background:var(--panel);padding:28px 26px;display:flex;flex-direction:column;gap:12px;box-shadow:var(--shadow)}.portal-gate-title{margin:0;font-size:22px}.portal-gate-row{display:flex;gap:8px}.portal-gate-input{flex:1 1;min-width:0;border:1px solid var(--line);border-radius:10px;background:var(--field-bg);color:var(--text);padding:9px 12px;font:inherit;font-size:14px}.portal-gate-input:focus{outline:none;border-color:var(--field-border-focus)}.portal-gate-error{color:var(--danger);font-size:13px;margin:0}.portal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:14px;border-bottom:1px solid var(--line)}.portal-title{margin:0 0 2px;font-size:26px;overflow-wrap:anywhere}.portal-head-right{display:flex;align-items:center;gap:10px;flex-shrink:0}.portal-status{font-size:12px;font-weight:600;padding:4px 12px;border-radius:999px;background:var(--neutral-bg);color:var(--neutral-text);white-space:nowrap}.portal-status[data-status=on_track]{background:var(--ok-bg);color:var(--ok-text)}.portal-status[data-status=at_risk]{background:var(--warn-bg);color:var(--warn-text)}.portal-status[data-status=delayed]{background:var(--bad-bg);color:var(--bad-text)}.portal-theme-btn{border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:999px;width:30px;height:30px;font-size:14px;line-height:1;cursor:pointer}.portal-theme-btn:hover{background:var(--wash-hover)}.portal-card{border:1px solid var(--line);border-radius:14px;background:var(--panel);padding:18px 20px}.portal-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}.portal-card-title{margin:0;font-size:17px;display:flex;align-items:center;gap:8px;overflow-wrap:anywhere}.portal-card-sub{color:var(--muted);font-weight:500}.portal-card-meta{color:var(--muted);font-size:12.5px}.portal-card-progress{color:var(--muted);font-size:13px;white-space:nowrap}.portal-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.portal-phases{display:flex;flex-direction:column;gap:12px}.portal-phase{border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:var(--card-panel-bg)}.portal-phase-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.portal-phase-title{font-weight:600;font-size:14.5px}.portal-phase-dates{color:var(--muted);font-size:12.5px}.portal-phase-status{margin-left:auto;font-size:11px;font-weight:600;padding:2px 9px;border-radius:999px;background:var(--neutral-bg);color:var(--neutral-text);white-space:nowrap}.portal-phase-status[data-status=in_progress]{background:var(--warn-bg);color:var(--warn-text)}.portal-phase-status[data-status=done]{background:var(--ok-bg);color:var(--ok-text)}.portal-phase-status[data-status=blocked],.portal-phase-status[data-status=overdue]{background:var(--bad-bg);color:var(--bad-text)}.portal-phase-desc{margin:6px 0 0;color:var(--muted);font-size:13px}.portal-progress{margin-top:10px;height:6px;border-radius:999px;background:var(--neutral-bg);overflow:hidden}.portal-progress-bar{height:100%;border-radius:999px;background:var(--accent);transition:width .25s ease}.portal-progress-label{display:inline-block;margin-top:5px;color:var(--muted);font-size:12px}.portal-milestones{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:2px}.portal-milestones-flat{margin-top:0}.portal-history-list li,.portal-milestone{display:flex;align-items:baseline;gap:8px;font-size:13.5px;padding:3px 0}.portal-milestone-mark{width:16px;height:16px;border-radius:50%;border:1px solid var(--line);flex-shrink:0;font-size:10px;line-height:15px;text-align:center;color:var(--ok-text);align-self:center}.portal-history-list .portal-milestone-mark,.portal-milestone.is-done .portal-milestone-mark{background:var(--ok-bg);border-color:transparent}.portal-milestone.is-done .portal-milestone-title{color:var(--muted);text-decoration:line-through}.portal-milestone-title{overflow-wrap:anywhere}.portal-milestone-due{margin-left:auto;color:var(--muted);font-size:12px;white-space:nowrap}.portal-history{margin-top:12px}.portal-history-toggle{background:none;border:none;padding:0;font:inherit;font-size:13px;color:var(--muted);cursor:pointer}.portal-history-toggle:hover{color:var(--text)}.portal-history-list{list-style:none;margin:6px 0 0;padding:0}.portal-switcher{display:flex;gap:2px;border:1px solid var(--line);border-radius:999px;padding:2px}.portal-switcher-option{border:none;background:none;color:var(--muted);font:inherit;font-size:12.5px;padding:3px 12px;border-radius:999px;cursor:pointer}.portal-switcher-option.active{background:var(--accent);color:var(--bg)}.portal-time-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.portal-time-row{display:flex;align-items:center;gap:12px;font-size:13px}.portal-time-label{flex:0 0 150px;color:var(--muted)}.portal-time-bar-track{flex:1 1;height:8px;border-radius:999px;background:var(--neutral-bg);overflow:hidden}.portal-time-bar{height:100%;border-radius:999px;background:var(--accent)}.portal-time-value{flex:0 0 auto;white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.portal-log-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.portal-log-entry{padding:14px 0;border-bottom:1px solid var(--line)}.portal-log-entry:first-child{padding-top:0}.portal-log-entry:last-child{border-bottom:none;padding-bottom:0}.portal-log-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.portal-log-title{margin:0;font-size:15px}.portal-log-date{color:var(--muted);font-size:12.5px;white-space:nowrap}.portal-log-body{margin-top:6px;font-size:14px}.portal-log-body h1,.portal-log-body h2,.portal-log-body h3{font-size:15px;margin:12px 0 4px}.portal-log-body p{margin:6px 0}.portal-log-body img{max-width:100%;border-radius:10px}.portal-log-body pre{overflow-x:auto}.portal-foot{margin-top:auto;padding-top:18px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12.5px}.portal-policy-toggle{background:none;border:none;padding:0;font:inherit;font-size:12.5px;color:var(--muted);cursor:pointer}.portal-policy-toggle:hover{color:var(--text)}.portal-policy ul{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--muted)}@media (max-width:640px){.client-settings-grid{grid-template-columns:1fr}.portal-page{padding:20px 14px 40px}.portal-time-label{flex-basis:90px;font-size:12px}.client-name-input{max-width:160px}}.roadmaps-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(640px,100%),1fr));grid-gap:14px;gap:14px;padding:4px 0 18px;align-items:start}.roadmap-card{border:1px solid var(--line);background:var(--card-panel-bg);padding:16px;display:flex;flex-direction:column;gap:4px;position:relative;min-width:0;overflow:hidden;cursor:pointer;transition:border-color .12s}.roadmap-card:hover{border-color:var(--proj-color,#6b7280)}.roadmap-card:focus-visible{outline:2px solid var(--proj-color,#6b7280);outline-offset:2px}.roadmap-card-head{display:flex;align-items:center;gap:12px;margin-bottom:8px}.roadmap-card-dot{width:38px;height:38px;border-radius:9px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#fff}.roadmap-card-info{flex:1 1 auto;min-width:0;display:flex;flex-direction:column}.roadmap-card-name-row{display:flex;align-items:center;gap:8px;min-width:0}.roadmap-card-name{margin:0;font-size:1.04rem;font-weight:600;color:var(--text);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.roadmap-card-name:hover{color:var(--accent,#3b82f6)}.roadmap-card-title{font-size:.78rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:2px}.roadmap-card-count{font-size:.78rem;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;flex-shrink:0;display:flex;flex-direction:column;align-items:flex-end;line-height:1.25}.roadmap-card-count strong{font-size:.95rem;font-weight:700;color:var(--text)}.roadmap-card-count-sub{font-size:.72rem}.roadmap-card .pd-progress{height:10px;margin:8px 0 10px}.roadmap-card-milestone-preview{list-style:none;margin:4px 0 0;padding:0;font-size:.82rem;color:var(--text);display:flex;flex-direction:column;gap:3px}.roadmap-card-milestone-preview li{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.roadmap-card-milestone-preview li.is-done{text-decoration:line-through;color:var(--muted)}.roadmap-card-foot{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:auto;padding-top:8px;border-top:1px solid var(--line);font-size:.74rem;color:var(--muted);min-width:0}.roadmap-card-foot-left,.roadmap-card-foot-right{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.roadmap-card-foot-right{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--text);flex-shrink:0}.roadmap-card-foot-days{color:var(--muted)}.roadmap-card-foot .is-risk{color:#dc2626;font-weight:600}.roadmap-card-name-row .set-chip{flex-shrink:0;max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.import-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}.import-dropzone{border:2px dashed var(--line);border-radius:16px;padding:40px 24px;text-align:center;cursor:pointer;transition:border-color .2s,background .2s}.import-dropzone.is-dragover,.import-dropzone:hover{border-color:var(--accent);background:rgba(24,28,34,.02)}.import-dropzone-text{display:flex;flex-direction:column;gap:4px}.import-dropzone-text strong{font-size:.95rem}.import-account-info{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px;font-size:.85rem}.import-account-info-item{padding:6px 12px;background:var(--panel-solid);border:1px solid var(--line);border-radius:10px}.import-account-info-item strong{color:var(--text)}.import-controls{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid var(--line)}.import-control-group{display:flex;align-items:center;gap:6px}.import-select{padding:7px 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel);font:inherit;font-size:.85rem;color:var(--text)}.import-table-wrap{overflow-x:auto;max-height:60vh;overflow-y:auto}.import-table{width:100%;border-collapse:collapse;font-size:.82rem}.import-table th{position:-webkit-sticky;position:sticky;top:0;background:var(--panel-solid);text-align:left;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:8px;border-bottom:1px solid var(--line);font-weight:500;white-space:nowrap;z-index:1}.import-table td{padding:6px 8px;border-bottom:1px solid rgba(0,0,0,.04);vertical-align:middle}.import-table tbody tr:hover{background:rgba(24,28,34,.02)}.import-table tbody tr.is-unchecked{opacity:.4}.import-th-check{width:32px}.import-th-amount{text-align:right}.import-table .import-amount{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:500;white-space:nowrap}.import-amount-expense{color:var(--danger)}.import-amount-income{color:var(--ok-text)}.import-table select{padding:4px 8px;border:1px solid var(--line);border-radius:6px;font:inherit;font-size:.8rem;background:transparent;color:var(--text);min-width:120px}.import-type-badge{display:inline-block;padding:2px 8px;border-radius:6px;font-size:.72rem;font-weight:600;text-transform:uppercase}.import-type-expense{background:var(--bad-bg);color:var(--bad-text)}.import-type-income{background:var(--ok-bg);color:var(--ok-text)}.import-result-content{padding:20px;text-align:center}.import-result-content h3{margin-bottom:8px}.import-currency-select{min-width:70px!important;padding:3px 6px!important}.import-orig-amount{font-size:.72rem;margin-left:4px}.import-cat-cell{display:flex;align-items:center;gap:4px}.import-cat-cell select{min-width:100px!important}.import-add-cat-btn{width:24px;height:24px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:1px dashed var(--line);border-radius:6px;background:none;color:var(--muted);font-size:.9rem;cursor:pointer;flex-shrink:0;transition:color .12s,border-color .12s}.import-add-cat-btn:hover{color:var(--text);border-color:var(--text)}.import-history-list{display:flex;flex-direction:column;gap:6px}.import-history-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;border:1px solid var(--line);border-radius:10px;font-size:.82rem}.import-history-info{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.import-history-bank{font-weight:600;text-transform:capitalize}.import-history-account{color:var(--muted)}.import-history-stats{font-size:.78rem}.import-history-right{display:flex;align-items:center;gap:10px;flex-shrink:0}.import-history-date{color:var(--muted);font-size:.78rem;white-space:nowrap}.import-history-download{display:inline-flex;align-items:center;gap:4px;color:var(--muted);text-decoration:none;font-size:.78rem;transition:color .12s}.import-history-download:hover{color:var(--text)}.import-history-download span{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tagsm{max-width:860px;margin:0 auto;padding-bottom:40px}.tagsm-search{display:inline-flex;align-items:center;gap:6px;padding:0 10px;height:32px;border:1px solid var(--line);border-radius:8px;background:var(--card-bg,#fff);color:var(--muted)}.tagsm-search input{border:none;background:transparent;outline:none;color:var(--text);font-size:.85rem;width:170px}.tagsm-count{font-size:.8rem;color:var(--muted);white-space:nowrap}.tagsm-hint-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:16px}.tagsm-hint{color:var(--muted);font-size:.82rem;line-height:1.5;margin:0;max-width:560px}.tagsm-hint-actions{display:inline-flex;align-items:baseline;gap:6px;color:var(--muted);font-size:.8rem;white-space:nowrap}.tagsm-linklike{border:none;background:transparent;padding:0;color:var(--muted);font-size:.8rem;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.tagsm-linklike:hover{color:var(--text)}.tagsm-error{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.3);color:#ef4444;border-radius:8px;padding:10px 14px;font-size:.85rem}.tagsm-error,.tagsm-group{margin-bottom:18px}.tagsm-group-head{display:flex;align-items:center;gap:8px;width:100%;border:none;background:transparent;cursor:pointer;text-align:left;color:var(--text);padding:6px 4px;border-bottom:1px solid var(--line);margin-bottom:6px}.tagsm-group-chevron{display:inline-flex;color:var(--muted);transition:transform .15s}.tagsm-group-chevron.is-open{transform:rotate(90deg)}.tagsm-group-name{font-weight:600;font-size:.95rem}.tagsm-group-head.is-global .tagsm-group-name{color:var(--muted)}.tagsm-group-count{font-size:.75rem;color:var(--muted);background:var(--card-bg,#fff);border:1px solid var(--line);border-radius:999px;padding:1px 8px}.tagsm-rows{display:flex;flex-direction:column;gap:4px}.tagsm-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;transition:background .12s}.tagsm-row:hover{background:var(--row-hover)}.tagsm-row.is-busy{opacity:.6;pointer-events:none}.tagsm-name-input{flex:1 1 200px;min-width:0;border:none;background:transparent;color:var(--text);font-size:.88rem;font-weight:500;padding:4px 8px;border-radius:6px;outline:none;transition:background .12s}.tagsm-name-input:focus{background:var(--wash-focus)}.tagsm-usage{display:flex;gap:6px;flex-shrink:0;flex-wrap:wrap;justify-content:flex-end;min-width:0}.tagsm-usage-chip{font-size:.72rem;color:var(--muted);background:var(--card-bg,rgba(0,0,0,.04));border:1px solid var(--line);border-radius:999px;padding:2px 8px;white-space:nowrap}.tagsm-usage-chip.is-empty{opacity:.6}.tagsm-project-select{flex-shrink:0;width:170px;font-size:.8rem;border:1px solid transparent;border-radius:8px;padding:5px 8px;background:transparent;color:var(--muted);cursor:pointer;transition:border-color .12s,color .12s}.tagsm-project-select:focus,.tagsm-row:hover .tagsm-project-select{border-color:var(--line);color:var(--text);background:var(--input-bg)}.tagsm-delete-btn{flex-shrink:0;width:28px;height:28px;border:none;background:transparent;color:var(--muted);border-radius:8px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;opacity:0;transition:opacity .12s,background .12s,color .12s}.tagsm-delete-btn:focus-visible,.tagsm-row:hover .tagsm-delete-btn{opacity:1}.tagsm-delete-btn:hover{background:rgba(239,68,68,.12);color:#ef4444}.tagsm-add{display:flex;align-items:center;gap:8px;height:34px;padding:0 10px;border:none;border-radius:10px;font-size:.84rem;color:var(--muted);background:transparent;cursor:pointer;text-align:left;transition:background .12s,color .12s}.tagsm-add:hover{background:var(--wash-hover);color:var(--text)}.tagsm-modal-overlay{position:fixed;inset:0;z-index:500;display:flex;align-items:center;justify-content:center}.tagsm-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.4)}.tagsm-modal-card{position:relative;width:min(420px,calc(100vw - 32px));background:var(--panel-solid,#fff);border:1px solid var(--line);border-radius:14px;box-shadow:0 20px 50px rgba(0,0,0,.25);padding:20px}.tagsm-modal-title{margin:0 0 10px;font-size:1.05rem;font-weight:700}.tagsm-modal-body{font-size:.88rem;color:var(--muted);line-height:1.5;margin-bottom:18px}.tagsm-modal-actions{display:flex;justify-content:flex-end;gap:8px}@media (max-width:640px){.tagsm-row{flex-wrap:wrap}.tagsm-usage{order:3;justify-content:flex-start}.tagsm-project-select{width:auto;flex:1 1 auto}}