.pm-empty{color:var(--text-faint);padding:4px 2px;font-size:13.5px;line-height:1.5}.pm-list{flex-direction:column;gap:8px;display:flex}.pm-item{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-md);overflow:hidden}.pm-row{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:10px;padding:11px 13px;display:flex}.pm-row:active{background:var(--surface-2)}.pm-row-main{flex:1;min-width:0}.pm-row-name{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:700;display:block;overflow:hidden}.pm-row-meta{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--text-dim);margin-top:2px;font-size:11.5px;display:block}.pm-row-usage{color:var(--text-faint);text-align:right;flex:none;max-width:45%;font-size:11px}.pm-editor{border-top:1px solid var(--border-soft);flex-direction:column;gap:12px;padding:12px 13px 13px;display:flex}.pm-editor .field input{background:var(--surface-2)}.pm-note{color:var(--text-faint);font-size:11.5px}.pm-actions{align-items:center;gap:8px;display:flex}.pm-actions-spacer{flex:1}.pm-delete-note{color:var(--text-faint);text-align:right;max-width:110px;font-size:10.5px;line-height:1.3}.pm-actions .btn{flex:none;padding:8px 14px;font-size:13px}.pm-merge{background:var(--surface-2);border:1px dashed var(--border);border-radius:var(--radius-md);flex-direction:column;gap:7px;padding:10px;display:flex}.pm-merge-title{color:var(--text-faint);text-transform:uppercase;letter-spacing:.05em;font-size:11.5px;font-weight:700}.pm-merge-search{margin:0}.pm-merge-search input{background:var(--surface);padding-top:9px;padding-bottom:9px;font-size:13.5px}.pm-merge-none{color:var(--text-faint);padding:4px 2px;font-size:12.5px}.pm-merge-option{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-sm);width:100%;color:var(--text);text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:9px 11px;display:flex}.pm-merge-option:active{border-color:var(--accent)}.pm-merge-confirm{background:var(--surface-2);border:1px dashed var(--border);border-radius:var(--radius-md);flex-direction:column;gap:10px;padding:12px;display:flex}.pm-merge-summary{color:var(--text-dim);font-size:13px;line-height:1.5}.pm-merge-confirm-actions{gap:8px;display:flex}.pm-merge-confirm-actions .btn{flex:1;padding:10px;font-size:13.5px}.pm-btn-ghost{background:var(--surface);color:var(--text-dim);border:1px solid var(--border-soft)}.card.pipeline-blist{opacity:.5;filter:saturate(.4)}.attempt-badge{text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);background:var(--surface-2);border:1px solid var(--border);white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:10.5px;font-weight:700}.attempt-badge.attempted{color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, var(--surface));border-color:color-mix(in srgb, var(--accent) 35%, var(--border))}.icon-btn.pl-header-btn{border-radius:14px;width:44px;height:44px}.pl-menu-wrap{position:relative}.pl-menu-backdrop{z-index:40;background:0 0;position:fixed;inset:0}.pl-menu{z-index:41;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-md);flex-direction:column;gap:2px;min-width:232px;padding:5px;display:flex;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 10px 28px #00000047}.pl-menu-item{border-radius:calc(var(--radius-md) - 4px);width:100%;min-height:44px;color:var(--text);text-align:left;white-space:nowrap;background:0 0;border:none;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-size:14px;font-weight:600;display:flex}.pl-menu-item:active{background:var(--surface-2)}.pl-menu-count{background:var(--surface-2);border:1px solid var(--border);color:var(--text-dim);font-variant-numeric:tabular-nums;border-radius:999px;padding:1px 8px;font-size:11.5px;font-weight:700}.cycle-badge{color:var(--text-dim);background:var(--surface-2);border:1px solid var(--border);font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:10.5px;font-weight:700}.follow-up-date{color:var(--text-dim);font-size:11.5px;font-weight:600}.due-section{flex-direction:column;gap:8px;margin-bottom:12px;display:flex}.due-title{text-transform:uppercase;letter-spacing:.06em;color:var(--accent);align-items:center;gap:7px;font-size:11px;font-weight:700;display:flex}.due-title .due-count{background:var(--accent);color:var(--accent-ink);font-variant-numeric:tabular-nums;border-radius:999px;padding:1px 7px;font-size:10.5px}.card.due-card{border:1px solid color-mix(in srgb, var(--accent) 45%, var(--border));align-items:center;gap:10px;display:flex}.due-card .due-body{min-width:0;color:inherit;font:inherit;text-align:left;background:0 0;border:none;flex-direction:column;flex:1;align-items:flex-start;gap:5px;padding:0;display:flex}.due-card .due-meta{align-items:center;gap:6px;display:flex}.due-card .due-reached{flex:none}.ni-toggle{background:var(--surface);border:1px solid var(--border-soft);width:100%;color:var(--text-dim);border-radius:var(--radius-md);text-align:left;align-items:center;gap:8px;padding:11px 13px;font-size:13.5px;font-weight:700;display:flex}.ni-toggle .ni-box{border:1.5px solid var(--border);color:#0000;border-radius:5px;flex:none;justify-content:center;align-items:center;width:16px;height:16px;font-size:11px;line-height:1;display:flex}.ni-toggle.active{background:color-mix(in srgb, var(--danger) 12%, var(--surface));border-color:var(--danger);color:var(--danger)}.ni-toggle.active .ni-box{background:var(--danger);border-color:var(--danger);color:#fff}.stamp-preview{background:var(--surface);border:1px dashed var(--border);border-radius:var(--radius-md);color:var(--text-dim);margin-top:10px;padding:10px 13px;font-size:12.5px}.stamp-preview .sp-title{color:var(--text-faint);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px;font-size:10.5px;font-weight:700}.stamp-preview ul{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.stamp-preview li{align-items:center;gap:7px;display:flex}.stamp-preview .sp-dot{border-radius:50%;flex:none;width:7px;height:7px}.stamp-preview .sp-date{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--text-faint);margin-left:auto}.stamp-preview .sp-none{color:var(--text-faint)}.flash-required input{border-color:var(--danger)!important}.dp-trigger{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-md);width:100%;min-width:0;color:var(--text);text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:8px;padding:11px 13px;font-size:15px;display:flex}.dp-open .dp-trigger,.dp-trigger:focus-visible{border-color:var(--accent);outline:none}.dp-value{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dp-placeholder{color:var(--text-faint)}.dp-cal-icon{width:16px;height:16px;color:var(--text-faint);flex:none}.dp-open .dp-cal-icon{color:var(--accent)}.row2 .field.dp-open{flex-basis:100%}.dp-panel{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-md);margin-top:8px;padding:8px 8px 10px}.dp-head{justify-content:space-between;align-items:center;gap:4px;display:flex}.dp-title{text-align:center;flex:1;min-width:0;font-size:14px;font-weight:700}.dp-nav{border-radius:var(--radius-sm);width:44px;height:44px;color:var(--text-dim);cursor:pointer;background:0 0;border:none;flex:none;justify-content:center;align-items:center;display:flex}.dp-nav:active{background:var(--surface-2);color:var(--text)}.dp-nav .icon{width:18px;height:18px}.dp-weekdays{grid-template-columns:repeat(7,1fr);margin-top:2px;display:grid}.dp-weekdays span{text-align:center;color:var(--text-faint);text-transform:uppercase;letter-spacing:.05em;padding:4px 0 6px;font-size:10.5px;font-weight:700}.dp-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.dp-day{border-radius:var(--radius-sm);min-width:0;min-height:40px;color:var(--text);font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0;font-size:13.5px;font-weight:600;display:flex}.dp-day:active{background:var(--surface-2)}.dp-day.outside{color:var(--text-faint);font-weight:500}.dp-day.today{border-color:var(--accent);color:var(--accent)}.dp-day.selected{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:700}.dp-foot{gap:8px;margin-top:8px;display:flex}.dp-foot-btn{background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--radius-sm);min-height:44px;color:var(--text-dim);cursor:pointer;flex:1;font-size:13px;font-weight:700}.dp-foot-btn:active{border-color:var(--accent)}.dp-today-btn{color:var(--accent)}.status-pill.pill-warn{color:var(--danger);background:#ef44441f;border-color:#ef444466}.flash-name .field input{animation:.8s cust-field-flash}@keyframes cust-field-flash{0%,to{border-color:var(--border-soft);box-shadow:none}20%,60%{border-color:var(--danger);box-shadow:0 0 0 3px #ef444440}}.orders-section{flex-direction:column;gap:9px;display:flex}.orders-head{justify-content:space-between;align-items:center;display:flex}.orders-label{color:var(--text-faint);text-transform:uppercase;letter-spacing:.05em;font-size:11.5px;font-weight:700}.orders-empty{color:var(--text-faint);padding:4px 2px;font-size:13px}.order-item{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-md);overflow:hidden}.order-summary{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:10px;padding:11px 13px;display:flex}.order-summary:active{background:var(--surface-2)}.order-date{font-size:13.5px;font-weight:700;display:block}.order-count{color:var(--text-faint);margin-top:1px;font-size:11.5px;display:block}.order-summary-totals{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--text-dim);flex:none;font-size:12.5px;font-weight:700}.order-editor{border-top:1px solid var(--border-soft);flex-direction:column;gap:12px;padding:12px 13px 13px;display:flex}.oline{align-items:center;gap:10px;display:flex}.oline-info{flex:1;min-width:0}.oline-name{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:600;overflow:hidden}.oline-meta{color:var(--text-faint);margin-top:2px;font-size:11px}.oline-total{text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums;flex:none;font-size:12.5px;font-weight:700}.oline-total-points{color:var(--accent);margin-top:1px;font-size:10.5px;font-weight:600}.oline .stepper{gap:5px}.oline .stepper-btn{width:30px;height:30px;font-size:16px}.oline .stepper-val{min-width:22px;font-size:14px}.order-editor .dp-trigger,.order-editor .dp-panel{background:var(--surface-2)}.order-editor .dp-day:active,.order-editor .dp-nav:active,.order-editor .dp-foot-btn{background:var(--surface)}.order-add-product{background:var(--surface-2);border:1px dashed var(--border);border-radius:var(--radius-md);width:100%;color:var(--text-dim);cursor:pointer;padding:11px;font-size:13.5px;font-weight:700}.order-add-product:active{border-color:var(--accent);color:var(--accent)}.order-live-total{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--accent);background:var(--surface-2);border:1px dashed var(--border);border-radius:var(--radius-md);justify-content:space-between;align-items:baseline;padding:10px 13px;font-size:13.5px;font-weight:700;display:flex}.order-live-total .lbl{font-family:var(--font);color:var(--text-faint);text-transform:uppercase;letter-spacing:.05em;font-size:10.5px}.picker{flex-direction:column;height:72vh;min-height:0;margin:-16px -16px -6px;display:flex}.picker .search-wrap{flex:none;margin:12px 16px 0}.picker .chips{flex:none;padding:10px 16px 4px}.picker-results{flex-direction:column;flex:1;gap:7px;min-height:0;padding:8px 16px 16px;display:flex;overflow-y:auto}.picker-row{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-md);width:100%;color:var(--text);text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.picker-row:active{background:var(--surface-2);border-color:var(--accent)}.picker-row-info{flex:1;min-width:0;display:block}.picker-row-name{font-size:14px;font-weight:600;line-height:1.3;display:block}.picker-row-meta{color:var(--text-faint);margin-top:2px;font-size:11px;display:block}.picker-row-right{text-align:right;flex:none;display:block}.picker-row-price{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:13.5px;font-weight:700;display:block}.picker-row-points{font-family:var(--font-mono);color:var(--accent);margin-top:2px;font-size:11px;font-weight:600;display:block}.oline-edit{gap:6px;margin-top:4px;display:flex}.oline-num{align-items:center;gap:4px;display:inline-flex}.oline-num input{background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--radius-sm);width:58px;color:var(--text);font-family:var(--font-mono);font-variant-numeric:tabular-nums;appearance:textfield;outline:none;padding:4px 6px;font-size:12.5px}.oline-num input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.oline-num input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.oline-num input:focus{border-color:var(--accent)}.oline-num-unit{color:var(--text-faint);font-size:10.5px;font-weight:600}.picker-add-row{border-style:dashed;align-items:center}.picker-add-row:active{border-color:var(--accent)}.picker-add-plus{background:var(--surface-2);border:1px solid var(--border-soft);width:28px;height:28px;color:var(--accent);border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.picker-add-plus .icon{width:15px;height:15px}.picker-add-form{background:var(--surface);border:1px dashed var(--border);border-radius:var(--radius-md);flex-direction:column;gap:12px;padding:12px;display:flex}.picker-add-title{color:var(--text-faint);text-transform:uppercase;letter-spacing:.05em;font-size:11.5px;font-weight:700}.picker-add-form .field input{background:var(--surface-2)}.picker-add-actions{gap:10px;display:flex}.picker-add-cancel{background:var(--surface-2);color:var(--text-dim);border:1px solid var(--border-soft)}.picker-add-actions .btn-primary:disabled{opacity:.45}.picker-add-note{color:var(--text-faint);text-align:center;font-size:11.5px}.picker-note{color:var(--text-faint);text-align:center;padding:34px 20px;font-size:13.5px;line-height:1.5}.card-money-sub+.card-money-sub{margin-top:1px}.day-nav{justify-content:space-between;align-items:center;gap:10px;margin:10px 18px 0;display:flex}.day-nav-btn{border-radius:var(--radius-md);background:var(--surface);border:1px solid var(--border-soft);width:40px;height:40px;color:var(--text);flex:none;justify-content:center;align-items:center;display:flex}.day-nav-btn:active:not(:disabled){background:var(--surface-2)}.day-nav-btn:disabled{opacity:.35}.day-nav-label{text-align:center;letter-spacing:-.01em;flex:1;font-size:16px;font-weight:800}.day-nav-sub{color:var(--text-faint);font-size:11px;font-weight:600;font-family:var(--font-mono);font-variant-numeric:tabular-nums;margin-top:1px;display:block}.act-body{flex:1;padding:0 18px 100px}.act-sec-label{color:var(--text-faint);text-transform:uppercase;letter-spacing:.05em;margin:18px 0 8px;font-size:11.5px;font-weight:700}.act-row{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-lg);justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;display:flex}.act-row+.act-row,.act-row+.act-block,.act-block+.act-row,.act-block+.act-block{margin-top:9px}.act-row-label{letter-spacing:-.01em;font-size:14.5px;font-weight:700}.act-row-hint{color:var(--text-faint);margin-top:2px;font-size:11.5px;font-weight:500;display:block}.act-block{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-lg);padding:12px 14px}.act-block-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.act-count{font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:center;min-width:40px;font-size:17px;font-weight:700}.log-btn{border-radius:var(--radius-md);border:1px dashed var(--border);width:100%;color:var(--accent);text-align:center;background:0 0;margin-top:10px;padding:10px 12px;font-size:13.5px;font-weight:700}.log-btn:active{background:var(--surface-2)}.conn-list{flex-direction:column;margin-top:8px;display:flex}.conn-row{border:none;border-top:1px solid var(--border-soft);width:100%;color:var(--text);text-align:left;background:0 0;justify-content:space-between;align-items:center;gap:10px;padding:10px 2px;font-size:14px;font-weight:600;display:flex}.conn-row:active{background:var(--surface-2)}.conn-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.auto-badge{text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint);background:var(--surface-2);border:1px solid var(--border-soft);vertical-align:1px;border-radius:99px;margin-left:7px;padding:2px 7px;font-size:9.5px;font-weight:700;display:inline-block}.funnel-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-lg);padding:12px 14px}.funnel-line{font-size:14px;font-weight:600;line-height:1.5}.funnel-line .funnel-num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-weight:700}.funnel-pct{color:var(--accent)}.funnel-empty{color:var(--text-faint);font-size:13px}:root{--bg:#121317;--surface:#1b1d23;--surface-2:#20222a;--border:#2a2d35;--border-soft:#24262c;--text:#f2f2f4;--text-dim:#9497a3;--text-faint:#63666f;--accent:#e3a008;--accent-ink:#171205;--danger:#ef4444;--danger-ink:#2a0e0e;--success:#2ecc71;--radius-lg:20px;--radius-md:13px;--radius-sm:9px;--font:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:ui-monospace, "SF Mono", "Roboto Mono", Menlo, Consolas, monospace;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px)}*{box-sizing:border-box}html,body{height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-tap-highlight-color:transparent;overscroll-behavior-y:contain;margin:0}button,input,textarea,select{font-family:inherit}button{touch-action:manipulation}.app{flex-direction:column;max-width:520px;min-height:100vh;margin:0 auto;display:flex;position:relative}.icon{stroke:currentColor;stroke-width:2px;fill:none;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px;display:block}.header{padding:calc(18px + var(--safe-top)) 18px 6px;justify-content:space-between;align-items:baseline;display:flex}.header h1{letter-spacing:-.02em;margin:0;font-size:22px;font-weight:800}.header .tab-name{color:var(--accent)}.header .sub{color:var(--text-faint);text-transform:uppercase;letter-spacing:.06em;font-size:12px;font-weight:600}.header-leading{align-self:center;margin-right:12px}.header-title{flex:1;min-width:0}.header-right{align-items:center;gap:8px;display:flex}.settings-section{margin-bottom:20px}.settings-section-title{color:var(--text-faint);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;font-size:12px;font-weight:600}.settings-placeholder{color:var(--text-faint);font-size:14px}.search-wrap{margin:10px 18px 0;position:relative}.search-wrap .icon{color:var(--text-faint);position:absolute;top:50%;left:13px;transform:translateY(-50%)}.search-wrap input{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-md);width:100%;color:var(--text);outline:none;padding:11px 14px 11px 40px;font-size:15px}.search-wrap input::placeholder{color:var(--text-faint)}.search-wrap input:focus{border-color:var(--accent)}.stats{gap:8px;margin:14px 18px 4px;display:flex}.stat{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-md);flex:1;padding:10px 12px}.stat .val{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:17px;font-weight:700}.stat .lbl{color:var(--text-faint);text-transform:uppercase;letter-spacing:.05em;margin-top:2px;font-size:10.5px;font-weight:600}.chips{scrollbar-width:none;gap:7px;padding:12px 18px 4px;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chip{background:var(--surface);border:1px solid var(--border-soft);color:var(--text-dim);white-space:nowrap;border-radius:99px;flex:none;align-items:center;gap:6px;padding:7px 12px;font-size:12.5px;font-weight:600;display:flex}.chip.active{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.chip .dot{border-radius:50%;flex:none;width:7px;height:7px}.list{flex-direction:column;flex:1;gap:9px;padding:10px 18px 100px;display:flex}.empty{text-align:center;color:var(--text-faint);padding:60px 20px;font-size:14px;line-height:1.6}.empty strong{color:var(--text-dim);margin-bottom:4px;font-size:15px;display:block}.card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-lg);cursor:pointer;padding:14px 14px 12px;transition:transform 80ms}.card:active{transform:scale(.985)}.card-top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.card-name{letter-spacing:-.01em;font-size:16px;font-weight:700}.card-meta{color:var(--text-faint);margin-top:1px;font-size:12.5px}.card-right{text-align:right;flex:0 auto;min-width:0}.card-money{font-family:var(--font-mono);font-size:14.5px;font-weight:700}.card-money-sub{color:var(--text-faint);margin-top:1px;font-size:11px}.card-notes{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;margin-top:8px;font-size:13px;overflow:hidden}.card-foot{justify-content:space-between;align-items:center;margin-top:10px;display:flex}.stage-pill{letter-spacing:.02em;overflow-wrap:break-word;border-radius:99px;max-width:100%;padding:3px 9px;font-size:11px;font-weight:700}.updated{color:var(--text-faint);font-size:11px}.dots{gap:4px;margin-top:10px;display:flex}.dot-btn{background:var(--border);border:none;border-radius:4px;flex:1;height:7px;padding:0}.dot-btn.filled{background:var(--dot-color,var(--accent))}.status-pill{background:var(--surface-2);color:var(--text-dim);border:1px solid var(--border-soft);border-radius:99px;padding:3px 9px;font-size:11px;font-weight:700}.fab{right:calc(50% - 240px);bottom:calc(78px + var(--safe-bottom));background:var(--accent);width:56px;height:56px;color:var(--accent-ink);z-index:20;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed;box-shadow:0 8px 20px #0006}.fab:active{transform:scale(.94)}@media (width<=559px){.fab{right:20px}}.nav{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--border-soft);padding:8px 6px calc(8px + var(--safe-bottom));z-index:15;background:#1b1d23eb;display:flex;position:sticky;bottom:0}.nav-btn{color:var(--text-faint);background:0 0;border:none;flex-direction:column;flex:1;align-items:center;gap:3px;padding:6px 0 2px;display:flex}.nav-btn.active{color:var(--accent)}.nav-btn span{letter-spacing:.02em;font-size:10.5px;font-weight:700}.modal-backdrop{z-index:30;opacity:0;pointer-events:none;background:#0000008c;justify-content:center;align-items:flex-end;transition:opacity .18s;display:flex;position:fixed;inset:0}.modal-backdrop.open{opacity:1;pointer-events:auto}.sheet{background:var(--surface-2);border:1px solid var(--border-soft);border-bottom:none;border-radius:22px 22px 0 0;flex-direction:column;width:100%;max-width:520px;max-height:92vh;transition:transform .2s;display:flex;position:relative;transform:translateY(24px)}.modal-backdrop.open .sheet{transform:translateY(0)}.sheet-handle{background:var(--border);border-radius:3px;width:36px;height:4px;margin:10px auto 4px}.sheet-handle,.sheet-head{touch-action:none}.sheet-head{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;padding:10px 16px 12px;display:flex}.sheet-head h2{margin:0;font-size:17px;font-weight:800}.icon-btn{background:var(--surface);border:1px solid var(--border-soft);color:var(--text-dim);border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.sheet-body{flex-direction:column;gap:14px;padding:16px 16px 6px;display:flex;overflow:hidden auto}.field label{color:var(--text-faint);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px;font-size:11.5px;font-weight:700;display:block}.field input,.field textarea{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-md);width:100%;min-width:0;max-width:100%;color:var(--text);outline:none;padding:11px 13px;font-size:15px}.field input:focus,.field textarea:focus{border-color:var(--accent)}input[type=date]{appearance:none;min-width:0;max-width:100%}input[type=date]::-webkit-date-and-time-value{text-align:left}.field textarea{resize:vertical;min-height:64px;line-height:1.4}.row2{flex-wrap:wrap;gap:10px;display:flex}.row2 .field{flex:1;min-width:0}.computed{font-family:var(--font-mono);color:var(--accent);background:var(--surface);border:1px dashed var(--border);border-radius:var(--radius-md);padding:11px 13px;font-size:15px;font-weight:700}.stage-grid{grid-template-columns:repeat(2,1fr);gap:7px;display:grid}.stage-opt{border-radius:var(--radius-sm);border:1px solid var(--border-soft);background:var(--surface);min-width:0;min-height:44px;color:var(--text-dim);text-align:center;overflow-wrap:anywhere;justify-content:center;align-items:center;padding:9px 8px;font-size:12.5px;font-weight:700;line-height:1.25;display:flex}.stage-opt.selected{color:#0b0c0e;border-color:#0000}.sheet-foot{padding:14px 16px calc(14px + var(--safe-bottom));border-top:1px solid var(--border-soft);gap:10px;display:flex}.sheet-confirm{z-index:5;background:#00000073;border-radius:22px 22px 0 0;justify-content:center;align-items:center;padding:24px;display:flex;position:absolute;inset:0}.sheet-confirm-box{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:320px;padding:18px 16px 16px;box-shadow:0 12px 32px #00000073}.sheet-confirm-title{text-align:center;margin-bottom:14px;font-size:15px;font-weight:800}.sheet-confirm-actions{gap:10px;display:flex}.sheet-confirm-keep{background:var(--surface-2);color:var(--text);border:1px solid var(--border-soft)}.sheet-confirm-discard{background:var(--danger);color:#fff}.btn{border-radius:var(--radius-md);border:none;flex:1;padding:13px;font-size:15px;font-weight:700}.btn-primary{background:var(--accent);color:var(--accent-ink)}.btn-primary:active{opacity:.85}.btn-ghost{background:var(--surface);color:var(--text-dim);border:1px solid var(--border-soft);flex:none;width:48px;padding:13px 0}.btn-danger-step{background:var(--surface);color:var(--danger);border:1px solid var(--border-soft)}.btn-danger-confirm{background:var(--danger);color:#fff}.btn .icon{margin:0 auto}.stepper{align-items:center;gap:10px;display:flex}.stepper-btn{border-radius:var(--radius-md);background:var(--surface);border:1px solid var(--border-soft);width:40px;height:40px;color:var(--text);flex:none;justify-content:center;align-items:center;font-size:20px;font-weight:700;line-height:1;display:flex}.stepper-btn:active:not(:disabled){background:var(--surface-2)}.stepper-btn:disabled{opacity:.35}.stepper-val{text-align:center;min-width:40px;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:17px;font-weight:700}.loading{height:60vh;color:var(--text-faint);justify-content:center;align-items:center;font-size:14px;display:flex}
