.edit-history-controls{display:inline-flex;align-items:center;gap:2px}.edit-history-controls .topbar-icon-btn:disabled{opacity:.35;cursor:not-allowed}.voice-field{display:inline-flex;align-items:center;gap:.3rem}.voice-btn{width:36px;height:36px;border-radius:10px;border:1px solid var(--border);background:var(--bg-elevated, #fff);cursor:pointer;font-size:1rem;line-height:1;display:inline-flex;align-items:center;justify-content:center;transition:background .14s ease,border-color .14s ease,box-shadow .14s ease}.voice-btn:hover{border-color:var(--accent)}.voice-btn.is-listening{background:#c63b3b1f;border-color:var(--danger);box-shadow:0 0 0 3px #c63b3b26;animation:voice-pulse 1.2s ease infinite}.voice-lang{min-width:32px;height:28px;padding:0 .35rem;border-radius:8px;border:1px solid var(--border);background:var(--bg-muted, #eef1f4);font-size:.68rem;font-weight:700;cursor:pointer}.voice-error{font-size:var(--text-xs);color:var(--danger)}.voice-field-unsupported{opacity:.35}@keyframes voice-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.field-with-voice{display:flex;flex-direction:column;gap:.35rem}.field-with-voice-row{display:flex;align-items:flex-start;gap:.45rem}.field-with-voice-row .field{flex:1;min-width:0}.field-with-voice-row .voice-field{margin-top:1.55rem}.field-control-with-voice{display:flex;align-items:flex-start;gap:.4rem;width:100%}.field-control-with-voice>.input,.field-control-with-voice>.textarea{flex:1;min-width:0}.field-control-with-voice>.voice-field{flex-shrink:0;margin-top:.15rem}.field-control-with-voice.is-textarea>.voice-field{margin-top:.35rem}.voice-field.is-compact .voice-btn{width:34px;height:34px}.voice-mode-toggle{display:inline-flex;align-items:center;gap:.35rem;min-height:var(--touch-min, 40px);padding:0 .65rem;border-radius:var(--radius-md, 10px);border:1px solid var(--border);background:var(--bg-elevated, #fff);color:var(--text-secondary);font-size:var(--text-sm, .875rem);font-weight:600;cursor:pointer;transition:border-color .14s ease,background .14s ease,color .14s ease}.voice-mode-toggle:hover{border-color:var(--accent);color:var(--text)}.voice-mode-toggle.is-on{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 10%,var(--surface, #fff));color:var(--accent)}.voice-mode-toggle.is-compact{min-width:var(--touch-min, 40px);padding:0 .45rem;justify-content:center}.voice-mode-toggle .voice-mode-dot{width:8px;height:8px;border-radius:50%;background:var(--border-strong, #9aa)}.voice-mode-toggle.is-on .voice-mode-dot{background:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}.create-form-voice-bar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:var(--space-3, .75rem);padding:.55rem .75rem;border-radius:var(--radius-md, 10px);background:color-mix(in srgb,var(--accent) 6%,var(--bg-subtle, #f5f7f9));border:1px solid color-mix(in srgb,var(--accent) 14%,var(--border));font-size:var(--text-sm, .875rem);color:var(--text-secondary)}.create-form-voice-bar strong{color:var(--text)}.market-research{display:flex;flex-direction:column;gap:.75rem;padding:.85rem 1rem;border-radius:14px;border:1px solid var(--border);background:var(--bg-elevated, #fff)}.market-research-head p{margin:.2rem 0 0;font-size:var(--text-xs);color:var(--text-secondary)}.market-research-form{display:grid;gap:.65rem}@media (min-width: 720px){.market-research-form{grid-template-columns:1fr 160px auto;align-items:end}.market-research-form .field-with-voice-row{grid-column:1}}.market-links{display:flex;flex-wrap:wrap;gap:.5rem}.market-links a{display:inline-flex;padding:.4rem .7rem;border-radius:999px;background:var(--accent-muted);color:var(--accent);font-size:var(--text-xs);font-weight:600;text-decoration:none}.market-note{margin:0;font-size:var(--text-xs);color:var(--text-muted);line-height:1.4}.market-compare{display:flex;flex-direction:column;gap:.55rem}.market-compare-product{padding:.55rem .65rem;border-radius:10px;background:var(--bg-subtle, #f5f7f9);border:1px solid var(--border)}.market-compare-title{font-size:var(--text-sm);font-weight:600;margin-bottom:.35rem}.market-compare ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.3rem}.market-compare li{display:flex;justify-content:space-between;gap:.5rem;font-size:var(--text-xs)}.more-menu{position:relative;display:inline-flex}.more-menu-trigger{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--border);border-radius:var(--radius-md, 10px);background:var(--bg-elevated, var(--bg));color:var(--text);font-size:1.25rem;line-height:1;cursor:pointer;transition:background var(--duration-fast, .14s),border-color var(--duration-fast, .14s)}.more-menu-trigger:hover,.more-menu-open .more-menu-trigger{background:var(--bg-muted);border-color:var(--border-strong, var(--border))}.more-menu-panel{position:absolute;inset-inline-end:0;top:calc(100% + 6px);z-index:60;min-width:220px;margin:0;padding:.35rem;list-style:none;background:var(--bg-elevated, #fff);border:1px solid var(--border);border-radius:var(--radius-md, 10px);box-shadow:0 12px 32px #0f141924}.more-menu-item{display:block;width:100%;text-align:right;border:none;background:transparent;color:var(--text);font:inherit;font-size:var(--text-sm);padding:.65rem .75rem;border-radius:8px;cursor:pointer}.more-menu-item:hover:not(:disabled){background:var(--bg-muted)}.more-menu-item:disabled{opacity:.45;cursor:not-allowed}.more-menu-item-danger{color:var(--danger, #c0392b)}.qa-banner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;padding:.65rem 1rem;margin:0 0 var(--space-4);border-radius:var(--radius-md);border:1px solid rgba(30,111,217,.25);background:linear-gradient(90deg,#1e6fd91f,#ffd66629);font-size:var(--text-sm)}.qa-banner strong{color:var(--accent)}.qa-panel{display:flex;flex-direction:column;gap:var(--space-3)}.qa-panel-stats{display:flex;flex-wrap:wrap;gap:var(--space-2)}.qa-stat{padding:.35rem .7rem;border-radius:var(--radius-sm);background:var(--accent-muted);font-size:var(--text-xs);color:var(--text-secondary)}.qa-pack-list{margin:0;padding:0 0 0 1.1rem;font-size:12px;color:var(--text-secondary);display:flex;flex-direction:column;gap:3px}.app-update-banner{position:sticky;top:0;z-index:80;background:color-mix(in srgb,var(--accent) 12%,var(--surface, #fff));border-bottom:1px solid color-mix(in srgb,var(--accent) 35%,var(--border))}.app-update-banner-inner{display:flex;align-items:center;gap:.75rem;padding:.65rem 1rem;max-width:1200px;margin:0 auto;flex-wrap:wrap}.app-update-banner p{margin:.1rem 0 0;font-size:var(--text-sm);color:var(--text-secondary)}.app-update-pulse{width:10px;height:10px;border-radius:50%;background:var(--accent);box-shadow:0 0 color-mix(in srgb,var(--accent) 50%,transparent);animation:app-update-pulse 1.4s ease infinite;flex-shrink:0}@keyframes app-update-pulse{0%{box-shadow:0 0 color-mix(in srgb,var(--accent) 45%,transparent)}70%{box-shadow:0 0 0 10px transparent}to{box-shadow:0 0 0 0 transparent}}.app-update-btn{margin-inline-start:auto;border:none;border-radius:var(--radius-md, 10px);background:var(--accent);color:#fff;font-weight:700;padding:.5rem .9rem;cursor:pointer;min-height:var(--touch-min, 40px)}.app-update-btn:hover{filter:brightness(1.05)}.app-refresh-btn{position:relative}.app-refresh-btn.has-update{color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 35%,transparent)}.app-refresh-dot{position:absolute;top:6px;inset-inline-end:6px;width:8px;height:8px;border-radius:50%;background:var(--danger, #c63b3b)}.pwa-banner{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);margin:0 0 var(--space-4);border-radius:var(--radius-md, 12px);background:linear-gradient(135deg,#3d9bfd24,#1a23320f);border:1px solid rgba(61,155,253,.28)}.pwa-banner-text{display:flex;flex-direction:column;gap:2px;flex:1;min-width:180px}.pwa-banner-text strong{font-size:var(--text-sm)}.pwa-banner-text span{font-size:var(--text-xs, .8rem);color:var(--text-secondary, #6b7280)}.pwa-banner-actions{display:flex;gap:var(--space-2)}.pwa-ios-hint{width:100%;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2);padding-top:var(--space-2);border-top:1px dashed rgba(61,155,253,.25);font-size:var(--text-sm)}.device-link-panel{display:grid;gap:var(--space-4)}.device-link-qr-wrap{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md, 12px);background:var(--surface-elevated, rgba(0, 0, 0, .03))}.device-link-qr-wrap img{width:min(240px,70vw);height:auto;border-radius:8px;background:#fff;padding:10px}.device-link-meta{text-align:center;font-size:var(--text-sm);color:var(--text-secondary, #6b7280)}.device-link-url{word-break:break-all;font-size:var(--text-xs, .8rem);color:var(--text-muted, #9ca3af);max-width:320px;text-align:center}.link-page{min-height:100vh;display:grid;place-items:center;padding:var(--space-6);background:radial-gradient(ellipse at 20% 0%,rgba(61,155,253,.18),transparent 50%),var(--bg, #0f1419)}.link-page-card{width:min(420px,100%);padding:var(--space-6);border-radius:var(--radius-lg, 16px);background:var(--surface, #fff);box-shadow:0 16px 48px #0000002e;text-align:center}.link-page-card h1{margin:0 0 var(--space-2);font-size:1.4rem}.link-page-card p{margin:0 0 var(--space-4);color:var(--text-secondary, #6b7280);font-size:var(--text-sm)}.wizard-page{min-height:100dvh;padding:var(--space-4);display:grid;place-items:center;background:radial-gradient(900px 480px at 100% 0%,color-mix(in srgb,var(--accent) 18%,transparent),transparent 55%),radial-gradient(700px 400px at 0% 100%,rgba(26,143,92,.08),transparent 50%),var(--bg)}.wizard-shell{width:min(980px,100%);display:grid;grid-template-columns:1fr;gap:var(--space-4);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden}@media (min-width: 860px){.wizard-shell{grid-template-columns:300px 1fr;min-height:560px}}.wizard-preview{background:#1a2332;color:#e8eef4;padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-4)}.wizard-preview-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-lg);padding:var(--space-4)}.wizard-preview-brand{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4)}.wizard-preview-logo,.wizard-preview-logo-img{width:44px;height:44px;border-radius:12px;object-fit:cover;flex-shrink:0}.wizard-preview-logo{display:grid;place-items:center;background:linear-gradient(145deg,var(--wiz-accent, #3d9bfd),color-mix(in srgb,var(--wiz-accent, #3d9bfd) 70%,#000));font-size:1.25rem}.wizard-preview-name{font-weight:700;font-family:var(--font-display)}.wizard-preview-tag{font-size:var(--text-xs);color:#9aabbc}.wizard-preview-nav{display:flex;flex-direction:column;gap:4px}.wizard-preview-nav-item{display:flex;align-items:center;gap:var(--space-3);padding:8px 10px;border-radius:var(--radius-md);font-size:var(--text-sm);color:#c5d0dc}.wizard-preview-nav-item:first-child{background:color-mix(in srgb,var(--wiz-accent, #3d9bfd) 22%,transparent);color:#fff}.wizard-preview-hint{font-size:var(--text-xs);color:#7a8b9c;margin-top:auto}.wizard-main{padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4);min-width:0}.wizard-progress{display:flex;gap:6px}.wizard-dot{flex:1;height:4px;border-radius:99px;background:var(--bg-muted)}.wizard-dot.active{background:color-mix(in srgb,var(--accent) 40%,var(--bg-muted))}.wizard-dot.current{background:var(--accent)}.wizard-meta{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.wizard-step-count{font-size:var(--text-xs);color:var(--text-muted);font-weight:600;letter-spacing:.02em}.wizard-skip{border:none;background:transparent;color:var(--accent);font:inherit;font-size:var(--text-sm);font-weight:600;cursor:pointer;padding:4px 0}.wizard-skip:hover{text-decoration:underline}.wizard-header{display:flex;flex-direction:column;gap:6px}.wizard-title{font-size:var(--text-2xl);line-height:1.25}.wizard-subtitle{margin:0;color:var(--text-secondary);line-height:1.55;font-size:var(--text-sm)}.wizard-lead{color:var(--text-secondary);line-height:1.6;margin:0}.wizard-inline-hint{margin:0 0 var(--space-3);color:var(--text-secondary);font-size:var(--text-sm);line-height:1.5}.wizard-reassure{margin-top:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:color-mix(in srgb,var(--accent) 8%,var(--bg-subtle));color:var(--text-secondary);font-size:var(--text-sm);line-height:1.5}.wizard-checklist{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:var(--space-2);color:var(--text)}.wizard-checklist li{display:flex;flex-direction:column;gap:2px;padding:var(--space-3) var(--space-3) var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-subtle);border-inline-start:3px solid var(--accent)}.wizard-checklist li strong{font-size:var(--text-sm)}.wizard-checklist li span{font-size:var(--text-xs);color:var(--text-muted)}.wizard-group{display:flex;flex-direction:column;gap:var(--space-2)}.wizard-group-title{margin:var(--space-2) 0 0;font-size:var(--text-sm);color:var(--text-muted)}.wizard-celebrate{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-3)}.wizard-celebrate-mark{width:56px;height:56px;border-radius:16px;display:grid;place-items:center;font-size:1.5rem;background:linear-gradient(145deg,var(--accent),color-mix(in srgb,var(--accent) 65%,#000));color:#fff;box-shadow:0 8px 20px color-mix(in srgb,var(--accent) 35%,transparent)}.wizard-body{flex:1;overflow:auto;max-height:min(52dvh,420px);padding-inline-end:2px}.wizard-actions{display:flex;justify-content:space-between;gap:var(--space-3);padding-top:var(--space-2);border-top:1px solid var(--border)}.wizard-actions .btn{min-width:120px}.icon-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:var(--space-2)}.icon-pick{display:flex;flex-direction:column;align-items:center;gap:4px;min-height:72px;padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);cursor:pointer;font:inherit;color:inherit}.icon-pick:hover{border-color:var(--border-strong)}.icon-pick.active{border-color:var(--accent);background:var(--accent-muted);box-shadow:var(--focus-ring)}.icon-pick-glyph{font-size:1.35rem}.icon-pick-label{font-size:.65rem;color:var(--text-muted)}.nav-edit-row{display:grid;grid-template-columns:72px 1fr;gap:var(--space-2);align-items:start}.wizard-summary{margin-top:var(--space-4);padding:var(--space-4);border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--bg-subtle);display:flex;flex-direction:column;gap:var(--space-3)}.wizard-summary>div{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.wizard-summary-label{font-size:var(--text-sm);color:var(--text-muted)}@media (max-width: 767px){.wizard-page{padding:var(--space-2);align-items:stretch}.wizard-shell{min-height:calc(100dvh - var(--space-4));border-radius:var(--radius-lg)}.wizard-preview{padding:var(--space-4)}.wizard-body{max-height:none}.wizard-actions{flex-direction:column-reverse}.wizard-actions .btn{width:100%}}.proj-dist{display:flex;flex-direction:column;gap:var(--space-5)}.proj-dist-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--space-3)}.proj-dist-summary>div{padding:.75rem .9rem;border-radius:var(--radius-md);background:color-mix(in srgb,var(--accent) 8%,var(--surface, #fff));border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border));display:flex;flex-direction:column;gap:.15rem}.proj-dist-summary strong{font-size:var(--text-lg);color:var(--accent)}.proj-dist-summary span{font-size:var(--text-xs);color:var(--text-secondary)}.proj-dist-block h4{margin:0 0 var(--space-3);font-size:var(--text-sm);font-weight:600}.proj-dist-bars{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:.35rem;align-items:end;min-height:140px}.proj-dist.is-compact .proj-dist-bars{min-height:110px}.proj-dist-bar-col{display:flex;flex-direction:column;align-items:center;gap:.25rem;min-width:0}.proj-dist-bar-track{width:100%;max-width:28px;height:110px;border-radius:8px 8px 4px 4px;background:var(--bg-muted, rgba(0, 0, 0, .04));display:flex;align-items:flex-end;overflow:hidden}.proj-dist.is-compact .proj-dist-bar-track{height:80px}.proj-dist-bar-fill{width:100%;min-height:0;border-radius:6px 6px 2px 2px;background:linear-gradient(180deg,var(--accent),color-mix(in srgb,var(--accent) 70%,#1a3a5c));transition:height .35s var(--ease-out, ease)}.proj-dist-bar-col.is-hot .proj-dist-bar-fill{background:linear-gradient(180deg,#e6a23c,#c47a12)}.proj-dist-bar-label{font-size:.65rem;color:var(--text-muted);white-space:nowrap}.proj-dist-bar-count{font-size:.7rem;font-weight:600;font-variant-numeric:tabular-nums}.proj-dist-weekdays{display:flex;flex-direction:column;gap:.45rem}.proj-dist-weekday-meta{display:flex;justify-content:space-between;font-size:var(--text-sm);margin-bottom:.2rem}.proj-dist-htrack{height:8px;border-radius:999px;background:var(--bg-muted, rgba(0, 0, 0, .06));overflow:hidden}.proj-dist-hfill{height:100%;border-radius:inherit;background:var(--accent);transition:width .35s var(--ease-out, ease)}.proj-dist-weekday.is-hot .proj-dist-hfill{background:#e6a23c}.proj-dist-weekday.is-hot .proj-dist-weekday-meta strong{color:#c47a12}.proj-dist-days{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.4rem}.proj-dist-days li{display:flex;justify-content:space-between;gap:1rem;padding:.55rem .75rem;border-radius:var(--radius-sm);background:var(--bg-muted, rgba(0, 0, 0, .03));font-size:var(--text-sm)}.proj-dist-days strong{color:var(--accent);font-variant-numeric:tabular-nums}@media (max-width: 520px){.proj-dist-bar-label{font-size:.55rem}.proj-dist-bars{gap:.2rem}}.dashboard-page{position:relative}.dash-quote-hero{display:flex;flex-direction:column;align-items:flex-start;gap:4px;width:100%;margin-bottom:var(--space-4);padding:16px 18px;border-radius:16px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 8%,var(--surface, #fff));color:inherit;text-align:start;cursor:pointer}.dash-quote-hero strong{font-size:1.1rem}.dash-quote-hero span{font-size:var(--text-sm);color:var(--text-secondary, #5b6570)}.dashboard-board{display:flex;flex-direction:column;gap:var(--space-4)}.dashboard-edit-fab{position:fixed;inset-inline-end:1rem;bottom:calc(4.5rem + env(safe-area-inset-bottom,0px));z-index:40;width:48px;height:48px;border-radius:14px;border:1px solid var(--border, rgba(0, 0, 0, .1));background:var(--surface, #fff);color:var(--text, #1a1f24);box-shadow:0 8px 24px #0000001f;font-size:1.25rem;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .14s ease,color .14s ease,transform .14s ease}.dashboard-edit-fab:hover{transform:translateY(-1px);border-color:var(--accent)}.dashboard-edit-fab.is-active{background:var(--accent);color:#fff;border-color:var(--accent)}.dashboard-layout{display:flex;flex-direction:column;gap:var(--space-4)}.dashboard-edit-panel{z-index:5;padding:.9rem 1rem;border-radius:14px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 6%,var(--surface, #fff));display:flex;flex-direction:column;gap:.85rem}.dashboard-edit-panel-head strong{display:block;font-size:var(--text-sm)}.dashboard-edit-panel-head p{margin:.25rem 0 0;font-size:var(--text-xs);color:var(--text-secondary);line-height:1.45}.dashboard-edit-group{display:flex;flex-direction:column;gap:.4rem;padding:.65rem .7rem;border-radius:10px;background:var(--surface, #fff);border:1px solid var(--border, rgba(0, 0, 0, .06))}.dashboard-edit-group-title{font-size:var(--text-xs);font-weight:700;color:var(--text-secondary);margin-bottom:.15rem}.dashboard-edit-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.dashboard-edit-check{display:inline-flex;align-items:center;gap:.5rem;font-size:var(--text-sm);cursor:pointer}.dashboard-edit-order{display:inline-flex;gap:.25rem}.dashboard-order-btn{width:30px;height:30px;border-radius:8px;border:1px solid var(--border);background:var(--bg, #f6f7f9);cursor:pointer;font-size:.85rem}.dashboard-order-btn:disabled{opacity:.35;cursor:not-allowed}@media (min-width: 900px){.dashboard-layout.is-editing{flex-direction:row-reverse;align-items:flex-start}.dashboard-layout.is-editing>.dashboard-edit-panel{flex:0 0 280px;position:sticky;top:1rem;max-height:calc(100vh - 2rem);overflow:auto}.dashboard-layout.is-editing>.dashboard-board{flex:1 1 auto;min-width:0}.dashboard-edit-fab{bottom:1.5rem}}.insight-list{display:grid;gap:var(--space-3)}.insight-card{display:flex;flex-direction:column;gap:.35rem;padding:var(--space-4);border-radius:var(--radius-md, 10px);border:1px solid var(--border);background:var(--bg);color:inherit;text-decoration:none;transition:border-color var(--duration-fast, .14s),transform var(--duration-fast, .14s)}.insight-card:hover{text-decoration:none;border-color:var(--accent);transform:translateY(-1px)}.insight-card-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.insight-card p{margin:0;font-size:var(--text-sm);color:var(--text-secondary);line-height:1.45}.insight-go{font-size:var(--text-xs);color:var(--accent);font-weight:600}.insight-warning{border-color:#d9770659;background:#d977060f}.insight-success{border-color:#16a34a4d;background:#16a34a0f}.insight-info{border-color:#1e6fd947;background:#1e6fd90d}.link-rail{display:flex;flex-direction:column;gap:.35rem}.link-rail-item{display:flex;flex-direction:column;gap:2px;padding:.7rem .85rem;border-radius:8px;color:inherit;text-decoration:none}.link-rail-item:hover{background:var(--bg-muted);text-decoration:none}.link-rail-meta{font-size:var(--text-xs);color:var(--text-muted)}.link-rail-label{font-size:var(--text-sm);font-weight:500}.contact-actions{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.contact-action{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 .75rem;border-radius:var(--radius-md, 10px);font-size:var(--text-sm, .8125rem);font-weight:600;text-decoration:none;border:1px solid transparent;white-space:nowrap}.contact-action:hover{text-decoration:none;filter:brightness(1.05)}.contact-action-call{background:#1e6fd91f;color:#1e6fd9;border-color:#1e6fd947}.contact-action-wa{background:#25d36624;color:#128c7e;border-color:#25d36659}.contact-action-sms{background:#6c757d1f;color:var(--text-secondary, #5a6570);border-color:#6c757d47}.contact-action-waze{background:#33c9ff29;color:#0891b2;border-color:#33c9ff66}.contact-action-maps{background:#4285f41f;color:#1a73e8;border-color:#4285f459}.contact-actions-compact .contact-action{min-width:40px;min-height:32px;padding:0 .45rem;font-size:.7rem}.supplier-compare-list{display:flex;flex-direction:column;gap:.5rem}.supplier-compare-row{display:grid;grid-template-columns:1fr auto auto;gap:.75rem;align-items:center;padding:.65rem .75rem;border:1px solid var(--border, rgba(0, 0, 0, .08));border-radius:var(--radius-md, 10px);background:var(--surface-2, rgba(0, 0, 0, .02))}.supplier-compare-row.is-best{border-color:#10b98173;background:#10b98114}.supplier-compare-row.is-preferred{box-shadow:inset 3px 0 #0891b2}.entity-extras{margin-top:1rem;padding:.9rem 1rem;border:1px solid var(--border, rgba(0, 0, 0, .08));border-radius:var(--radius-md, 12px);background:var(--surface-2, rgba(0, 0, 0, .02));display:flex;flex-direction:column;gap:.75rem}.entity-extras-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem}.entity-extras-actions{display:flex;flex-wrap:wrap;gap:.4rem}.entity-extras-hint{margin:0;font-size:var(--text-sm, .8125rem);color:var(--text-secondary, #5a6570);line-height:1.5}.entity-extras-create{padding-top:.25rem}.entity-extras-create-actions{grid-column:1 / -1;display:flex;gap:.5rem;justify-content:flex-end}.entity-extras-upload{padding-top:.15rem}.entity-extras-def-list,.entity-extras-docs{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.45rem}.entity-extras-def-list li,.entity-extras-docs li{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.55rem .65rem;border-radius:10px;background:var(--surface, #fff);border:1px solid var(--border, rgba(0, 0, 0, .06))}.entity-extras-code{font-size:.7rem;opacity:.8}.create-form{display:flex;flex-direction:column;gap:1.1rem}.form-section{display:flex;flex-direction:column;gap:.75rem;padding:.85rem .95rem 1rem;border:1px solid var(--border, rgba(0, 0, 0, .08));border-radius:var(--radius-md, 12px);background:var(--surface, #fff)}.form-section-head{display:flex;flex-direction:column;gap:.2rem;padding-bottom:.15rem;border-bottom:1px solid var(--border, rgba(0, 0, 0, .06))}.form-section-title{margin:0;font-size:var(--text-sm, .8125rem);font-weight:700;letter-spacing:.01em;color:var(--text, #1a1f24)}.form-section-hint{margin:0;font-size:var(--text-xs, .75rem);color:var(--text-secondary, #5a6570);line-height:1.4}.form-section-body{margin:0}.form-span-2{grid-column:1 / -1}@media (max-width: 767px){.form-section{padding:.75rem .8rem .9rem}}.near-suppliers{display:flex;flex-direction:column;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.near-suppliers-head{display:flex;flex-direction:column;gap:2px}.near-suppliers-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.near-suppliers-list li{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--bg-subtle, rgba(0, 0, 0, .02))}.near-suppliers-list small{display:block;color:var(--text-muted);font-size:11px;margin-top:2px}.near-suppliers-nav{display:flex;gap:8px;font-size:var(--text-xs);font-weight:700;flex-shrink:0}.near-suppliers-map-link{font-size:var(--text-sm);font-weight:600}.supplier-compare{display:flex;flex-direction:column;gap:6px;min-width:0}.supplier-compare-toggle{display:inline-flex;align-items:center;gap:4px;min-height:28px;padding:2px 8px;border-radius:8px;border:1px solid var(--border);background:var(--surface, #fff);color:var(--text);font-size:var(--text-xs);cursor:pointer;line-height:1}.supplier-compare-toggle:hover,.supplier-compare-toggle.is-open{border-color:var(--accent);color:var(--accent);background:var(--accent-muted, rgba(30, 111, 217, .08))}.supplier-compare-toggle-label{font-weight:600}.supplier-compare-panel{margin-top:2px;padding:8px 10px;border-radius:10px;border:1px solid var(--border);background:color-mix(in srgb,var(--bg-subtle, #f4f6f8) 88%,transparent)}.supplier-compare-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.supplier-compare-list li{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;font-size:var(--text-sm)}.supplier-compare-list li.is-best{font-weight:600}.supplier-compare-tag{display:inline-block;margin-inline-start:6px;padding:1px 6px;border-radius:999px;font-size:10px;font-weight:600;background:var(--bg-muted, rgba(0, 0, 0, .06));color:var(--text-secondary)}.supplier-compare-tag.is-best{background:color-mix(in srgb,var(--success, #1a8f5c) 18%,transparent);color:var(--success, #1a8f5c)}.supplier-compare.is-compact .supplier-compare-panel{padding:6px 8px}.insight-bulb{display:flex;flex-direction:column;gap:var(--space-3);margin:var(--space-3) 0}.insight-bulb-card{display:grid;grid-template-columns:auto 1fr;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--border);background:linear-gradient(135deg,#ffd6662e,#1e6fd90f);animation:insight-in .35s ease both}.insight-bulb-card[data-tone=success]{background:linear-gradient(135deg,#2ea0431f,#1e6fd90d)}.insight-bulb-card[data-tone=warn]{background:linear-gradient(135deg,#e6962829,#ffd6661a)}.insight-bulb-icon{width:2.25rem;height:2.25rem;border-radius:50%;display:grid;place-items:center;background:#ffc40040;font-size:1.15rem;box-shadow:0 0 #ffc40059;animation:bulb-pulse 2.4s ease-in-out infinite}.insight-bulb-card strong{display:block;font-size:var(--text-sm);margin-bottom:.15rem}.insight-bulb-card p{margin:0;font-size:var(--text-sm);color:var(--text-secondary);line-height:1.45}@keyframes bulb-pulse{0%,to{box-shadow:0 0 #ffc40040}50%{box-shadow:0 0 0 8px #ffc40000}}@keyframes insight-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.mca{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface, #fff)}.mca-head{display:flex;flex-direction:column;gap:.2rem}.mca-head p{margin:0;font-size:var(--text-sm);color:var(--text-secondary)}.mca-picker{display:flex;flex-direction:column;gap:0;max-height:min(42vh,340px);overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;padding:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-muted, rgba(0, 0, 0, .03))}.mca-chip{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.5rem;width:100%;min-height:44px;padding:10px 12px;border:0;border-bottom:1px solid var(--border);border-radius:0;background:transparent;font-size:var(--text-sm);text-align:start;cursor:pointer;transition:background .12s ease,color .12s ease}.mca-chip:last-child{border-bottom:0}.mca-chip:hover,.mca-chip:focus-visible{background:var(--bg-elevated, #fff);outline:none}.mca-chip.is-on{background:var(--accent-muted);color:var(--accent);font-weight:600}.mca-offers{display:flex;flex-direction:column;gap:var(--space-2);max-height:min(36vh,280px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.mca-offer{display:grid;grid-template-columns:1fr auto;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--border);background:linear-gradient(180deg,rgba(46,160,67,.06),transparent)}.mca-offer strong{font-size:var(--text-sm)}.mca-offer .meta{font-size:var(--text-xs);color:var(--text-secondary)}.mca-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);position:sticky;bottom:0;padding-top:4px;background:linear-gradient(180deg,transparent,var(--surface, #fff) 30%)}.mca-total{font-weight:600;font-size:var(--text-sm);color:var(--accent)}.pai-card{border:1px solid color-mix(in srgb,var(--accent, #1e6fd9) 28%,var(--border));background:color-mix(in srgb,var(--accent, #1e6fd9) 4%,var(--surface, #fff))}.pai-chat{display:flex;flex-direction:column;gap:var(--space-4)}.pai-warn{padding:10px 12px;border-radius:10px;border:1px solid color-mix(in srgb,var(--danger, #c0392b) 35%,var(--border));background:color-mix(in srgb,var(--danger, #c0392b) 8%,transparent);font-size:var(--text-sm)}.pai-bubbles{max-height:200px;overflow:auto;display:flex;flex-direction:column;gap:8px;padding:8px;border:1px solid var(--border);border-radius:10px;background:var(--surface, #fff)}.pai-bubble{max-width:94%;padding:8px 12px;border-radius:12px;font-size:var(--text-sm);line-height:1.45;white-space:pre-wrap}.pai-bubble.is-user{align-self:flex-start;background:var(--accent, #1e6fd9);color:#fff}.pai-bubble.is-assistant{align-self:flex-end;background:var(--surface-2, #f4f6f8);border:1px solid var(--border)}.pai-compose{display:flex;flex-direction:column;gap:10px}.pai-file-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.pai-file-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:8px;border:1px dashed var(--border);background:var(--surface, #fff);font-size:var(--text-sm);cursor:pointer}.pai-file-btn input{display:none}.pai-symbols,.pai-proposal,.pai-report{display:flex;flex-direction:column;gap:12px;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface, #fff)}.pai-report{border-color:color-mix(in srgb,var(--accent, #1e6fd9) 35%,var(--border));background:color-mix(in srgb,var(--accent, #1e6fd9) 6%,var(--surface, #fff))}.pai-report-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.pai-report-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pai-report-stats>div{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:10px;background:var(--surface, #fff);border:1px solid var(--border)}.pai-report-stats strong{font-size:1.25rem;font-variant-numeric:tabular-nums}.pai-report-cats{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.pai-report-cats li{display:flex;justify-content:space-between;gap:12px;font-size:var(--text-sm);padding:6px 0;border-bottom:1px solid var(--border)}.pai-report-cats li:last-child{border-bottom:0}.pai-new-project{padding-top:4px}.pai-rooms{display:flex;flex-direction:column;gap:6px}.pai-dest{display:flex;flex-direction:column;gap:8px}.pai-dest-opt{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--border);border-radius:10px;background:var(--surface, #fff);cursor:pointer;font-size:var(--text-sm)}.pai-dest-opt.is-on{border-color:color-mix(in srgb,var(--accent, #1e6fd9) 45%,var(--border));background:color-mix(in srgb,var(--accent, #1e6fd9) 8%,var(--surface, #fff))}.pai-report-stats{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.pai-symbol-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,1.2fr);gap:10px;align-items:center}.pai-proposal-table{display:flex;flex-direction:column;gap:10px}.pai-proposal-row{display:flex;gap:10px;align-items:flex-start;padding:10px;border:1px solid var(--border);border-radius:10px}.pai-check{padding-top:28px}.pai-proposal-main{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0}.pai-proposal-meta{display:grid;grid-template-columns:100px 1fr;gap:8px}@media (max-width: 720px){.pai-symbol-row,.pai-proposal-meta{grid-template-columns:1fr}}.qcp{display:flex;flex-direction:column;gap:8px;width:100%}.qcp-head{display:flex;flex-direction:column;gap:2px}.qcp-head span{color:var(--text-secondary, #64748b);font-size:var(--text-sm, .875rem)}.qcp-list{max-height:min(42vh,340px);overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;border:1px solid var(--border, #e2e8f0);border-radius:var(--radius-md, 10px);background:var(--bg-subtle, #f8fafc);touch-action:pan-y}.qcp-row{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;min-height:44px;padding:10px 12px;border:0;border-bottom:1px solid var(--border, #e2e8f0);background:transparent;text-align:right;cursor:pointer;font:inherit;color:inherit;transition:background .12s ease}.qcp-row:last-child{border-bottom:0}.qcp-row:hover,.qcp-row:focus-visible{background:var(--bg-elevated, #fff);outline:none}.qcp-row.is-added{background:color-mix(in srgb,var(--accent, #1e6fd9) 12%,transparent)}.qcp-name{font-weight:600;font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qcp-name small{font-weight:400;color:var(--text-secondary, #64748b)}.qcp-price{font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}.qcp-add{width:28px;height:28px;border-radius:999px;background:var(--accent, #1e4a8c);color:#fff;display:grid;place-items:center;font-weight:700;font-size:1.05rem;line-height:1;flex-shrink:0}.qcp-row.is-added .qcp-add{background:var(--success, #2ea043)}.mat-block{display:flex;flex-direction:column;gap:var(--space-4)}.mat-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;position:sticky;top:0;z-index:2;padding:8px 0;margin:-4px 0 0;background:color-mix(in srgb,var(--bg-elevated, #fff) 92%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.mat-toolbar .currency{margin-inline-start:auto;color:var(--accent)}.mat-lines{display:flex;flex-direction:column;gap:8px}.mat-line{display:grid;grid-template-columns:1fr;gap:8px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-subtle)}.mat-line.is-new{outline:2px solid color-mix(in srgb,var(--accent) 45%,transparent);outline-offset:1px}.mat-line-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.mat-line-total{font-weight:700;font-variant-numeric:tabular-nums;min-width:4.5rem}.mat-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;background:var(--accent-muted);border-radius:var(--radius-md);position:sticky;bottom:8px;z-index:1}.mat-footer .currency{font-size:var(--text-xl);color:var(--accent)}@media (min-width: 900px){.mat-line{grid-template-columns:minmax(0,2.2fr) 5.5rem 4.5rem 6.5rem auto;align-items:end}.mat-line-actions{justify-content:flex-end;padding-bottom:2px}}.barcode-scanner{display:grid;gap:var(--space-3)}.barcode-scanner-view{width:100%;min-height:220px;border-radius:var(--radius-md, 12px);overflow:hidden;background:#0a0e14}.barcode-scanner-view video{width:100%!important;border-radius:var(--radius-md, 12px)}.sku-scan-row{display:flex;gap:var(--space-2);align-items:flex-end}.sku-scan-row .field{flex:1}.product-attach{display:grid;gap:var(--space-2);padding-top:var(--space-2);border-top:1px dashed var(--border, #2a3441)}.product-attach-list{display:grid;gap:6px;margin:0;padding:0;list-style:none;font-size:var(--text-sm)}.product-attach-list li{display:flex;justify-content:space-between;gap:var(--space-2);align-items:center}.product-price-desk{margin-top:8px;padding:14px;border:1px solid var(--border);border-radius:var(--radius-md);background:color-mix(in srgb,var(--bg-subtle) 70%,var(--surface, #fff));display:flex;flex-direction:column;gap:16px}.product-price-desk-head strong{display:block;font-size:var(--text-base)}.product-price-desk-head p{margin:4px 0 0;font-size:var(--text-sm);color:var(--text-secondary);line-height:1.45}.product-price-section h4{margin:0 0 8px;font-size:var(--text-sm);font-weight:700}.product-price-insight{margin-bottom:10px;padding:8px 10px;border-radius:8px;background:color-mix(in srgb,#0d9488 12%,transparent);font-size:var(--text-sm)}.product-price-link{color:inherit;text-decoration:none}.product-price-link:hover{color:var(--accent);text-decoration:underline}.product-price-disclaimer{margin:10px 0 0;font-size:var(--text-xs);color:var(--text-muted);line-height:1.4}.product-price-web-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.product-price-web-links a{font-size:var(--text-sm);font-weight:600;color:var(--accent)}.product-price-note{margin-top:12px;padding:10px 12px;border-radius:10px;border:1px dashed color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 6%,transparent)}.product-price-note p{margin:6px 0;font-size:var(--text-sm);white-space:pre-wrap}.product-price-note small{color:var(--text-muted);font-size:var(--text-xs)}.market-search-error{margin:8px 0 0;font-size:var(--text-sm);color:var(--danger)}.supplier-products-note{margin:0 0 12px;font-size:var(--text-sm);color:var(--text-secondary);line-height:1.45}.supplier-products-table{display:flex;flex-direction:column;gap:0;border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;margin-bottom:14px}.supplier-products-head,.supplier-products-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:10px 12px}.supplier-products-head{background:var(--bg-subtle);font-size:var(--text-xs);font-weight:700;color:var(--text-muted)}.supplier-products-row{border-top:1px solid var(--border);background:var(--bg-elevated)}.supplier-products-name{font-weight:600;color:var(--accent);text-decoration:none}.supplier-products-name:hover{text-decoration:underline}.supplier-products-form{margin-top:4px;padding-top:12px;border-top:1px dashed var(--border)}@media (max-width: 720px){.supplier-products-head{display:none}.supplier-products-row{grid-template-columns:1fr auto;gap:6px 10px}.supplier-products-row>:nth-child(2){grid-column:1 / -1;font-size:var(--text-xs);color:var(--text-secondary)}}.qd-root{--qd-blue: #1e4a8c;--qd-blue-soft: #e8eef7;--qd-text: #1f2937;--qd-muted: #6b7280;--qd-line: #d1d5db;direction:rtl;color:var(--qd-text);background:#fff;font-family:Segoe UI,Tahoma,Arial,sans-serif;font-size:12.5px;line-height:1.45}.qd-page{max-width:820px;margin:0 auto;padding:28px 32px 20px;min-height:100%;box-sizing:border-box;position:relative}.qd-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:10px}.qd-biz{text-align:right}.qd-biz-name{font-size:18px;font-weight:700;color:#111827;margin:0 0 4px}.qd-biz-meta{margin:0;color:#374151;font-size:12.5px}.qd-logo{width:96px;height:96px;max-width:28vw;object-fit:contain;object-position:left center;flex-shrink:0;background:#fff;border:1px solid var(--qd-line);border-radius:10px;padding:6px;box-sizing:border-box;-webkit-print-color-adjust:exact;print-color-adjust:exact}.qd-logo-fallback{width:96px;height:96px;border-radius:12px;background:linear-gradient(145deg,var(--qd-blue),#0f2d5c);color:#fff;display:grid;place-items:center;font-weight:800;font-size:22px;letter-spacing:.5px;flex-shrink:0;-webkit-print-color-adjust:exact;print-color-adjust:exact}.qd-title-wrap{text-align:center;margin:8px 0 18px}.qd-title{margin:0;color:var(--qd-blue);font-size:28px;font-weight:800;letter-spacing:.2px}.qd-subtitle{margin:4px 0 0;color:var(--qd-muted);font-size:13px}.qd-info{display:grid;grid-template-columns:1.2fr 1.1fr .9fr;gap:12px 20px;margin-bottom:18px}.qd-info h4{margin:0 0 6px;font-size:13px;font-weight:700;color:#111827}.qd-info p{margin:0 0 2px;color:#374151}.qd-table{width:100%;border-collapse:collapse;table-layout:fixed;margin-bottom:14px}.qd-table thead th{background:var(--qd-blue);color:#fff;font-weight:600;padding:8px 6px;border:1px solid var(--qd-blue);font-size:12px}.qd-table tbody td{padding:7px 6px;border:1px solid #e5e7eb;vertical-align:top;word-break:break-word}.qd-table tbody tr:nth-child(2n) td{background:#f3f4f6}.qd-table .num{text-align:center;font-variant-numeric:tabular-nums;white-space:nowrap}.qd-table .sku{width:8%;text-align:center}.qd-table .desc{width:46%;text-align:right}.qd-table .qty,.qd-table .unit,.qd-table .sum{width:15%}.qd-totals{width:280px;margin-right:auto;margin-left:0;margin-bottom:16px}.qd-totals-row{display:flex;justify-content:space-between;gap:12px;padding:4px 2px;font-variant-numeric:tabular-nums}.qd-totals-row.is-discount{color:#4b5563}.qd-totals-pay{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:6px;background:var(--qd-blue);color:#fff;font-weight:700;padding:8px 12px;border-radius:2px}.qd-notes h4{margin:0 0 6px;font-size:13px}.qd-notes p{margin:0;color:#4b5563;white-space:pre-wrap}.qd-sign{margin-top:28px;display:grid;grid-template-columns:1fr 1fr;gap:24px;page-break-inside:avoid}.qd-sign-box{border-top:1px solid var(--qd-line);padding-top:10px;min-height:90px}.qd-sign-box strong{display:block;margin-bottom:8px;font-size:12.5px}.qd-sign-img{max-width:100%;max-height:90px;display:block}.qd-sign-line{margin-top:48px;border-bottom:1px solid #9ca3af;height:1px}.qd-sign-meta{margin-top:6px;color:var(--qd-muted);font-size:11px}.qd-footer{margin-top:28px;padding-top:10px;border-top:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:flex-end;gap:12px;color:var(--qd-muted);font-size:11px}.qd-badge{display:flex;align-items:center;gap:6px;color:var(--qd-blue);font-weight:600}.qd-badge-dot{width:14px;height:14px;border-radius:50%;background:var(--qd-blue);color:#fff;font-size:10px;display:grid;place-items:center}@media print{@page{size:A4;margin:10mm}body *{visibility:hidden}.qd-print-area,.qd-print-area *{visibility:visible}.qd-print-area{position:absolute;top:0;right:0;bottom:0;left:0;width:100%}.qd-page{max-width:none;padding:0}.qd-logo,.qd-logo-fallback{-webkit-print-color-adjust:exact;print-color-adjust:exact}.no-print{display:none!important}}.sig-pad{display:flex;flex-direction:column;gap:8px;width:100%}.sig-pad-label{margin:0;font-size:.9rem;font-weight:600;color:var(--text, #0f172a)}.sig-pad-modes{display:inline-flex;gap:4px;padding:3px;border-radius:10px;background:#e2e8f0}.sig-pad-mode{border:0;background:transparent;padding:6px 12px;border-radius:8px;font-weight:600;font-size:.85rem;cursor:pointer;color:#334155}.sig-pad-mode.is-on{background:#fff;color:#0f172a;box-shadow:0 1px 3px #0f172a1f}.sig-pad-mode:focus-visible{outline:3px solid #2563eb;outline-offset:1px}.sig-pad-type{display:flex;flex-direction:column;gap:8px}.sig-pad-type label{font-size:.85rem;font-weight:600}.sig-pad-frame.has-preview{pointer-events:none}.sig-pad-frame{position:relative;border:2px dashed var(--border, #94a3b8);border-radius:var(--radius-md, 10px);background:#fff;overflow:hidden;touch-action:none}.sig-pad-frame.has-ink{border-style:solid;border-color:#64748b}.sig-pad-frame.is-disabled{opacity:.55;pointer-events:none}.sig-pad-canvas{display:block;width:100%;height:180px;cursor:crosshair;touch-action:none}.sig-pad-canvas:focus-visible{outline:3px solid #2563eb;outline-offset:2px}.sig-pad-hint{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none;color:#64748b;font-size:var(--text-sm, .875rem);padding:12px;text-align:center}.sig-pad-actions{display:flex;justify-content:flex-start}@media (prefers-contrast: more){.sig-pad-frame{border-color:#000;border-width:3px}.sig-pad-hint{color:#000}}.qw-page{max-width:920px}.qw-steps{display:flex;gap:10px;list-style:none;margin:0 0 var(--space-4);padding:0;flex-wrap:wrap}.qw-steps li{padding:6px 12px;border-radius:999px;border:1px solid var(--border);font-size:var(--text-sm);color:var(--text-secondary, #5b6570)}.qw-steps li.is-on{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--text);font-weight:600}.qw-steps li.is-done{opacity:.7}.qw-panel,.qw-review{display:flex;flex-direction:column;gap:16px;padding:18px;border:1px solid var(--border);border-radius:16px;background:var(--surface, #fff)}.qw-panel h2{margin:0;font-size:1.25rem}.qw-examples{display:flex;flex-wrap:wrap;gap:8px}.qw-chip{border:1px dashed var(--border);background:var(--surface-2, #f6f7f9);border-radius:999px;padding:6px 10px;font-size:var(--text-xs);cursor:pointer;text-align:start}.qw-chip:hover{border-color:var(--accent)}.qw-file-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.qw-file{display:inline-flex;align-items:center;padding:8px 12px;border-radius:10px;border:1px dashed var(--border);cursor:pointer;font-size:var(--text-sm)}.qw-file input{display:none}.qw-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.qw-check{display:flex;align-items:center;gap:8px;font-size:var(--text-sm)}.qw-warn{padding:10px 12px;border-radius:10px;border:1px solid color-mix(in srgb,var(--danger, #c0392b) 35%,var(--border));background:color-mix(in srgb,var(--danger, #c0392b) 8%,transparent);font-size:var(--text-sm)}.qw-profit{display:flex;flex-direction:column;gap:10px;padding:16px;border-radius:14px;border:1px solid var(--border)}.qw-profit.is-ok{border-color:color-mix(in srgb,var(--success, #0a7) 40%,var(--border));background:color-mix(in srgb,var(--success, #0a7) 8%,transparent)}.qw-profit.is-low{border-color:color-mix(in srgb,var(--warning, #c90) 45%,var(--border));background:color-mix(in srgb,var(--warning, #c90) 10%,transparent)}.qw-profit strong{display:block;font-size:1.8rem;font-variant-numeric:tabular-nums}.qw-profit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.qw-profit-grid span{display:block;font-size:var(--text-xs);color:var(--text-secondary, #5b6570)}.qw-profit p{margin:0;font-size:var(--text-sm)}.qw-ai-note,.qw-box{padding:12px;border-radius:12px;border:1px solid var(--border);background:var(--bg-subtle, #f8fafc)}.qw-ai-note p,.qw-box ul{margin:6px 0 0;font-size:var(--text-sm)}.qw-box ul{padding-inline-start:1.1rem}.qw-lines-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.qw-lines{display:flex;flex-direction:column;gap:10px}.qw-line{display:flex;gap:10px;padding:10px;border:1px solid var(--border);border-radius:12px}.qw-line-check{padding-top:28px}.qw-line-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}.qw-line-meta{display:grid;grid-template-columns:90px 110px 110px 1fr;gap:8px}.qw-refine,.qw-actions{display:flex;flex-direction:column;gap:10px}.qw-actions{flex-direction:row;flex-wrap:wrap}@media (max-width: 720px){.qw-grid,.qw-line-meta,.qw-profit-grid{grid-template-columns:1fr}}.biz-growth{display:flex;flex-direction:column;gap:var(--space-4)}.biz-growth-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--space-3)}.biz-growth-summary>div{display:flex;flex-direction:column;gap:.15rem;padding:.85rem 1rem;border-radius:var(--radius-md);border:1px solid var(--border);background:linear-gradient(165deg,color-mix(in srgb,var(--accent) 7%,transparent),transparent 70%),var(--surface, #fff)}.biz-growth-summary strong{font-size:var(--text-xl);font-weight:700;color:var(--text);line-height:1.15}.biz-growth-summary span{font-size:var(--text-xs);color:var(--text-secondary)}.biz-growth-summary em{font-style:normal;font-size:11px;font-weight:600;margin-top:2px}.biz-growth-summary em.up{color:var(--success, #1a8f5c)}.biz-growth-summary em.down{color:var(--danger, #c0392b)}.biz-growth-toolbar{display:flex;flex-wrap:wrap;gap:10px}.biz-growth-seg{display:inline-flex;padding:3px;border-radius:10px;border:1px solid var(--border);background:var(--bg-subtle, rgba(0, 0, 0, .03));gap:2px}.biz-growth-seg button{border:0;background:transparent;color:var(--text-secondary);font-size:var(--text-sm);font-weight:600;padding:.4rem .85rem;border-radius:8px;cursor:pointer}.biz-growth-seg button.is-on{background:var(--surface, #fff);color:var(--text);box-shadow:0 1px 2px #0000000f}.biz-growth-metrics{display:flex;flex-wrap:wrap;gap:8px}.biz-growth-metric{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);background:var(--surface, #fff);color:var(--text-secondary);font-size:var(--text-xs);font-weight:600;padding:.35rem .7rem;border-radius:999px;cursor:pointer}.biz-growth-metric.is-on{border-color:color-mix(in srgb,var(--metric) 45%,var(--border));color:var(--text);background:color-mix(in srgb,var(--metric) 10%,var(--surface, #fff))}.biz-growth-swatch{width:8px;height:8px;border-radius:50%;background:var(--metric, var(--accent))}.biz-growth-chart-wrap{position:relative;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface, #fff);padding:8px 8px 4px;overflow:hidden}.biz-growth-svg{width:100%;height:auto;display:block;min-height:220px}.biz-growth-grid{stroke:var(--border);stroke-width:1;stroke-dasharray:3 4}.biz-growth-axis{fill:var(--text-muted, #888);font-size:10px}.biz-growth-area{opacity:.12}.biz-growth-dot{stroke:var(--surface, #fff);stroke-width:1.5}.biz-growth-cross{stroke:color-mix(in srgb,var(--accent) 55%,var(--border));stroke-width:1;stroke-dasharray:4 3}.biz-growth-tip{margin:4px 8px 10px;padding:10px 12px;border-radius:10px;background:color-mix(in srgb,var(--accent) 6%,var(--bg-subtle, #f4f6f8));border:1px solid color-mix(in srgb,var(--accent) 16%,var(--border))}.biz-growth-tip strong{display:block;margin-bottom:6px;font-size:var(--text-sm)}.biz-growth-tip ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 14px}.biz-growth-tip li{display:inline-flex;align-items:center;gap:6px;font-size:var(--text-xs);font-weight:600}.biz-growth-tip li span{width:8px;height:8px;border-radius:50%}.biz-growth-tip small{font-weight:500;color:var(--text-muted)}.biz-growth-hint{margin:2px 10px 10px;font-size:var(--text-xs);color:var(--text-muted)}@media (max-width: 720px){.biz-growth-summary{grid-template-columns:1fr 1fr}.biz-growth-toolbar{flex-direction:column}.biz-growth-seg{width:100%}.biz-growth-seg button{flex:1}}.pp-form{gap:var(--space-3)}.pp-toggle{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;cursor:pointer}.pp-fieldset{border:1px solid var(--border);border-radius:10px;padding:10px 12px;margin:0}.pp-fieldset legend{padding:0 6px;font-size:12px;font-weight:700}.pp-toggles{display:flex;flex-wrap:wrap;gap:8px 12px}.pp-themes{display:flex;flex-wrap:wrap;gap:6px}.pp-theme{border:1px solid var(--border);background:var(--bg-subtle, #f4f6f8);border-radius:8px;padding:.35rem .7rem;font-size:12px;font-weight:700;cursor:pointer}.pp-theme.is-on{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent)}.pp-layout{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.pp-layout li{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:6px 8px;border:1px solid var(--border);border-radius:8px;font-size:12px;font-weight:600}.pp-layout-btns{display:inline-flex;gap:4px}.pp-layout-btns button,.pp-gallery-actions button{border:1px solid var(--border);background:var(--surface, #fff);border-radius:6px;width:28px;height:28px;cursor:pointer;font-size:12px;font-weight:700}.pp-gallery-block{margin-top:var(--space-4);display:flex;flex-direction:column;gap:8px}.pp-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px}.pp-gallery-item img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px;border:1px solid var(--border)}.pp-gallery-actions{display:flex;gap:4px;margin-top:4px}.pp-gallery-actions button:last-child{width:auto;padding:0 6px;font-size:11px}.pp-share{margin-top:var(--space-4);display:flex;flex-wrap:wrap;gap:12px;align-items:center}.pp-share code{display:block;font-size:11px;word-break:break-all;margin-top:4px}.settings-layout{display:grid;gap:var(--space-4, 16px)}@media (min-width: 900px){.settings-layout{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:var(--space-5, 20px)}}.settings-nav{display:flex;flex-direction:row;gap:6px;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch;scrollbar-width:thin}@media (min-width: 900px){.settings-nav{flex-direction:column;overflow:visible;position:sticky;top:12px;padding:10px;border-radius:var(--radius-lg, 14px);border:1px solid var(--border, #e2e8f0);background:var(--bg-elevated, #fff)}}.settings-nav-btn{flex:0 0 auto;display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:start;border:1px solid var(--border, #e2e8f0);background:var(--bg-elevated, #fff);color:var(--text, #0f172a);border-radius:12px;padding:10px 12px;min-width:9.5rem;cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}@media (min-width: 900px){.settings-nav-btn{min-width:0;width:100%}}.settings-nav-btn:hover{border-color:var(--accent, #1e6fd9)}.settings-nav-btn:focus-visible{outline:3px solid #2563eb;outline-offset:2px}.settings-nav-btn.is-active{border-color:var(--accent, #1e6fd9);background:color-mix(in srgb,var(--accent, #1e6fd9) 10%,transparent);box-shadow:inset 3px 0 0 var(--accent, #1e6fd9)}.settings-nav-label{font-weight:700;font-size:.92rem;line-height:1.25}.settings-nav-hint{font-size:.72rem;color:var(--text-muted, #64748b);line-height:1.3}.settings-panel{display:flex;flex-direction:column;gap:var(--space-4, 16px);min-width:0}.settings-panel-title{margin:0;font-size:1.15rem;font-weight:700}.settings-panel-desc{margin:-8px 0 0;color:var(--text-muted, #64748b);font-size:.9rem}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.map-page{display:flex;flex-direction:column;gap:8px;min-height:0}.map-page .page-header{gap:4px}.map-page .page-header-desc{display:none}.map-toolbar{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.map-layers,.map-periods{display:inline-flex;flex-wrap:wrap;gap:2px;padding:2px;border:1px solid var(--border);border-radius:8px;background:var(--bg-subtle, rgba(0, 0, 0, .03))}.map-layer-chip{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:.2rem .45rem;cursor:pointer}.map-periods button{border:0;background:transparent;font-size:12px;font-weight:700;padding:.3rem .65rem;border-radius:6px;cursor:pointer;color:var(--text-secondary)}.map-periods button.is-on{background:var(--accent, #1e6fd9);color:#fff}.map-periods button:disabled{opacity:.45;cursor:not-allowed}.map-current-only{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;color:var(--text-secondary);cursor:pointer}.map-link-btn{border:0;background:transparent;color:var(--accent);font-size:11px;font-weight:700;cursor:pointer;padding:.2rem .35rem}.map-period-stats{margin-inline-start:auto;font-size:11px;font-weight:700;color:var(--text-secondary)}.map-gps-badge{font-size:10px;font-weight:800;padding:.2rem .5rem;border-radius:999px;background:color-mix(in srgb,var(--danger, #c0392b) 12%,transparent);color:var(--danger, #c0392b)}.map-gps-badge.is-ok{background:color-mix(in srgb,var(--success, #1a8f5c) 14%,transparent);color:var(--success, #1a8f5c)}.map-layout{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:8px;min-height:min(72vh,580px);flex:1}.map-canvas-wrap{position:relative;border:1px solid var(--border);border-radius:10px;overflow:hidden;min-height:380px;background:var(--bg-subtle)}.map-canvas{width:100%;height:100%;min-height:380px}.map-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:color-mix(in srgb,var(--bg) 55%,transparent);font-size:var(--text-sm);font-weight:600;pointer-events:none;z-index:500}.map-side{display:flex;flex-direction:column;gap:6px;min-height:0;overflow:auto}.map-card{border:1px solid var(--border);border-radius:8px;background:var(--surface, #fff);padding:8px 10px;display:flex;flex-direction:column;gap:4px}.map-card-title-row{display:flex;justify-content:space-between;align-items:center;gap:6px}.map-card p{margin:0;font-size:12px}.map-card-actions{display:flex;flex-wrap:wrap;gap:4px}.map-route-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px;max-height:280px;overflow:auto}.map-route-list button{width:100%;text-align:start;border:1px solid var(--border);background:var(--bg-subtle, #f6f8fa);border-radius:6px;padding:6px 8px;cursor:pointer;display:flex;flex-direction:column;gap:1px}.map-route-list button:hover,.map-route-list button.is-selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.map-route-list small{color:var(--text-muted);font-size:10px}.map-route-list li{display:flex;flex-direction:column;gap:3px}.map-route-open{margin:2px 0 4px}.map-route-ext{display:flex;gap:10px;padding-inline:2px}.map-route-ext a{font-size:11px;font-weight:700;color:var(--accent);text-decoration:none}.map-route-ext a:hover{text-decoration:underline}.map-legend{display:flex;flex-wrap:wrap;gap:8px;font-size:10px;font-weight:600;padding:4px 2px;color:var(--text-secondary)}.map-legend span{display:inline-flex;align-items:center;gap:4px}.map-legend i{width:8px;height:8px;border-radius:50%;display:inline-block}.dvir-map-pin{background:transparent!important;border:0!important}.dvir-map-pin span{display:grid;place-items:center;width:26px;height:26px;border-radius:50% 50% 50% 4px;transform:rotate(-45deg);background:var(--pin, #1e6fd9);color:#fff;font-size:11px;font-weight:800;line-height:1;box-shadow:0 2px 5px #00000038}@media (max-width: 900px){.map-layout{grid-template-columns:1fr;min-height:auto}.map-canvas-wrap,.map-canvas{min-height:300px}.map-period-stats{margin-inline-start:0;width:100%}}.pub-skip{position:absolute;inset-inline-start:12px;top:-48px;z-index:100;padding:8px 14px;border-radius:8px;background:#0f172a;color:#fff;font-weight:600;font-size:.9rem;text-decoration:none;box-shadow:0 4px 16px #0f172a59}.pub-skip:focus{top:12px;outline:3px solid #38bdf8;outline-offset:2px}.pub-legal{max-width:820px;margin:16px auto 0;padding:14px 16px;border-radius:12px;background:#f8fafc;border:1px solid #e2e8f0;color:#334155;font-size:.85rem;line-height:1.55;display:flex;flex-direction:column;gap:10px}.pub-legal-title{margin:0;font-size:.95rem;font-weight:700;color:#0f172a}.pub-legal-meta{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center}.pub-legal-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;border:1px solid #cbd5e1;font-size:.75rem;font-weight:700;letter-spacing:.02em;color:#1e293b;background:#fff}.pub-legal details{border-top:1px solid #e2e8f0;padding-top:8px}.pub-legal summary{cursor:pointer;font-weight:600;color:#0f172a;list-style-position:outside}.pub-legal summary:focus-visible{outline:3px solid #2563eb;outline-offset:2px;border-radius:4px}.pub-legal details p{margin:8px 0 0;color:#475569}.pub-consent{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:10px;background:#eff6ff;border:1px solid #bfdbfe;color:#1e3a8a;font-size:.88rem;line-height:1.45}.pub-consent input{margin-top:3px;width:1.15rem;height:1.15rem;accent-color:#1d4ed8;flex-shrink:0}.pub-consent.is-error{border-color:#fca5a5;background:#fef2f2;color:#991b1b}.pub-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (prefers-reduced-motion: reduce){.pub-legal,.pq-shell *,.public-card *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media (prefers-contrast: more){.pub-legal,.pub-consent{border-color:#0f172a;background:#fff;color:#000}}.public-card{--pc-accent: #1e6fd9;--pc-fg: #f4f7fb;--pc-muted: rgba(244, 247, 251, .72);--pc-card: rgba(12, 18, 28, .55);--pc-bg1: #0b1220;--pc-bg2: #152238;position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;color:var(--pc-fg);font-family:Segoe UI,Heebo,system-ui,sans-serif;background:var(--pc-bg1)}.public-card.bg-gradient{background:linear-gradient(165deg,var(--pc-bg1),var(--pc-bg2) 55%,color-mix(in srgb,var(--pc-accent) 35%,#0a0f18))}.public-card.bg-solid{background:var(--pc-bg1)}.public-card.theme-ocean{--pc-bg1: #061820;--pc-bg2: #0c3a4a;--pc-accent: #2bb3c0}.public-card.theme-warm{--pc-bg1: #1a120c;--pc-bg2: #3a2416;--pc-accent: #d4894a}.public-card.theme-forest{--pc-bg1: #0c1610;--pc-bg2: #1a3324;--pc-accent: #3d9b6a}.public-card.theme-dark{--pc-bg1: #050505;--pc-bg2: #141414;--pc-accent: #e8e8e8;--pc-fg: #f5f5f5}.public-card.theme-light{--pc-bg1: #eef2f7;--pc-bg2: #dfe7f1;--pc-fg: #15202b;--pc-muted: rgba(21, 32, 43, .65);--pc-card: rgba(255, 255, 255, .82);--pc-accent: #1e6fd9}.public-card.theme-slate{--pc-bg1: #0b1220;--pc-bg2: #1a2740}.public-card-loading,.public-card-empty{min-height:100dvh;display:grid;place-content:center;gap:12px;padding:24px;text-align:center;background:#0b1220;color:#e8eef7}.pc-reel{height:100dvh;overflow-y:auto;scroll-snap-type:y mandatory;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch}.pc-screen{height:100dvh;scroll-snap-align:start;scroll-snap-stop:always;position:relative;flex-shrink:0}.pc-card-screen{display:grid;place-items:center;padding:16px 16px 48px}.pc-card{width:min(420px,100%);max-height:calc(100dvh - 64px);overflow:auto;padding:22px 18px 16px;border-radius:22px;background:var(--pc-card);border:1px solid color-mix(in srgb,var(--pc-fg) 12%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 20px 50px #00000047;display:flex;flex-direction:column;gap:14px}.pc-hero{text-align:center;display:flex;flex-direction:column;align-items:center;gap:6px}.pc-logo{width:72px;height:72px;object-fit:contain;border-radius:18px;background:#ffffff14}.pc-glyph{width:72px;height:72px;border-radius:18px;display:grid;place-items:center;font-size:1.8rem;font-weight:800;background:color-mix(in srgb,var(--pc-accent) 28%,transparent);color:var(--pc-fg)}.pc-name{margin:4px 0 0;font-size:1.55rem;font-weight:800;letter-spacing:-.02em;line-height:1.15}.pc-tagline{margin:0;color:var(--pc-accent);font-weight:700;font-size:.95rem}.pc-headline{margin:0;color:var(--pc-muted);font-size:.88rem}.pc-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(88px,1fr));gap:8px}.pc-icon-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:68px;padding:8px 6px;border-radius:14px;border:1px solid color-mix(in srgb,var(--pc-fg) 14%,transparent);background:color-mix(in srgb,var(--pc-fg) 6%,transparent);color:inherit;text-decoration:none;font-size:11px;font-weight:700;cursor:pointer}.pc-icon-btn.is-primary{background:var(--pc-accent);color:#fff;border-color:transparent}.pc-icon-btn.is-wa{background:#25d366;color:#fff;border-color:transparent}.pc-ico{font-size:1.15rem;line-height:1}.pc-block{font-size:.88rem}.pc-about{margin:0;color:var(--pc-muted);line-height:1.45;text-align:center}.pc-chips{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.pc-chip{padding:.25rem .55rem;border-radius:999px;font-size:11px;font-weight:700;background:color-mix(in srgb,var(--pc-accent) 18%,transparent);border:1px solid color-mix(in srgb,var(--pc-accent) 35%,transparent)}.pc-hours{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.pc-hours li{display:flex;justify-content:space-between;gap:12px;color:var(--pc-muted);font-size:12px}.pc-contact{text-align:center;color:var(--pc-muted);display:flex;flex-direction:column;gap:2px;font-size:12px}.pc-social{display:flex;justify-content:center;gap:12px}.pc-social a{color:var(--pc-accent);font-weight:700;font-size:12px;text-decoration:none}.pc-qr{display:grid;place-items:center}.pc-qr img{border-radius:10px;background:#fff;padding:4px}.pc-swipe-hint{margin:0;text-align:center;font-size:11px;font-weight:700;color:var(--pc-muted);animation:pc-pulse 2.2s ease-in-out infinite}@keyframes pc-pulse{0%,to{opacity:.55;transform:translateY(0)}50%{opacity:1;transform:translateY(3px)}}.pc-work-screen{background:#000}.pc-work-screen img{width:100%;height:100%;object-fit:cover;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.pc-work-meta{position:absolute;inset-inline:16px;bottom:56px;display:flex;flex-direction:column;gap:4px;text-shadow:0 1px 8px rgba(0,0,0,.7);pointer-events:none}.pc-work-meta p{margin:0;font-size:.9rem;opacity:.9}.pc-work-meta span{font-size:11px;opacity:.7}.pc-fab-wa{position:absolute;inset-inline-end:16px;bottom:56px;width:52px;height:52px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;box-shadow:0 8px 20px #00000059;z-index:2}.pc-dots{position:absolute;inset-inline-end:10px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:5px;z-index:3;pointer-events:none}.pc-dots span{width:5px;height:5px;border-radius:50%;background:#ffffff59}.pc-dots span.is-on{background:#fff;height:12px;border-radius:4px}.pc-legal-panel{position:absolute;inset-inline:8px;bottom:8px;z-index:5;max-height:min(42vh,280px);overflow:auto;pointer-events:auto}.pc-legal-panel .pub-legal{margin:0;max-width:none;padding:10px 12px;font-size:.78rem;background:color-mix(in srgb,#0f172a 78%,transparent);border-color:color-mix(in srgb,#fff 18%,transparent);color:#e2e8f0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.pc-legal-panel .pub-legal-title{font-size:.82rem;color:#fff}.pc-legal-panel .pub-legal-badge{border-color:color-mix(in srgb,#fff 28%,transparent);color:#fff;background:transparent}.pc-legal-panel .pub-legal summary{color:#fff}.pc-legal-panel .pub-legal details{border-top-color:color-mix(in srgb,#fff 16%,transparent)}.pc-legal-panel .pub-legal details p{color:#cbd5e1}.public-card .pc-icon-btn:focus-visible,.public-card .pc-fab-wa:focus-visible{outline:3px solid #38bdf8;outline-offset:2px}.public-card .pc-reel:focus-visible{outline:3px solid #38bdf8;outline-offset:-4px}@media (min-width: 768px){.pc-card{padding:28px 24px 18px}.pc-name{font-size:1.75rem}}.pq-shell{position:relative;min-height:100vh;background:#e5e7eb;padding:16px 12px 48px;box-sizing:border-box}.pq-header{max-width:820px;margin:0 auto 14px;text-align:center}.pq-header-logo{display:block;width:72px;height:72px;object-fit:contain;margin:0 auto 10px;background:#fff;border-radius:12px;padding:6px;box-sizing:border-box;border:1px solid #e2e8f0}.pq-header-kicker{margin:0 0 4px;font-size:.8rem;font-weight:600;letter-spacing:.04em;color:#64748b;text-transform:uppercase}.pq-header-title{margin:0;font-size:1.35rem;color:#0f172a}.pq-header-sub{margin:6px 0 0;color:#475569;font-size:.95rem}.pq-main{outline:none}.pq-main:focus-visible{outline:3px solid #2563eb;outline-offset:4px;border-radius:8px}.pq-shell .qd-root{box-shadow:0 8px 28px #0f172a1f;border-radius:4px;overflow:hidden}.pq-actions{max-width:820px;margin:14px auto 0;display:flex;justify-content:flex-end;gap:8px}.pq-actions .btn:focus-visible,.pq-sign-card .btn:focus-visible,.pq-sign-card .input:focus-visible{outline:3px solid #2563eb;outline-offset:2px}.pq-sign-card{max-width:820px;margin:16px auto 0;background:#fff;border-radius:12px;padding:18px;box-shadow:0 6px 20px #0f172a14;display:flex;flex-direction:column;gap:12px}.pq-sign-card h2{margin:0;font-size:1.15rem;color:#0f172a}.pq-sign-card>p{margin:0;color:#475569;font-size:.9rem}.pq-signed{max-width:820px;margin:16px auto 0;background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0;border-radius:10px;padding:12px 16px;font-weight:600;text-align:center}@media print{.pq-shell{background:#fff;padding:0}.pq-shell .qd-root{box-shadow:none;border-radius:0}.no-print{display:none!important}}@media (prefers-contrast: more){.pq-shell{background:#fff}.pq-sign-card{border:2px solid #000;box-shadow:none}}:root{--font-display: "Segoe UI", Tahoma, "Noto Sans Hebrew", Arial, sans-serif;--font-body: "Segoe UI", Tahoma, "Noto Sans Hebrew", Arial, sans-serif;--text-xs: .75rem;--text-sm: .8125rem;--text-base: .9375rem;--text-lg: 1.0625rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--leading-tight: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.65;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 22px;--ease-out: cubic-bezier(.22, 1, .36, 1);--duration-fast: .14s;--duration: .22s;--sidebar-width: 260px;--sidebar-collapsed: 72px;--topbar-height: 56px;--bottom-nav-height: 64px;--touch-min: 44px;--content-max: 1400px;--shadow-sm: 0 1px 2px rgba(21, 32, 43, .04);--shadow-md: 0 6px 20px rgba(21, 32, 43, .06);--shadow-lg: 0 16px 48px rgba(21, 32, 43, .1);--bg: #f6f8fa;--bg-elevated: #ffffff;--bg-muted: #eef2f6;--bg-subtle: #f3f6f9;--border: #e2e8ef;--border-strong: #c5d0db;--text: #0f1720;--text-secondary: #526071;--text-muted: #7a8a9a;--text-inverse: #f7f9fb;--accent: #1e6fd9;--accent-hover: #185cb8;--accent-muted: rgba(30, 111, 217, .12);--accent-contrast: #ffffff;--success: #1a8f5c;--success-muted: rgba(26, 143, 92, .12);--warning: #c47a12;--warning-muted: rgba(196, 122, 18, .14);--danger: #c63b3b;--danger-muted: rgba(198, 59, 59, .12);--info: #2a7fa8;--overlay: rgba(15, 22, 30, .48);--focus-ring: 0 0 0 3px rgba(30, 111, 217, .28);--sidebar-bg: #1a2332;--sidebar-text: #c5d0dc;--sidebar-text-active: #ffffff;--sidebar-hover: rgba(255, 255, 255, .06);--sidebar-active: rgba(61, 155, 253, .18);--sidebar-accent: #3d9bfd}[data-theme=dark]{--bg: #0f1419;--bg-elevated: #171e27;--bg-muted: #1e2732;--bg-subtle: #141b24;--border: #2a3542;--border-strong: #3d4b5c;--text: #e8eef4;--text-secondary: #a8b6c4;--text-muted: #7a8b9c;--text-inverse: #0f1419;--accent: #3d9bfd;--accent-hover: #5aadff;--accent-muted: rgba(61, 155, 253, .16);--accent-contrast: #0a121c;--success: #34c07a;--success-muted: rgba(52, 192, 122, .14);--warning: #e0a03a;--warning-muted: rgba(224, 160, 58, .14);--danger: #e55a5a;--danger-muted: rgba(229, 90, 90, .14);--info: #4eb0d4;--overlay: rgba(0, 0, 0, .62);--focus-ring: 0 0 0 3px rgba(61, 155, 253, .35);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .28);--shadow-md: 0 4px 16px rgba(0, 0, 0, .36);--shadow-lg: 0 12px 40px rgba(0, 0, 0, .5);--sidebar-bg: #0c1118;--sidebar-text: #9aabbc;--sidebar-text-active: #f0f5fa;--sidebar-hover: rgba(255, 255, 255, .05);--sidebar-active: rgba(61, 155, 253, .2);--sidebar-accent: #3d9bfd}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;min-height:100dvh;font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--text);background:radial-gradient(1100px 520px at 100% -12%,rgba(30,111,217,.055),transparent 58%),radial-gradient(820px 460px at -8% 108%,rgba(26,143,92,.04),transparent 52%),var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:.01em}[data-theme=dark] body,[data-theme=dark]{background:radial-gradient(1100px 520px at 100% -15%,rgba(61,155,253,.09),transparent 55%),radial-gradient(800px 480px at -5% 105%,rgba(52,192,122,.05),transparent 50%),var(--bg)}#root{min-height:100dvh}html:has(.app-shell),html:has(.app-shell) body,html:has(.app-shell) #root{height:100%;max-height:100dvh;overflow:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:600;line-height:var(--leading-tight);margin:0;color:var(--text)}p{margin:0}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit;color:inherit}img,svg{display:block;max-width:100%}ul,ol{margin:0;padding:0;list-style:none}:focus-visible{outline:none;box-shadow:var(--focus-ring)}::selection{background:var(--accent-muted);color:var(--text)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.page{width:100%;max-width:var(--content-max);margin-inline:auto;padding:var(--space-3) var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.page-section{display:flex;flex-direction:column;gap:var(--space-4)}.stack{display:flex;flex-direction:column;gap:var(--space-3)}.row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}.grid-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:var(--space-2)}.stat-chips{display:flex;flex-wrap:wrap;gap:6px}.stat-chip{display:inline-flex;align-items:baseline;gap:6px;padding:.35rem .65rem;border:1px solid var(--border);border-radius:8px;background:var(--bg-elevated, var(--surface, #fff));font-size:12px;font-weight:600}.stat-chip strong{font-size:14px;font-variant-numeric:tabular-nums}.stat-chip span{color:var(--text-secondary);font-weight:600;font-size:11px}.grid-2,.form-grid{display:grid;grid-template-columns:1fr;gap:var(--space-4)}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.text-danger{color:var(--danger)}.text-success{color:var(--success)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.currency{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.skeleton{background:linear-gradient(90deg,var(--bg-muted) 0%,var(--bg-subtle) 50%,var(--bg-muted) 100%);background-size:200% 100%;animation:shimmer 1.2s ease-in-out infinite;border-radius:var(--radius-sm)}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@keyframes fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}:root{--slide-end-sign: 1}[dir=rtl]{--slide-end-sign: -1}@keyframes slide-in-end{0%{transform:translate(calc(100% * var(--slide-end-sign)))}to{transform:translate(0)}}@keyframes slide-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.animate-in{animation:fade-in var(--duration) var(--ease-out)}.page{width:100%;max-width:min(var(--content-max),100%);margin-inline:auto;padding:var(--space-4);box-sizing:border-box}.grid-2,.form-grid,.grid-stats{display:grid;gap:var(--space-3);grid-template-columns:1fr}.show-mobile-only{display:none}@media (min-width: 768px) and (max-width: 1024px){.page{padding:var(--space-5)}.grid-2,.form-grid{grid-template-columns:1fr 1fr}.grid-stats{grid-template-columns:repeat(2,1fr)}.page-header-title,.stat-value{font-size:var(--text-xl)}.catalog-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.table-toolbar{gap:var(--space-2)}.table-toolbar .input{max-width:220px;flex:1}.data-table th,.data-table td{padding:var(--space-2) var(--space-3)}.modal{width:min(560px,92vw)}.modal-lg{width:min(720px,94vw)}}@media (min-width: 1025px){.page{padding:var(--space-8)}.grid-2,.form-grid{grid-template-columns:1fr 1fr}.grid-stats{grid-template-columns:repeat(4,1fr)}.hide-desktop{display:none!important}}@media (max-width: 1024px){.hide-tablet-down{display:none!important}.col-optional{display:none}}@media (max-width: 767px){.hide-mobile{display:none!important}.show-mobile-only{display:initial}.page{padding:var(--space-3);padding-bottom:calc(var(--bottom-nav-height) + var(--space-6) + env(safe-area-inset-bottom,0px))}.page-header-top{flex-direction:column;align-items:stretch}.page-header-title{font-size:var(--text-xl)}.page-header-actions{width:100%}.page-header-actions .btn,.page-header-actions>*{flex:1;min-width:0}.full-width-mobile{width:100%}.grid-stats{grid-template-columns:1fr 1fr;gap:var(--space-2)}.stat-card{padding:var(--space-3)}.stat-value{font-size:var(--text-lg)}.form-grid{grid-template-columns:1fr}.col-tablet-only{display:none}.desktop-table-only{display:none!important}.overlay{align-items:flex-end;padding:0}.modal,.modal-lg{width:100%;max-height:min(92dvh,900px);border-radius:var(--radius-xl) var(--radius-xl) 0 0;animation:sheet-up var(--duration) var(--ease-out)}.modal-footer,.drawer-footer{flex-direction:column-reverse;padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom,0px))}.modal-footer .btn,.drawer-footer .btn{width:100%}.table-toolbar{flex-direction:column;align-items:stretch}.table-toolbar .input{max-width:none;width:100%}.tabs{gap:0;margin-inline:calc(-1 * var(--space-3));padding-inline:var(--space-3)}.tab-btn{padding:0 var(--space-3);font-size:var(--text-xs)}.login-page{padding:var(--space-4);padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom,0px))}.login-card{width:100%;max-width:none;padding:var(--space-5)}.catalog-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-2)}.entity-card{padding:var(--space-3) var(--space-4)}.search-modal{width:100%;max-height:100dvh;border-radius:0}.search-results{max-height:calc(100dvh - 140px)}.view-toggle{width:100%}.view-toggle button{flex:1}}@media (min-width: 768px){.show-mobile-only,.mobile-cards-only{display:none!important}.page{padding:var(--space-6)}.grid-2,.form-grid{grid-template-columns:1fr 1fr}.grid-stats{grid-template-columns:repeat(4,1fr)}}@media (min-width: 768px) and (max-width: 1024px){.grid-stats{grid-template-columns:repeat(2,1fr)}}@media (max-width: 380px){.grid-stats,.catalog-grid{grid-template-columns:1fr}.bottom-nav-item span:not(.bottom-nav-icon){font-size:.58rem}}@media (max-width: 767px) and (orientation: landscape){.bottom-nav{height:calc(52px + env(safe-area-inset-bottom,0px))}.page{padding-bottom:calc(52px + var(--space-4) + env(safe-area-inset-bottom,0px))}.modal,.modal-lg{max-height:96dvh}}@media (pointer: coarse){.btn,.nav-item,.tab-btn,.icon-btn,.bottom-nav-item,.entity-card{min-height:var(--touch-min)}.data-table th,.data-table td{padding-block:var(--space-3)}}@keyframes sheet-up{0%{transform:translateY(100%);opacity:.6}to{transform:translateY(0);opacity:1}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--touch-min);padding:0 var(--space-4);border:1px solid transparent;border-radius:var(--radius-md);font-family:var(--font-display);font-weight:500;font-size:var(--text-sm);cursor:pointer;transition:background var(--duration-fast),border-color var(--duration-fast),color var(--duration-fast),transform var(--duration-fast);white-space:nowrap;-webkit-user-select:none;user-select:none}.btn:active:not(:disabled){transform:scale(.98)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--accent-contrast)}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-secondary{background:var(--bg-elevated);border-color:var(--border);color:var(--text)}.btn-secondary:hover:not(:disabled){background:var(--bg-muted)}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover:not(:disabled){background:var(--bg-muted);color:var(--text)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover:not(:disabled){filter:brightness(1.05)}.btn-sm{min-height:36px;padding:0 var(--space-3);font-size:var(--text-xs)}.btn-lg{min-height:48px;padding:0 var(--space-6);font-size:var(--text-base)}.btn-block{width:100%}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:var(--touch-min);height:var(--touch-min);padding:0;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);cursor:pointer;transition:background var(--duration-fast),color var(--duration-fast)}.icon-btn:hover{background:var(--bg-muted);color:var(--text)}.field{display:flex;flex-direction:column;gap:var(--space-2)}.field-label{font-size:var(--text-sm);font-weight:500;color:var(--text-secondary)}.field-hint{font-size:var(--text-xs);color:var(--text-muted)}.field-error{font-size:var(--text-xs);color:var(--danger)}.input,.select,.textarea{width:100%;min-height:var(--touch-min);padding:0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-elevated);color:var(--text);transition:border-color var(--duration-fast),box-shadow var(--duration-fast)}.textarea{min-height:96px;padding:var(--space-3);resize:vertical}.input:hover,.select:hover,.textarea:hover{border-color:var(--border-strong)}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);box-shadow:var(--focus-ring);outline:none}.input-error,.select-error,.textarea-error{border-color:var(--danger)}.input::placeholder,.textarea::placeholder{color:var(--text-muted)}.select{-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='8' viewBox='0 0 12 8'%3E%3Cpath fill='%236b7c8d' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:left 12px center;padding-left:36px}.card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.card-body{padding:var(--space-3)}.card-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border)}.card-title{font-size:var(--text-base);font-weight:600}.card-clickable{cursor:pointer;transition:border-color var(--duration-fast),box-shadow var(--duration-fast),transform var(--duration-fast)}.card-clickable:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md)}.card-clickable:active{transform:scale(.995)}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:999px;font-size:var(--text-xs);font-weight:500;line-height:1.6;background:var(--bg-muted);color:var(--text-secondary)}.badge-accent{background:var(--accent-muted);color:var(--accent)}.badge-success{background:var(--success-muted);color:var(--success)}.badge-warning{background:var(--warning-muted);color:var(--warning)}.badge-danger{background:var(--danger-muted);color:var(--danger)}.tabs{display:flex;gap:var(--space-1);overflow-x:auto;-webkit-overflow-scrolling:touch;border-bottom:1px solid var(--border);scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tab-btn{flex-shrink:0;min-height:var(--touch-min);padding:0 var(--space-4);border:none;border-bottom:2px solid transparent;background:transparent;color:var(--text-muted);font-weight:500;font-size:var(--text-sm);cursor:pointer;transition:color var(--duration-fast),border-color var(--duration-fast)}.tab-btn:hover{color:var(--text)}.tab-btn-active{color:var(--accent);border-bottom-color:var(--accent)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:var(--overlay);display:flex;align-items:center;justify-content:center;padding:var(--space-4);animation:fade-in var(--duration-fast) var(--ease-out)}.modal{width:min(520px,100%);max-height:min(90dvh,800px);overflow:auto;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);animation:slide-up var(--duration) var(--ease-out)}.modal-lg{width:min(720px,100%)}.modal-header,.drawer-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--bg-elevated);z-index:1}.drawer-header-title{min-width:0;flex:1}.modal-body,.drawer-body{padding:var(--space-5)}.modal-footer,.drawer-footer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-top:1px solid var(--border)}.drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;background:var(--overlay);animation:fade-in var(--duration-fast) var(--ease-out)}.drawer{position:fixed;top:0;bottom:0;z-index:1101;width:min(320px,88vw);max-width:100vw;background:var(--sidebar-bg);color:var(--sidebar-text);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;animation:slide-in-end var(--duration) var(--ease-out);padding-bottom:env(safe-area-inset-bottom,0px)}.drawer-end{inset-inline-end:0}.drawer-start{inset-inline-start:0;animation-name:slide-in-start}@keyframes slide-in-start{0%{transform:translate(calc(-100% * var(--drawer-dir, 1)))}to{transform:translate(0)}}[dir=rtl]{--drawer-dir: -1}.drawer .drawer-header{background:var(--sidebar-bg);border-color:#ffffff14;color:var(--sidebar-text-active)}.drawer .drawer-body{flex:1;overflow:auto;padding:var(--space-3)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:var(--space-3);padding:var(--space-10) var(--space-4);color:var(--text-muted)}.empty-state-icon{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--bg-muted);color:var(--text-secondary);font-size:1.5rem}.empty-state-title{font-size:var(--text-lg);color:var(--text)}.spinner{width:28px;height:28px;border:2.5px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}.spinner-lg{width:40px;height:40px}.spinner-wrap{display:flex;align-items:center;justify-content:center;padding:var(--space-10)}@keyframes spin{to{transform:rotate(360deg)}}.toast-viewport{position:fixed;z-index:2000;bottom:calc(var(--bottom-nav-height) + var(--space-4) + env(safe-area-inset-bottom,0px));left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:var(--space-2);width:min(400px,calc(100vw - 24px));pointer-events:none}@media (min-width: 768px){.toast-viewport{bottom:var(--space-6);left:auto;right:var(--space-6);transform:none}}.toast{pointer-events:auto;display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--bg-elevated);border:1px solid var(--border);box-shadow:var(--shadow-md);animation:slide-up var(--duration) var(--ease-out);font-size:var(--text-sm)}.toast-success{border-color:var(--success);background:color-mix(in srgb,var(--success-muted) 70%,var(--bg-elevated))}.toast-error{border-color:var(--danger);background:color-mix(in srgb,var(--danger-muted) 70%,var(--bg-elevated))}.toast-info{border-color:var(--accent)}.page-header{display:flex;flex-direction:column;gap:var(--space-1)}.page-header-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2)}.page-header-title{font-size:var(--text-xl);letter-spacing:-.02em;line-height:1.2}.page-header-desc{margin-top:2px;color:var(--text-secondary);font-size:var(--text-xs);max-width:52ch}.page-header-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.stat-card{padding:var(--space-2) var(--space-3);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:2px;box-shadow:none;transition:border-color var(--duration-fast)}.stat-card:hover{border-color:var(--border-strong)}.stat-label{font-size:11px;color:var(--text-muted)}.stat-value{font-family:var(--font-display);font-size:var(--text-lg);font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.02em;line-height:1.15}.stat-hint{font-size:var(--text-xs);color:var(--text-secondary)}.table-wrap{width:100%;overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-elevated);-webkit-overflow-scrolling:touch}.data-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.data-table th,.data-table td{padding:var(--space-3) var(--space-4);text-align:right;border-bottom:1px solid var(--border);vertical-align:middle}.data-table th{position:sticky;top:0;z-index:1;background:var(--bg-subtle);font-weight:600;color:var(--text-secondary);white-space:nowrap;-webkit-user-select:none;user-select:none}.data-table th.sortable{cursor:pointer}.data-table th.sortable:hover{color:var(--text)}.data-table tbody tr{transition:background var(--duration-fast)}.data-table tbody tr:hover{background:var(--bg-subtle)}.data-table tbody tr:last-child td{border-bottom:none}.data-table .resizer{position:absolute;left:0;top:0;bottom:0;width:6px;cursor:col-resize;-webkit-user-select:none;user-select:none}.table-toolbar{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center;margin-bottom:var(--space-3)}.table-toolbar .input{max-width:280px}.catalog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--space-3)}@media (min-width: 768px){.catalog-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-4)}}.catalog-card{display:flex;flex-direction:column;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;transition:border-color var(--duration-fast),box-shadow var(--duration-fast)}.catalog-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md)}.catalog-card-img{aspect-ratio:4 / 3;background:var(--bg-muted);display:grid;place-items:center;color:var(--text-muted);font-size:var(--text-sm);overflow:hidden}.catalog-card-img img{width:100%;height:100%;object-fit:cover}.catalog-card-body{padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-1)}.catalog-card-title{font-weight:600;font-size:var(--text-sm)}.catalog-card-meta{font-size:var(--text-xs);color:var(--text-muted)}.catalog-card-price{margin-top:var(--space-2);font-weight:600;color:var(--accent);font-variant-numeric:tabular-nums}.entity-cards{display:flex;flex-direction:column;gap:var(--space-2)}.entity-card{padding:var(--space-2) var(--space-3);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:4px;cursor:pointer;transition:border-color var(--duration-fast);min-height:0}.entity-card:hover{border-color:var(--border-strong)}.entity-card-title{font-weight:600}.entity-card-row{display:flex;justify-content:space-between;gap:var(--space-3);font-size:var(--text-sm);color:var(--text-secondary)}.error-banner{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--danger-muted);color:var(--danger);border:1px solid color-mix(in srgb,var(--danger) 30%,transparent);font-size:var(--text-sm)}.view-toggle{display:inline-flex;border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;background:var(--bg-elevated)}.view-toggle button{min-height:40px;min-width:44px;padding:0 var(--space-3);border:none;background:transparent;color:var(--text-muted);cursor:pointer}.view-toggle button.active{background:var(--accent-muted);color:var(--accent)}.app-shell{display:flex;height:100dvh;max-height:100dvh;overflow:hidden;background:transparent}.sidebar{position:sticky;top:0;height:100dvh;width:var(--sidebar-width);flex-shrink:0;background:var(--sidebar-bg);color:var(--sidebar-text);display:none;flex-direction:column;border-inline-end:1px solid rgba(255,255,255,.06);transition:width var(--duration) var(--ease-out);z-index:40}.sidebar-collapsed{width:var(--sidebar-collapsed)}.sidebar-brand{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-5) var(--space-4);min-height:72px}.sidebar-logo{width:36px;height:36px;border-radius:10px;background:linear-gradient(145deg,#3d9bfd,#1e6fd9);display:grid;place-items:center;color:#fff;font-weight:700;font-family:var(--font-display);flex-shrink:0}.sidebar-brand-text{display:flex;flex-direction:column;gap:2px;overflow:hidden}.sidebar-brand-name{font-family:var(--font-display);font-weight:700;font-size:var(--text-lg);color:var(--sidebar-text-active);white-space:nowrap}.sidebar-brand-sub{font-size:var(--text-xs);color:var(--sidebar-text);white-space:nowrap}.sidebar-nav{flex:1;overflow-y:auto;padding:var(--space-2) var(--space-3) var(--space-4);display:flex;flex-direction:column;gap:2px}.nav-item{display:flex;align-items:center;gap:var(--space-3);min-height:var(--touch-min);padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--sidebar-text);text-decoration:none;font-size:var(--text-sm);font-weight:500;transition:background var(--duration-fast),color var(--duration-fast)}.nav-item:hover{background:var(--sidebar-hover);color:var(--sidebar-text-active);text-decoration:none}.nav-item-active{background:var(--sidebar-active);color:var(--sidebar-text-active)}.nav-item-icon{width:24px;text-align:center;flex-shrink:0;font-size:1rem}.sidebar-collapsed .nav-item{justify-content:center;padding:0}.sidebar-collapsed .nav-item-label,.sidebar-collapsed .sidebar-brand-text{display:none}.sidebar-footer{padding:var(--space-3);border-top:1px solid rgba(255,255,255,.06)}.shell-main{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden}.topbar{position:sticky;top:0;z-index:30;padding-top:env(safe-area-inset-top,0px);background:color-mix(in srgb,var(--bg-elevated) 94%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}.topbar-inner{height:var(--topbar-height);display:flex;align-items:center;gap:var(--space-2);padding:0 var(--space-3);padding-inline:max(var(--space-3),env(safe-area-inset-left,0px)) max(var(--space-3),env(safe-area-inset-right,0px))}.topbar-leading,.topbar-trailing{display:inline-flex;align-items:center;gap:var(--space-1);min-width:0;flex-shrink:0}.topbar-trailing{margin-inline-start:auto;gap:var(--space-1)}.topbar-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);cursor:pointer;font:inherit;font-size:1.1rem;flex-shrink:0;transition:background var(--duration-fast),color var(--duration-fast)}.topbar-icon-btn:hover{background:var(--bg-muted);color:var(--text)}.topbar-hamburger{display:grid;gap:4px;width:18px}.topbar-hamburger span{display:block;height:2px;border-radius:2px;background:currentColor}.topbar-brand{display:inline-flex;align-items:center;gap:var(--space-2);min-width:0;max-width:min(42vw,200px)}.topbar-brand-mark{width:28px;height:28px;border-radius:8px;background:linear-gradient(145deg,#3d9bfd,#1e6fd9);color:#fff;display:grid;place-items:center;font-size:.85rem;font-weight:700;overflow:hidden;flex-shrink:0}.topbar-brand-mark img{width:100%;height:100%;object-fit:cover}.topbar-brand-name{font-family:var(--font-display);font-weight:600;font-size:var(--text-sm);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-search{flex:1;max-width:420px;display:none;align-items:center;gap:var(--space-2);min-height:40px;margin-inline:var(--space-2);padding:0 var(--space-3);border:1px solid var(--border);border-radius:999px;background:var(--bg);color:var(--text-muted);font-size:var(--text-sm);cursor:pointer;transition:border-color var(--duration-fast),background var(--duration-fast)}.topbar-search:hover{border-color:var(--border-strong);background:var(--bg-muted)}.topbar-search-icon{display:none}.topbar-kbd{margin-inline-start:auto;font-size:.7rem;padding:2px 6px;border-radius:4px;border:1px solid var(--border);color:var(--text-muted)}.topbar-account-trigger{display:inline-flex;align-items:center;gap:8px;max-width:180px}.topbar-account-avatar{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 16%,var(--bg-muted));color:var(--accent);font-size:.75rem;font-weight:700;flex-shrink:0}.topbar-account-name{font-size:var(--text-sm);font-weight:500;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.topbar-account-caret{color:var(--text-muted);font-size:.65rem;line-height:1}.topbar .more-menu-trigger{width:auto;min-width:40px;height:40px;padding:0 8px;border:none;background:transparent;border-radius:var(--radius-md)}.topbar .more-menu-trigger:hover,.topbar .more-menu-open .more-menu-trigger{background:var(--bg-muted);border-color:transparent}.topbar .save-status{margin-inline-end:2px}.save-status{display:inline-flex;align-items:center;gap:5px;padding:2px 4px;border:none;background:transparent;border-radius:var(--radius-sm, 6px);font-size:var(--text-xs, .75rem);font-weight:500;white-space:nowrap;color:var(--text-muted, #6b7280);line-height:1.2;min-width:4.75rem;justify-content:flex-start}.save-status-dot{width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.55;flex-shrink:0}.save-status-pending,.save-status-saving,.save-status-saved,.save-status-idle,.save-status-error{color:var(--text-muted, #6b7280)}.save-status-error .save-status-dot{opacity:.85;background:var(--danger, #c0392b)}.save-status.is-idle{visibility:hidden;pointer-events:none}@media (max-width: 720px){.save-status-label{max-width:7.5rem;overflow:hidden;text-overflow:ellipsis}}.main-content{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-y:auto}.bottom-nav{position:fixed;bottom:0;inset-inline:0;z-index:50;display:none;height:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);background:color-mix(in srgb,var(--bg-elevated) 92%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--border)}.bottom-nav-inner{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));height:var(--bottom-nav-height);width:100%;padding-inline:env(safe-area-inset-left,0px) env(safe-area-inset-right,0px)}.bottom-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:var(--text-muted);text-decoration:none;font-size:.65rem;font-weight:500;min-height:var(--touch-min);border:none;background:transparent;cursor:pointer;font-family:inherit}.bottom-nav-item:hover,.bottom-nav-item-active{color:var(--accent);text-decoration:none}.bottom-nav-icon{font-size:1.15rem;line-height:1}.drawer-nav{display:flex;flex-direction:column;gap:2px}.drawer-nav-section{display:flex;flex-direction:column;gap:2px;margin-bottom:var(--space-3)}.drawer-nav-section:last-child{margin-bottom:0}.drawer-nav-label{padding:var(--space-2) var(--space-3) var(--space-1);font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:color-mix(in srgb,var(--sidebar-text) 72%,transparent)}.drawer-nav .nav-item{color:var(--sidebar-text)}.drawer-nav .nav-item-active{background:var(--sidebar-active);color:var(--sidebar-text-active)}.drawer-brand-head{display:flex;align-items:center;gap:var(--space-3);min-width:0}.drawer-brand-head .topbar-brand-mark{width:32px;height:32px}.drawer-brand-text{display:flex;flex-direction:column;gap:2px;min-width:0}.drawer-brand-text strong{font-family:var(--font-display);font-size:var(--text-base);color:var(--sidebar-text-active);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.drawer-brand-text span{font-size:var(--text-xs);color:var(--sidebar-text)}@media (min-width: 768px){.sidebar{display:flex}.topbar-inner{padding-inline:var(--space-5)}.topbar-brand{display:none}.topbar-search{display:flex}.topbar-search-icon{display:none!important}}@media (max-width: 767px){.bottom-nav{display:block}.topbar-kbd,.topbar-search{display:none}.topbar-search-icon{display:inline-flex}.topbar-brand-name{max-width:28vw}.topbar .more-menu-trigger{padding:0 4px}}.search-modal{width:min(640px,100%)}.search-header{display:flex;align-items:center;gap:.5rem}.search-insights{display:flex;flex-direction:column;gap:.4rem;margin-bottom:.75rem}.search-insight{display:flex;flex-direction:column;gap:.15rem;text-align:start;padding:.65rem .75rem;border-radius:12px;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border));background:color-mix(in srgb,var(--accent) 7%,var(--bg-elevated));cursor:pointer;color:inherit}.search-insight strong{font-size:var(--text-sm)}.search-insight span{font-size:var(--text-xs);color:var(--text-secondary);line-height:1.4}.search-market-toggle{margin:.75rem 0 .35rem;text-align:center}.text-link-btn{border:none;background:none;color:var(--accent);font-size:var(--text-sm);font-weight:600;cursor:pointer;padding:.25rem}.search-results{display:flex;flex-direction:column;gap:2px;max-height:360px;overflow:auto}.search-result{display:flex;flex-direction:column;gap:2px;padding:var(--space-3);border-radius:var(--radius-md);cursor:pointer;border:none;background:transparent;text-align:right;width:100%;color:inherit;font:inherit}.search-result:hover,.search-result-active{background:var(--bg-muted)}.search-result-type{font-size:var(--text-xs);color:var(--text-muted)}.search-result-title{font-weight:500}
