.wf-cp-overlay{position:fixed;inset:0;background:#0f172a66;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);display:flex;justify-content:center;align-items:flex-start;padding-top:12vh;z-index:200;animation:wf-cp-bg-in .14s ease-out}@keyframes wf-cp-bg-in{0%{opacity:0}to{opacity:1}}.wf-cp-dialog{width:min(640px,92vw);max-height:70vh;background:#fff;border:1px solid #ECEEF2;border-radius:14px;box-shadow:0 28px 60px #0f172a47;display:flex;flex-direction:column;overflow:hidden;animation:wf-cp-pop .18s cubic-bezier(.22,.61,.36,1)}@keyframes wf-cp-pop{0%{opacity:0;transform:translateY(-8px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.wf-cp-input-row{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid #F1F3F6}.wf-cp-icon{display:inline-flex;align-items:center;color:#9ca3af}.wf-cp-input-row input{flex:1;border:0;outline:none;background:transparent;font:inherit;font-size:14.5px;color:#0f172a}.wf-cp-input-row input::placeholder{color:#9ca3af}.wf-cp-esc{font-size:10.5px;font-weight:700;color:#9ca3af;background:#f4f5f8;border-radius:6px;padding:2px 8px;letter-spacing:.04em}.wf-cp-results{flex:1;overflow-y:auto;padding:6px}.wf-cp-status{padding:28px 16px;text-align:center;color:#9ca3af;font-size:12.5px}.wf-cp-group{padding:6px 0}.wf-cp-group+.wf-cp-group{border-top:1px solid #F1F3F6;margin-top:4px}.wf-cp-group-label{padding:4px 12px 6px;font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#9ca3af}.wf-cp-hit{appearance:none;background:transparent;border:0;width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;border-radius:8px;cursor:pointer;text-align:left;font-family:inherit;color:#0f172a}.wf-cp-hit:hover,.wf-cp-hit.is-active{background:#fff6f0}.wf-cp-hit.is-active{outline:1px solid #FED7AA}.wf-cp-hit-main{display:flex;align-items:center;gap:10px;min-width:0}.wf-cp-kind{width:24px;height:24px;border-radius:6px;display:grid;place-items:center;flex-shrink:0}.wf-cp-kind.kind-client{background:#dbeafe;color:#1e40af}.wf-cp-kind.kind-project{background:#ffefe4;color:#c2410c}.wf-cp-kind.kind-estimate{background:#dcfce7;color:#166534}.wf-cp-label{font-size:13.5px;font-weight:600;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wf-cp-sub{font-size:11.5px;color:#9ca3af;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:45%}.wf-cp-footer{display:flex;justify-content:flex-end;gap:14px;padding:8px 14px;border-top:1px solid #F1F3F6;font-size:11px;color:#9ca3af}.wf-cp-footer span{display:inline-flex;gap:4px;align-items:center}.wf-cp-footer kbd{background:#f4f5f8;border-radius:5px;min-width:18px;height:18px;padding:0 5px;display:inline-flex;align-items:center;justify-content:center;font-family:inherit;font-size:10.5px;font-weight:700;color:#6b7280}.wf-shell{display:flex;min-height:100vh;background:#f8f9fb;color:#0f172a;font-family:-apple-system,BlinkMacSystemFont,Inter Tight,Plus Jakarta Sans,system-ui,sans-serif}.wf-sidebar{width:240px;flex-shrink:0;background:#fff;border-right:1px solid #ECEEF2;padding:20px 12px 14px;display:flex;flex-direction:column;gap:18px;overflow-y:auto;position:sticky;top:0;align-self:flex-start;height:100vh}.wf-brand{display:flex;align-items:center;gap:11px;padding:4px 8px 14px;border-bottom:1px solid #F1F3F6;margin:0 -4px}.wf-brand-mark{width:34px;height:34px;background:linear-gradient(135deg,#ff7a45,#ff5c8a);border-radius:9px;display:grid;place-items:center;color:#fff;font-weight:800;font-size:15px;box-shadow:0 6px 14px -4px #ff7a4580}.wf-brand-text{display:flex;flex-direction:column;line-height:1.25}.wf-brand-text strong{font-size:14px;font-weight:700;letter-spacing:-.01em;color:#0f172a}.wf-brand-text span{font-size:11px;color:#9ca3af}.wf-nav{display:flex;flex-direction:column;gap:14px;flex:1}.wf-nav-group{display:flex;flex-direction:column;gap:2px}.wf-nav-group-label{font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#9ca3af;padding:4px 12px 6px}.wf-nav-item{appearance:none;background:transparent;border:0;text-align:left;text-decoration:none;display:flex;align-items:center;gap:11px;padding:8px 12px;border-radius:10px;color:#6b7280;font-size:13px;font-weight:500;cursor:pointer;transition:background .12s,color .12s;width:100%}.wf-nav-ico{width:26px;height:26px;display:grid;place-items:center;border-radius:7px;background:#f4f5f8;color:#6b7280;flex-shrink:0;transition:background .12s,color .12s}.wf-nav-item:hover:not(.is-on):not(.is-disabled) .wf-nav-ico{color:#0f172a}.wf-nav-item.is-on .wf-nav-ico{color:#fff}.wf-nav-item:hover:not(.is-on):not(.is-disabled){background:#f8f9fb;color:#0f172a}.wf-nav-item.is-on{background:linear-gradient(135deg,#ff7a45,#ff5c8a);color:#fff;box-shadow:0 8px 18px -8px #ff7a458c,inset 0 1px #ffffff2e}.wf-nav-item.is-on .wf-nav-ico{background:#ffffff38}.wf-nav-item.is-disabled{opacity:.45;cursor:not-allowed}.wf-nav-indicator-dot{margin-left:auto;width:8px;height:8px;border-radius:999px;background:#f97316;box-shadow:0 0 0 2px #f973162e}.wf-nav-item.is-on .wf-nav-indicator-dot{background:#ffe7be;box-shadow:0 0 0 2px #ffffff40}.wf-main{flex:1;display:flex;flex-direction:column;min-width:0}.wf-main-scroll{flex:1;min-width:0}.wf-topbar{display:flex;align-items:center;gap:12px;padding:12px 22px;background:#fff;border-bottom:1px solid #ECEEF2;flex-shrink:0}.wf-ws-chip{display:flex;align-items:center;gap:9px;padding:4px 12px 4px 4px;background:#fff;border:1px solid #ECEEF2;border-radius:999px}.wf-ws-logo{width:28px;height:28px;background:linear-gradient(135deg,#0f172a,#1e293b);color:#fff;font-size:10px;font-weight:800;letter-spacing:.05em;border-radius:50%;display:grid;place-items:center}.wf-ws-meta{display:flex;flex-direction:column;line-height:1.2}.wf-ws-meta strong{font-size:12.5px;font-weight:700;color:#0f172a}.wf-ws-meta span{font-size:10.5px;color:#9ca3af}.wf-search{flex:1;max-width:460px;appearance:none;display:inline-flex;align-items:center;gap:9px;height:34px;padding:0 8px 0 12px;background:#f8f9fb;border:1px solid #ECEEF2;border-radius:9px;cursor:pointer;font:inherit;font-size:13px;color:#6b7280;text-align:left;transition:border-color .12s,background .12s}.wf-search:hover{background:#fff;border-color:#dee1e6}.wf-search-ico{display:inline-flex;align-items:center;color:#9ca3af}.wf-search-placeholder{flex:1}.wf-search-kbd{background:#fff;border:1px solid #ECEEF2;border-radius:6px;padding:1px 7px;font-size:10.5px;font-weight:700;color:#9ca3af;letter-spacing:.04em}.wf-spacer{flex:1}.wf-icon-btn{position:relative;appearance:none;background:transparent;border:0;width:34px;height:34px;border-radius:9px;display:grid;place-items:center;color:#6b7280;cursor:pointer;transition:background .12s,color .12s}.wf-icon-btn:hover{background:#f4f5f8;color:#0f172a}.wf-icon-btn-dot{position:absolute;top:7px;right:8px;width:7px;height:7px;border-radius:50%;background:#ff7a45;border:1.5px solid #FFFFFF}.wf-live{display:inline-flex;align-items:center;gap:6px;padding:4px 11px;background:#ecfdf5;border:1px solid #BBF7D0;border-radius:999px;font-size:11.5px;font-weight:600;color:#15803d}.wf-live-dot{width:6px;height:6px;border-radius:50%;background:#16a34a;box-shadow:0 0 0 3px #16a34a2e;animation:wf-pulse 1.6s infinite}@keyframes wf-pulse{0%,to{box-shadow:0 0 #16a34a66}50%{box-shadow:0 0 0 5px #16a34a0a}}.wf-user-chip{display:inline-flex;align-items:center;gap:9px;padding:3px 12px 3px 3px;background:#fff;border:1px solid #ECEEF2;border-radius:999px}.wf-avatar{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#ff7a45,#ff5c8a);color:#fff;font-size:11px;font-weight:700;display:grid;place-items:center}.wf-user-meta{display:flex;flex-direction:column;line-height:1.2}.wf-user-meta strong{font-size:12px;font-weight:700;color:#0f172a}.wf-user-meta span{font-size:10.5px;color:#9ca3af}.wf-mobile-menu-btn{display:none;appearance:none;background:transparent;border:0;width:36px;height:36px;border-radius:8px;align-items:center;justify-content:center;color:#0f172a;cursor:pointer;margin-right:2px}.wf-mobile-menu-btn:hover{background:#f4f5f8}.wf-mobile-close{display:none;appearance:none;background:transparent;border:0;width:32px;height:32px;margin-left:auto;border-radius:7px;align-items:center;justify-content:center;color:#6b7280;cursor:pointer}.wf-mobile-close:hover{background:#f4f5f8;color:#0f172a}.wf-mobile-backdrop{display:none;position:fixed;inset:0;background:#0f172a66;z-index:80;border:0;cursor:pointer}@media(max-width:1180px){.wf-ws-meta,.wf-user-meta{display:none}.wf-ws-chip{padding:4px}.wf-user-chip{padding:3px}}@media(min-width:760px)and (max-width:1023px){.wf-sidebar{width:64px;padding:16px 6px}.wf-brand-text,.wf-nav-group-label{display:none}.wf-nav-item{justify-content:center;padding:9px;font-size:0}.wf-nav-ico{margin:0}.wf-live span:not(.wf-live-dot){display:none}}@media(max-width:759px){.wf-sidebar{position:fixed;top:0;left:0;width:280px;max-width:88vw;height:100vh;height:100dvh;transform:translate(-105%);transition:transform .22s cubic-bezier(.22,.61,.36,1);z-index:100;box-shadow:8px 0 28px #0f172a38}.wf-shell-mobile-open .wf-sidebar{transform:translate(0)}.wf-mobile-backdrop{display:block}.wf-mobile-menu-btn,.wf-mobile-close{display:inline-flex}.wf-brand{padding-right:0}.wf-topbar{padding:10px 14px;gap:8px}.wf-ws-chip,.wf-user-chip,.wf-live,.wf-icon-btn{display:none}.wf-search{height:36px;flex:1;max-width:none;min-width:0}.wf-search-placeholder{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.wf-search-kbd{display:none}}@media(max-width:420px){.wf-search-placeholder{font-size:12.5px}}@media(max-width:380px){.wf-search-placeholder{font-size:11.5px}}.arc-root{min-height:100vh;background:#f4f5f8;font-family:Inter Tight,-apple-system,BlinkMacSystemFont,Plus Jakarta Sans,system-ui,sans-serif;font-feature-settings:"cv11","ss01","ss03";font-size:13.5px;color:#0f1024;-webkit-font-smoothing:antialiased}.arc-main{max-width:1280px;margin:0 auto;padding:20px 22px 60px}.arc-head{display:flex;align-items:center;gap:12px;margin-bottom:4px}.arc-title{font-size:26px;font-weight:700;letter-spacing:-.02em;margin:0}.arc-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.01em;background:#0f11180f;color:#4b5563;border:1px solid rgba(15,17,24,.08)}.arc-sub{color:#6b7280;font-size:13px;margin:0 0 18px}.arc-denied{margin:80px auto 0;max-width:420px;text-align:center;padding:32px 28px;background:#fff;border:1px solid rgba(15,17,24,.08);border-radius:16px;box-shadow:0 1px 2px #0f11180a,0 2px 8px #0f11180d}.arc-denied h2{margin:0 0 8px;font-size:18px}.arc-denied p{margin:0;color:#6b7280;font-size:13px}.arc-tabs{display:flex;flex-wrap:wrap;gap:4px;background:#0f11180d;padding:4px;border-radius:10px;margin-bottom:16px;width:max-content;max-width:100%}.arc-tab{border:0;background:transparent;font:inherit;font-size:13px;font-weight:600;color:#4b5563;padding:6px 12px;border-radius:7px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:background .1s ease,color .1s ease}.arc-tab:hover{color:#0f1024}.arc-tab.is-on{background:#fff;color:#0f1024;box-shadow:0 1px 2px #0f11180f}.arc-tab-count{display:inline-flex;min-width:18px;height:18px;align-items:center;justify-content:center;padding:0 5px;font-size:10.5px;font-weight:700;border-radius:9px;background:#0f111814;color:#4b5563}.arc-tab.is-on .arc-tab-count{background:#0f11181f;color:#0f1024}.arc-error,.arc-toast{padding:10px 14px;border-radius:10px;margin-bottom:12px;font-size:13px}.arc-error{background:#fef2f2;border:1px solid #FECACA;color:#b91c1c}.arc-toast{background:#ecfdf5;border:1px solid #A7F3D0;color:#065f46}.arc-empty{background:#fff;border:1px dashed rgba(15,17,24,.12);border-radius:14px;padding:60px 24px;text-align:center;color:#6b7280;font-size:13.5px}.arc-list{background:#fff;border:1px solid rgba(15,17,24,.08);border-radius:12px;overflow:hidden;box-shadow:0 1px 2px #0f11180a}.arc-row{display:grid;grid-template-columns:1fr auto;gap:14px;padding:14px 16px;border-bottom:1px solid rgba(15,17,24,.06);align-items:center}.arc-row:last-child{border-bottom:0}.arc-row-main{min-width:0}.arc-row-label{font-size:14px;font-weight:600;color:#0f1024;margin:0 0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.arc-row-sub{font-size:12px;color:#6b7280;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.arc-row-meta{font-size:11.5px;color:#9ca3af}.arc-row-actions{display:inline-flex;gap:6px;align-items:center}.arc-btn{border:1px solid rgba(15,17,24,.14);background:#fff;color:#0f1024;font:inherit;font-size:12px;font-weight:600;padding:5px 10px;border-radius:7px;cursor:pointer;display:inline-flex;align-items:center;gap:4px;transition:background .1s ease,border-color .1s ease}.arc-btn:hover:not(:disabled){background:#0f11180a}.arc-btn:disabled{opacity:.5;cursor:not-allowed}.arc-btn-danger{border-color:#fecaca;color:#b91c1c}.arc-btn-danger:hover:not(:disabled){background:#fef2f2}.arc-modal-back{position:fixed;inset:0;background:#0f11188c;display:flex;align-items:center;justify-content:center;z-index:9000}.arc-modal{background:#fff;border-radius:16px;width:min(440px,92vw);padding:22px 22px 18px;box-shadow:0 20px 40px -16px #0f111859}.arc-modal h2{margin:0 0 4px;font-size:18px;font-weight:700}.arc-modal p{margin:0 0 12px;font-size:13px;color:#4b5563;line-height:1.5}.arc-modal-input{width:100%;box-sizing:border-box;border:1px solid rgba(15,17,24,.18);background:#fff;border-radius:8px;padding:8px 10px;font:inherit;font-size:13.5px;color:#0f1024;margin-bottom:12px}.arc-modal-input:focus{outline:2px solid rgba(15,17,24,.4);outline-offset:1px}.arc-modal-actions{display:flex;justify-content:flex-end;gap:8px}.arc-modal-cancel{border:1px solid rgba(15,17,24,.14);background:#fff;font:inherit;font-size:13px;font-weight:600;color:#0f1024;padding:7px 14px;border-radius:8px;cursor:pointer}.arc-modal-cancel:hover{background:#0f11180a}.arc-modal-confirm{border:1px solid #B91C1C;background:#b91c1c;font:inherit;font-size:13px;font-weight:600;color:#fff;padding:7px 14px;border-radius:8px;cursor:pointer}.arc-modal-confirm:disabled{opacity:.5;cursor:not-allowed}.arc-modal-confirm:hover:not(:disabled){background:#991b1b}.audit-root{min-height:100vh;background:#f4f5f8;font-family:Inter Tight,-apple-system,BlinkMacSystemFont,Plus Jakarta Sans,system-ui,sans-serif;font-feature-settings:"cv11","ss01","ss03";font-size:13.5px;color:#0f1024;-webkit-font-smoothing:antialiased}.audit-main{max-width:1280px;margin:0 auto;padding:20px 22px 60px}.audit-head{display:flex;align-items:center;gap:12px;margin-bottom:4px}.audit-title{font-size:26px;font-weight:700;letter-spacing:-.02em;margin:0}.audit-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.01em;background:#0f11180f;color:#4b5563;border:1px solid rgba(15,17,24,.08)}.audit-sub{color:#6b7280;font-size:13px;margin:0 0 18px}.audit-denied{margin:80px auto 0;max-width:420px;text-align:center;padding:32px 28px;background:#fff;border:1px solid rgba(15,17,24,.08);border-radius:16px;box-shadow:0 1px 2px #0f11180a,0 2px 8px #0f11180d}.audit-denied h2{margin:0 0 8px;font-size:18px}.audit-denied p{margin:0;color:#6b7280;font-size:13px}.audit-filters{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:12px 14px;background:#fff;border:1px solid rgba(15,17,24,.08);border-radius:12px;margin-bottom:14px}.audit-filter-label{font-size:12px;font-weight:600;color:#6b7280;margin-right:4px}.audit-select,.audit-date{border:1px solid rgba(15,17,24,.14);background:#fff;border-radius:8px;padding:6px 10px;font:inherit;font-size:12.5px;color:#0f1024;cursor:pointer}.audit-select:focus,.audit-date:focus{outline:2px solid rgba(15,17,24,.4);outline-offset:1px}.audit-chips{display:inline-flex;gap:4px;background:#0f11180d;padding:3px;border-radius:8px}.audit-chip{border:0;background:transparent;font:inherit;font-size:12px;font-weight:600;color:#4b5563;padding:4px 10px;border-radius:6px;cursor:pointer;transition:background .1s ease,color .1s ease}.audit-chip:hover{color:#0f1024}.audit-chip.is-on{background:#fff;color:#0f1024;box-shadow:0 1px 2px #0f11180f}.audit-reset{margin-left:auto;border:0;background:transparent;font:inherit;font-size:12px;font-weight:600;color:#6b7280;cursor:pointer;padding:4px 8px;border-radius:6px}.audit-reset:hover{background:#0f11180d;color:#0f1024}.audit-error{background:#fef2f2;border:1px solid #FECACA;color:#b91c1c;padding:10px 14px;border-radius:10px;margin-bottom:12px;font-size:13px}.audit-table-wrap{background:#fff;border:1px solid rgba(15,17,24,.08);border-radius:12px;overflow:hidden;box-shadow:0 1px 2px #0f11180a}.audit-table{width:100%;border-collapse:collapse;font-size:13px}.audit-table thead th{text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;background:#f9fafb;padding:10px 14px;border-bottom:1px solid rgba(15,17,24,.08)}.audit-table tbody tr{cursor:pointer;transition:background .08s ease}.audit-table tbody tr:hover{background:#f9fafb}.audit-table tbody td{padding:10px 14px;border-bottom:1px solid rgba(15,17,24,.05);vertical-align:top}.audit-table tbody tr:last-child td{border-bottom:0}.audit-time{font-variant-numeric:tabular-nums;color:#4b5563;white-space:nowrap}.audit-actor{display:flex;flex-direction:column;gap:1px}.audit-actor-name{font-weight:600}.audit-actor-role{font-size:11px;color:#9ca3af}.audit-system-actor{color:#6b7280;font-style:italic}.audit-what{display:flex;flex-direction:column;gap:2px}.audit-what-table{font-weight:600}.audit-what-row{font-size:11.5px;color:#9ca3af;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,monospace}.action-chip{display:inline-flex;align-items:center;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.01em}.action-insert{background:#22c55e1f;color:#15803d}.action-update{background:#3b82f61f;color:#1d4ed8}.action-delete{background:#ef44441f;color:#b91c1c}.audit-changed-count{color:#6b7280;font-variant-numeric:tabular-nums}.audit-empty{padding:60px 20px;text-align:center;color:#6b7280}.audit-empty h3{margin:0 0 6px;font-size:16px;color:#0f1024}.audit-skel-row{display:grid;grid-template-columns:140px 180px 1fr 80px 60px;gap:14px;padding:12px 14px;border-bottom:1px solid rgba(15,17,24,.05)}.audit-skel-cell{height:14px;background:linear-gradient(90deg,#0f11180d,#0f11181a,#0f11180d);background-size:200% 100%;border-radius:4px;animation:audit-skel-shimmer 1.4s infinite}@keyframes audit-skel-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.audit-loadmore{display:block;margin:14px auto 0;border:1px solid rgba(15,17,24,.14);background:#fff;font:inherit;font-size:13px;font-weight:600;color:#0f1024;padding:8px 18px;border-radius:9px;cursor:pointer;transition:background .1s ease}.audit-loadmore:hover:not(:disabled){background:#f9fafb}.audit-loadmore:disabled{opacity:.5;cursor:not-allowed}.audit-drawer-backdrop{position:fixed;inset:0;background:#0f111866;z-index:80;animation:audit-fade .12s ease-out}.audit-drawer{position:fixed;top:0;right:0;bottom:0;width:min(640px,100vw);background:#fff;z-index:81;display:flex;flex-direction:column;box-shadow:-10px 0 30px #0f111826;animation:audit-slide-in .18s ease-out}@keyframes audit-fade{0%{opacity:0}to{opacity:1}}@keyframes audit-slide-in{0%{transform:translate(20px);opacity:0}to{transform:translate(0);opacity:1}}.audit-drawer-head{padding:16px 20px;border-bottom:1px solid rgba(15,17,24,.08);display:flex;align-items:flex-start;gap:12px}.audit-drawer-head-text{flex:1;min-width:0}.audit-drawer-head-title{font-size:16px;font-weight:700;letter-spacing:-.01em;margin:0 0 4px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.audit-drawer-head-sub{font-size:12.5px;color:#6b7280;margin:0}.audit-drawer-close{border:0;background:transparent;color:#6b7280;cursor:pointer;padding:6px;border-radius:6px}.audit-drawer-close:hover{background:#0f11180d;color:#0f1024}.audit-drawer-body{flex:1;overflow:auto;padding:18px 20px;display:flex;flex-direction:column;gap:18px}.audit-detail-section{display:flex;flex-direction:column;gap:6px}.audit-detail-section h4{margin:0;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#6b7280}.audit-detail-row{display:flex;gap:12px;font-size:12.5px}.audit-detail-row dt{width:110px;flex-shrink:0;color:#6b7280;font-weight:500}.audit-detail-row dd{margin:0;color:#0f1024;word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,monospace;font-size:12px}.audit-diff{border:1px solid rgba(15,17,24,.08);border-radius:10px;overflow:hidden}.audit-diff-row{display:grid;grid-template-columns:130px 1fr 1fr;border-bottom:1px solid rgba(15,17,24,.06)}.audit-diff-row:last-child{border-bottom:0}.audit-diff-col-name{background:#f9fafb;padding:9px 12px;font-size:11.5px;font-weight:600;color:#4b5563;border-right:1px solid rgba(15,17,24,.06);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,monospace}.audit-diff-before,.audit-diff-after{padding:9px 12px;font-size:12px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,monospace;word-break:break-word;white-space:pre-wrap;line-height:1.4}.audit-diff-before{background:#ef44440d;color:#991b1b;border-right:1px solid rgba(15,17,24,.06)}.audit-diff-after{background:#22c55e0d;color:#15803d}.audit-diff-null{color:#9ca3af;font-style:italic}.audit-data-dump{background:#f9fafb;border:1px solid rgba(15,17,24,.08);border-radius:10px;padding:12px 14px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,monospace;font-size:12px;line-height:1.5;color:#0f1024;max-height:360px;overflow:auto;white-space:pre-wrap;word-break:break-word}.audit-data-dump.is-insert{background:#22c55e0a;border-color:#22c55e2e}.audit-data-dump.is-delete{background:#ef44440a;border-color:#ef44442e}:root{--bg: #F4F5F8;--surface: #FFFFFF;--surface-2: #F8F9FB;--line: #ECEEF2;--line-strong: #DEE1E6;--ink: #0F172A;--ink-2: #344054;--ink-3: #6B7280;--ink-4: #98A2B3;--accent-1: #FF8A3D;--accent-2: #FF5C8A;--accent: #FF7A45;--accent-soft: #FFEFE4;--today: #FF7A45;--full-bg: linear-gradient(135deg, #FFB37A 0%, #FF6E8C 100%);--full-fg: #FFFFFF;--full-bar: #FF7A45;--half-bg: #E8F4FF;--half-fg: #1B4F8A;--half-bar: #4F9FE5;--threeq-bg: #FFF1E0;--threeq-fg: #8A4A12;--threeq-bar: #E0944A;--decal-bg: #F2EAFE;--decal-fg: #5B2DBE;--decal-bar: #8E63E0;--removal-bg: #E8F8EE;--removal-fg: #1F6B49;--removal-bar: #45B07E;--quarter-bg: #DEF7F4;--quarter-fg: #0E5C58;--quarter-bar: #0FB5A8;--radius: 16px;--radius-sm: 12px;--shadow-sm: 0 1px 2px rgba(15,23,42,.05);--shadow-md: 0 1px 0 rgba(15,23,42,.04), 0 4px 16px rgba(15,23,42,.06);--row-h: 140px;--header-h: 64px;--rail-w: 180px;--sidebar-w: 280px}*{box-sizing:border-box}html,body,#root{margin:0;padding:0}body{font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,system-ui,sans-serif;background:var(--bg);color:var(--ink);font-size:14px;line-height:1.4;-webkit-font-smoothing:antialiased}.app-root{padding:16px}.page-title-group{display:flex;flex-direction:column;gap:2px}.head-spacer{width:16px}.head-email{font-size:13px;color:var(--ink-3);margin-right:6px}.block.tentative{opacity:.72}.block.tentative:after{content:"tentative";position:absolute;top:4px;right:6px;font-size:9.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;opacity:.7;pointer-events:none}.t-color-change{--color-change-bg: #FFD7E3;--color-change-fg: #8A1C4A;--color-change-bar: #D94F8E}.block.t-color-change{background:var(--color-change-bg);color:var(--color-change-fg)}.block.t-color-change:before{background:var(--color-change-bar)}.pill.t-color-change{background:var(--color-change-bg);color:var(--color-change-fg)}.loading-block,.error-block{margin:24px;padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink-2);text-align:center}.error-block{color:#b91c1c}.error-block a{color:var(--accent);text-decoration:underline;margin-top:8px;display:inline-block}.page-head{display:flex;align-items:center;gap:16px;padding:4px 4px 14px}.page-title{font-size:22px;font-weight:800;letter-spacing:-.02em;color:var(--ink);margin:0}.page-sub{color:var(--ink-3);font-size:13px}.grow{flex:1}.nav-btn{appearance:none;border:1px solid var(--line);background:var(--surface);height:36px;min-width:36px;padding:0 12px;border-radius:10px;font:inherit;color:var(--ink);display:inline-flex;align-items:center;gap:6px;cursor:pointer;transition:all .15s ease;font-weight:500;box-shadow:var(--shadow-sm)}.nav-btn:hover{background:var(--surface-2);border-color:var(--line-strong)}.nav-btn:disabled{cursor:not-allowed;opacity:.5}.week-sub{color:var(--ink-3);font-weight:500;font-size:13px}.body{display:grid;grid-template-columns:minmax(0,1fr) var(--sidebar-w);gap:16px;min-height:0}@media(max-width:1180px){:root{--sidebar-w: 260px}}@media(max-width:768px){.App{padding:8px}.body{grid-template-columns:1fr;gap:12px}.sidebar{max-height:none}.page-head{flex-wrap:wrap;gap:8px}.page-title{font-size:18px}.page-sub{font-size:12px}.nav-btn{height:32px;padding:0 10px;font-size:12px;min-width:32px}.seg button{padding:5px 10px;font-size:12px}.people-panel{right:8px;left:8px;width:auto;max-height:70vh}.detail-popover{position:fixed!important;left:12px!important;right:12px!important;bottom:max(12px,env(safe-area-inset-bottom))!important;top:auto!important;width:auto!important;max-width:none!important;max-height:75vh;overflow-y:auto;border-radius:16px;animation:popInSheet .18s ease}@keyframes popInSheet{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.month-grid{height:auto;min-height:600px}}.calendar-wrap{min-width:0;position:relative}.calendar{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow-x:auto;overflow-y:hidden;box-shadow:var(--shadow-md)}.grid{min-width:760px}.grid{display:grid;grid-template-columns:var(--rail-w) repeat(7,1fr)}.corner{border-bottom:1px solid var(--line);border-right:1px solid var(--line);background:var(--surface-2);padding:14px 18px;display:flex;align-items:flex-end}.corner-label{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-3);font-weight:700}.day-head{border-bottom:1px solid var(--line);border-right:1px solid var(--line);background:var(--surface-2);padding:12px 14px;display:flex;flex-direction:column;gap:2px;min-height:var(--header-h)}.day-head:last-child{border-right:0}.day-head .dow{font-size:11px;font-weight:700;color:var(--ink-3);letter-spacing:.1em;text-transform:uppercase}.day-head .date-num{font-size:20px;font-weight:800;letter-spacing:-.02em;color:var(--ink);display:flex;align-items:center;gap:8px}.day-head.is-today .dow{color:var(--accent)}.day-head.is-today .date-num .pip{width:8px;height:8px;border-radius:50%;background:var(--accent);display:inline-block;box-shadow:0 0 0 4px #ff7a452e}.day-head.is-weekend{background:#f1f2f5}.rail{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 16px;display:flex;align-items:center;gap:12px;min-height:var(--row-h);background:var(--surface)}.rail .info{min-width:0}.rail .name{font-weight:700;font-size:13px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rail .role{font-size:11px;color:var(--ink-3);margin-top:2px}.cell-row{position:relative;display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid var(--line);min-height:var(--row-h)}.cell-row:last-child{border-bottom:0}.cell{border-right:1px solid var(--line);position:relative;background:var(--surface)}.cell:last-child{border-right:0}.cell.is-weekend{background:#fafafc}.cell.is-today{background:linear-gradient(180deg,#ff7a450a,#ff7a4500)}.av{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:12px;color:#fff;flex-shrink:0;letter-spacing:.02em}.blocks-overlay{position:absolute;inset:0;pointer-events:none}.block{position:absolute;top:10px;height:calc(var(--row-h) - 20px);border-radius:11px;padding:10px 12px 10px 16px;pointer-events:auto;cursor:grab;overflow:hidden;user-select:none;-webkit-user-select:none;touch-action:pan-x pan-y;transition:left .08s ease,width .08s ease,box-shadow .12s ease;box-shadow:0 1px #0f172a0a,0 2px 10px #0f172a0d;border:1px solid rgba(0,0,0,.04);display:flex;flex-direction:column;justify-content:center;gap:2px}.block.dragging{cursor:grabbing;transition:none;box-shadow:0 12px 28px #0f172a38,0 0 0 2px var(--accent);z-index:10;touch-action:none}.block.moving-out{opacity:.35;filter:saturate(.6);transition:none}.block.pending{opacity:.7}.b-saving{font-weight:500;opacity:.8;font-size:11px}.block.cross-lane-source{opacity:.32;filter:saturate(.55);transition:none;cursor:grabbing}.block.preview-ghost{background:transparent!important;border:2px dashed var(--bar, var(--accent));box-shadow:0 0 0 4px #ff7a4514;opacity:.85;pointer-events:none;z-index:8}.block.preview-ghost:before{display:none}.block.preview-ghost .b-customer{color:var(--fg, var(--ink-2));font-weight:700}.error-banner{display:flex;align-items:center;gap:12px;margin:0 4px 12px;padding:10px 14px;background:#fef2f2;border:1px solid #FECACA;border-radius:10px;color:#b91c1c;font-size:13px;font-weight:500}.error-banner strong{font-weight:700;margin-right:4px}.error-banner-action{margin-left:auto;appearance:none;border:1px solid #FCA5A5;background:#fff;color:#b91c1c;padding:5px 12px;border-radius:7px;font:inherit;font-weight:600;cursor:pointer}.error-banner-action:hover{background:#fee2e2}.error-banner-close{appearance:none;border:0;background:transparent;color:#b91c1c;font-size:18px;line-height:1;width:24px;height:24px;border-radius:50%;cursor:pointer}.error-banner-close:hover{background:#b91c1c1a}.resize-handle{position:absolute;top:0;bottom:0;width:8px;cursor:ew-resize;z-index:2;touch-action:none}@media(pointer:coarse){.resize-handle{width:16px}}.resize-handle.resize-left{left:0}.resize-handle.resize-right{right:0}.resize-handle:after{content:"";position:absolute;top:50%;transform:translateY(-50%);width:3px;height:22px;border-radius:3px;background:var(--fg, var(--full-fg));opacity:0;transition:opacity .15s ease}.resize-handle.resize-left:after{left:3px}.resize-handle.resize-right:after{right:3px}.block:hover .resize-handle:after{opacity:.35}.people-control{position:relative}.people-count{display:inline-block;margin-left:6px;padding:1px 6px;background:var(--surface-2);border-radius:999px;font-size:11px;color:var(--ink-3);font-weight:700}.people-panel{position:absolute;top:calc(100% + 6px);right:0;width:260px;max-height:380px;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:0 16px 36px #0f172a29,0 4px 12px #0f172a14;z-index:50;overflow:hidden;animation:popIn .12s ease}.people-panel-head{padding:10px 12px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);font-size:11px;font-weight:700;color:var(--ink-3);text-transform:uppercase;letter-spacing:.08em}.people-clear{background:transparent;border:0;color:var(--accent);font-weight:700;font-size:11px;cursor:pointer;text-transform:none;letter-spacing:0}.people-clear:hover{text-decoration:underline}.people-panel-list{flex:1;overflow-y:auto;padding:4px 0}.people-row{display:flex;align-items:center;gap:10px;padding:8px 12px;cursor:pointer;font-size:13px}.people-row:hover{background:var(--surface-2)}.people-row input{cursor:pointer}.people-name{font-weight:500;color:var(--ink);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rail.empty-lane{opacity:.65}.saving-pill{background:var(--accent-soft);color:var(--accent);font-weight:600;font-size:12px;padding:6px 12px;border-radius:999px;display:inline-flex;align-items:center;gap:6px}.saving-pill:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--accent);animation:pulse 1.2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.4;transform:scale(.85)}50%{opacity:1;transform:scale(1)}}.block:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;border-radius:11px 0 0 11px;background:var(--bar, var(--full-bar))}.block:hover{transform:translateY(-1px);box-shadow:0 6px 18px #0f172a1a}.block{--mx: 50%;--my: 50%;--rx: 0deg;--ry: 0deg;transform-style:preserve-3d;will-change:transform}.block.is-tilting{transform:perspective(900px) rotateX(var(--rx)) rotateY(var(--ry)) translateY(-2px);transition:transform .06s ease-out,box-shadow .15s ease;box-shadow:0 24px 44px #0f172a38,0 4px 12px #0f172a1a;z-index:7}.block.dragging,.block.cross-lane-source,.block.preview-ghost{transform-style:flat}.block .b-noise{position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:.1;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.8 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:160px 160px;z-index:1}.block.is-tilting .b-noise{opacity:.18}.block .b-glow{position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .18s ease;background:radial-gradient(circle 140px at var(--mx) var(--my),rgba(255,255,255,.55) 0%,rgba(255,255,255,.22) 22%,transparent 62%);mix-blend-mode:screen;z-index:2}.block.is-tilting .b-glow{opacity:1}.block:before{z-index:3}.block .b-title,.block .b-customer,.block .b-meta{position:relative;z-index:4}.block.tentative:after{z-index:5}.block.selected{box-shadow:0 0 0 2px var(--accent),0 6px 18px #ff7a452e}.block .b-title{font-size:12.5px;font-weight:700;color:var(--fg, var(--full-fg));letter-spacing:-.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.25}.block .b-customer{font-size:12px;color:var(--fg, var(--full-fg));opacity:.92;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}.block .b-meta{font-size:11px;color:var(--fg, var(--full-fg));opacity:.75;margin-top:2px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.block.t-full{background:var(--full-bg);--bar: rgba(255,255,255,.7);--fg: #FFFFFF;border:1px solid rgba(255,255,255,.18)}.block.t-full:before{background:#ffffff8c}.block.t-half{background:var(--half-bg);--bar: var(--half-bar);--fg: var(--half-fg)}.block.t-threeq{background:var(--threeq-bg);--bar: var(--threeq-bar);--fg: var(--threeq-fg)}.block.t-quarter{background:var(--quarter-bg);--bar: var(--quarter-bar);--fg: var(--quarter-fg)}.block.t-decal{background:var(--decal-bg);--bar: var(--decal-bar);--fg: var(--decal-fg)}.block.t-removal{background:var(--removal-bg);--bar: var(--removal-bar);--fg: var(--removal-fg)}.grid.lane-row.lane-forecast{background:linear-gradient(180deg,#F4F7FB 0%,var(--surface) 80%)}.grid.lane-row.lane-forecast .rail{background:transparent}.grid.lane-row.lane-unassigned{background:linear-gradient(180deg,#FFF7EE 0%,var(--surface) 80%)}.grid.lane-row.lane-unassigned .rail{background:transparent}.lane-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;font-size:18px;font-weight:800;flex-shrink:0;color:#fff}.lane-icon-forecast{background:linear-gradient(135deg,#6b7bd5,#8b66d8);box-shadow:0 4px 12px #6b7bd547}.lane-icon-unassigned{background:var(--accent);box-shadow:0 4px 12px #ff7a4552}.block.stacked{padding:3px 10px 3px 12px;border-radius:8px}.block.stacked .b-customer{font-size:11.5px;line-height:1.15}.block.stacked .b-meta{display:none}.block.stacked .resize-handle{width:6px}.block.stacked .stage-tag{font-size:9px;padding:1px 5px}.block.stacked .cancel-btn{width:16px;height:16px;font-size:10px;top:4px;right:4px}.block.helper{height:26px!important;top:10px!important;padding:0 12px;border-radius:8px;cursor:pointer;opacity:.78;background:var(--surface);border:1.5px solid var(--bar, var(--full-bar));box-shadow:none;display:flex;align-items:center;justify-content:flex-start}.block.helper:before{display:none}.block.helper:hover{opacity:1;box-shadow:0 4px 12px #0f172a1a}.block.helper .helper-content{display:flex;align-items:center;gap:6px;font-size:11.5px;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.block.helper .helper-arrow{color:var(--bar, var(--full-bar));font-weight:700}.block.helper .helper-name{font-weight:700;color:var(--ink)}.block.helper .helper-customer{color:var(--ink-3);overflow:hidden;text-overflow:ellipsis}.block.helper.t-full{background:linear-gradient(90deg,#ffb37a2e,#ff6e8c24);border-color:#ff7a458c}.block.helper.t-half{background:var(--half-bg);border-color:var(--half-bar)}.block.helper.t-threeq{background:var(--threeq-bg);border-color:var(--threeq-bar)}.block.helper.t-quarter{background:var(--quarter-bg);border-color:var(--quarter-bar)}.block.helper.t-decal{background:var(--decal-bg);border-color:var(--decal-bar)}.block.helper.t-removal{background:var(--removal-bg);border-color:var(--removal-bar)}.stage-tag{position:absolute;bottom:8px;left:14px;display:inline-flex;align-items:center;gap:5px;font-size:9.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--fg, var(--ink-3));opacity:.78;pointer-events:none}.stage-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.stage-dot-admin{background:#ffcb00}.stage-dot-design{background:var(--decal-bar)}.stage-dot-production{background:#007eb5}.block.stacked .stage-tag{display:none}.block:has(.stage-tag):not(.stacked){padding-bottom:22px}.b-pair-tag{display:inline-block;margin-left:6px;padding:1px 6px;background:#ffffff38;color:inherit;border-radius:999px;font-size:10px;font-weight:700;vertical-align:middle}.block.t-full .b-pair-tag{background:#ffffff52}.detail-popover{position:fixed;z-index:100;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:0 24px 60px #0f172a2e,0 4px 12px #0f172a14;padding:18px 18px 14px;font-size:13px;animation:popIn .12s ease}@keyframes popIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.popover-close{position:absolute;top:8px;right:8px;width:26px;height:26px;border-radius:50%;border:0;background:transparent;color:var(--ink-3);font-size:18px;line-height:1;cursor:pointer}.popover-close:hover{background:var(--surface-2);color:var(--ink)}.popover-pill{margin-bottom:10px;display:inline-block}.popover-customer{font-size:16px;font-weight:800;letter-spacing:-.01em;color:var(--ink);line-height:1.2;padding-right:30px}.popover-vehicle{font-size:12.5px;color:var(--ink-3);margin-top:3px;margin-bottom:12px}.popover-rows{display:flex;flex-direction:column}.popover-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:7px 0;border-top:1px solid var(--line);font-size:12.5px}.popover-row .k{color:var(--ink-3);font-weight:500;flex-shrink:0}.popover-row .v{color:var(--ink);font-weight:600;text-align:right}.popover-actions{display:flex;flex-direction:column;gap:8px;margin-top:12px}.popover-action{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:9px 14px;border:0;border-radius:9px;background:var(--accent);color:#fff;font:inherit;font-weight:600;font-size:12.5px;text-align:center;text-decoration:none;letter-spacing:.01em;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.popover-action:hover{background:#ff6a2e}.popover-action:active{background:#e85a1f}.popover-action-secondary{background:transparent;color:var(--ink);border:1px solid var(--line)}.popover-action-secondary:hover{background:var(--surface);border-color:var(--accent);color:var(--accent)}.popover-action-secondary:active{background:var(--surface)}.sidebar{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--shadow-md);align-self:start;max-height:calc(100vh - 130px)}.side-head{padding:14px 18px 10px;border-bottom:1px solid var(--line)}.side-title{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:700;letter-spacing:-.01em}.side-title .count{font-size:11px;font-weight:700;background:linear-gradient(95deg,var(--accent-1),var(--accent-2));color:#fff;border-radius:999px;padding:2px 9px}.side-sub{color:var(--ink-3);font-size:12px;margin-top:2px}.side-list{flex:1;overflow:auto;padding:10px;display:flex;flex-direction:column;gap:8px}.job-card{background:var(--surface);border:1px solid var(--line);border-radius:11px;padding:12px 14px;cursor:pointer;transition:all .15s ease;position:relative}.job-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.job-card .jc-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.pill{font-size:10.5px;font-weight:700;padding:3px 9px;border-radius:999px;letter-spacing:.04em;text-transform:uppercase}.pill.t-full{background:linear-gradient(95deg,var(--accent-1),var(--accent-2));color:#fff}.pill.t-half{background:var(--half-bg);color:var(--half-fg)}.pill.t-threeq{background:var(--threeq-bg);color:var(--threeq-fg)}.pill.t-quarter{background:var(--quarter-bg);color:var(--quarter-fg)}.pill.t-decal{background:var(--decal-bg);color:var(--decal-fg)}.pill.t-removal{background:var(--removal-bg);color:var(--removal-fg)}.job-card{cursor:grab;user-select:none;-webkit-user-select:none;touch-action:none}.job-card:active{cursor:grabbing}.job-card.ready{border-color:var(--accent);background:linear-gradient(180deg,var(--accent-soft) 0%,var(--surface) 70%)}.job-card.ready .duration{color:var(--accent);font-weight:700}.job-card.pending{opacity:.6}.job-card .jc-tentative{font-size:11.5px;color:var(--ink-2);margin-top:6px;padding-top:6px;border-top:1px dashed var(--line);font-weight:600}.job-card .duration{font-size:11.5px;color:var(--ink-3);font-weight:600}.job-card .jc-customer{font-size:13px;font-weight:700;color:var(--ink);letter-spacing:-.005em}.job-card .jc-vehicle{font-size:12px;color:var(--ink-3);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.drag-ghost-floating{height:auto!important;padding:10px 14px!important;border-radius:11px!important;transform:rotate(-1.5deg);box-shadow:0 16px 36px #0f172a38!important}.drop-ghost{position:absolute;top:10px;height:calc(var(--row-h) - 20px);border-radius:11px;background:#ff7a451f;border:2px dashed var(--accent);pointer-events:none;z-index:5;transition:left .08s ease,width .08s ease}.drop-ghost.cross-lane{background:#ff7a452e;box-shadow:0 0 0 4px #ff7a451a}.cancel-btn{position:absolute;top:6px;right:6px;width:20px;height:20px;border-radius:50%;border:1px solid rgba(255,255,255,.5);background:#fffffff2;color:var(--ink);font-size:13px;font-weight:700;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;z-index:4;opacity:0;transition:opacity .12s ease,background .12s ease,color .12s ease}.block:hover .cancel-btn{opacity:1}@media(pointer:coarse){.block .cancel-btn{opacity:1;width:26px;height:26px;font-size:16px}.block:hover .resize-handle:after,.block .resize-handle:after{opacity:.35}}.cancel-btn:hover{background:#dc2626;color:#fff;border-color:#dc2626}.empty-side{color:var(--ink-3);font-size:12.5px;padding:24px 16px;text-align:center;background:var(--surface-2);border:1px dashed var(--line-strong);border-radius:10px}.empty-grid{padding:40px;text-align:center;color:var(--ink-3);font-size:13px}.seg{display:inline-flex;background:var(--surface);border:1px solid var(--line);border-radius:11px;padding:3px;box-shadow:var(--shadow-sm)}.seg button{appearance:none;background:transparent;border:0;padding:6px 14px;border-radius:8px;font:inherit;color:var(--ink-3);cursor:pointer;font-weight:500;font-size:13px}.seg button.active{background:linear-gradient(95deg,var(--accent-1),var(--accent-2));color:#fff;box-shadow:0 2px 8px #ff7a4547}.month-view{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-md)}.month-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:36px repeat(6,minmax(110px,1fr));height:calc(100vh - 220px);min-height:700px}.month-dow{background:var(--surface-2);border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:var(--ink-2);letter-spacing:.08em;text-transform:uppercase}.month-dow:last-child{border-right:0}.month-cell{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:6px 8px;cursor:pointer;display:flex;flex-direction:column;gap:4px;background:var(--surface);transition:background .12s ease;position:relative;min-width:0;overflow:hidden}.month-cell:hover{background:var(--surface-2)}.month-cell:nth-child(7n+1):not(.month-dow){border-left:0}.month-cell.out-month{background:#fafbfc;color:var(--ink-3)}.month-cell.out-month .mc-num{color:var(--ink-3)}.month-cell.is-weekend{background-color:#fafafc}.month-cell.is-weekend.out-month{background-color:#f5f6f8}.month-cell.is-today{background:#ff7a450a}.month-cell.is-today .mc-num{color:var(--accent);font-weight:800}.mc-head{display:flex;align-items:center;gap:6px}.mc-num{font-size:13px;font-weight:700;color:var(--ink)}.mc-today-pip{width:6px;height:6px;border-radius:999px;background:var(--accent)}.mc-count{margin-left:auto;font-size:10px;color:var(--ink-3);font-weight:700;background:var(--surface-2);padding:1px 6px;border-radius:999px}.mc-jobs{display:flex;flex-direction:column;gap:2px;flex:1;min-height:0;overflow:hidden}.mc-pill{display:flex;align-items:center;gap:5px;padding:2px 7px;border-radius:5px;font-size:11px;line-height:1.2;cursor:pointer;position:relative;overflow:hidden;border:1px solid rgba(0,0,0,.04)}.mc-pill:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--bar, var(--full-bar))}.mc-pill-customer{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-left:4px;font-weight:600;color:var(--fg, var(--ink))}.mc-pill-tech{font-size:9.5px;font-weight:700;color:var(--fg, var(--ink-3));opacity:.8;letter-spacing:.04em;background:#fff6;padding:1px 4px;border-radius:3px}.mc-pill.t-full{background:linear-gradient(95deg,#ffb37ad9,#ff6e8cd9);--bar: rgba(255,255,255,.7);--fg: white}.mc-pill.t-full:before{background:#ffffff8c}.mc-pill.t-full .mc-pill-tech{background:#ffffff40;color:#fff}.mc-pill.t-half{background:var(--half-bg);--bar: var(--half-bar);--fg: var(--half-fg)}.mc-pill.t-threeq{background:var(--threeq-bg);--bar: var(--threeq-bar);--fg: var(--threeq-fg)}.mc-pill.t-quarter{background:var(--quarter-bg);--bar: var(--quarter-bar);--fg: var(--quarter-fg)}.mc-pill.t-decal{background:var(--decal-bg);--bar: var(--decal-bar);--fg: var(--decal-fg)}.mc-pill.t-removal{background:var(--removal-bg);--bar: var(--removal-bar);--fg: var(--removal-fg)}.mc-pill.forecast{opacity:.85;outline:1px dashed rgba(15,23,42,.18);outline-offset:-3px}.mc-pill.schedule{opacity:.95}.mc-pill.is-start{cursor:grab;touch-action:none}.mc-pill.is-start:active{cursor:grabbing}.mc-pill.is-tail{cursor:pointer;opacity:.65}.mc-pill.pending{opacity:.55;pointer-events:none}.month-cell.is-drop-target{background:#ff7a451f!important;outline:2px dashed var(--accent);outline-offset:-3px;z-index:2}.month-cell.is-drop-target.out-month{background:#ff7a452e!important}.mc-more{font-size:10px;color:var(--ink-3);font-weight:700;padding:2px 7px;cursor:pointer}.mc-more:hover{color:var(--accent)}.notice-toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%);z-index:200;display:flex;align-items:center;gap:10px;background:var(--ink);color:#fff;padding:12px 16px 12px 14px;border-radius:12px;box-shadow:0 12px 32px #0f172a52;font-size:13px;font-weight:500;max-width:540px;animation:noticeIn .2s ease;cursor:pointer}@keyframes noticeIn{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}.notice-icon{width:22px;height:22px;border-radius:50%;background:var(--accent);display:grid;place-items:center;font-size:13px;font-weight:700;flex-shrink:0}.notice-message{flex:1}.notice-close{background:transparent;border:0;color:#ffffffb3;font-size:18px;line-height:1;cursor:pointer;padding:0;width:22px;height:22px}.notice-close:hover{color:#fff}.loading,.error-box{padding:24px;text-align:center;color:var(--ink-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin:16px}.error-box{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.legend{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:12px 4px 4px;color:var(--ink-3);font-size:12px}.legend-item{display:inline-flex;align-items:center;gap:6px;font-weight:500}.legend-sw{width:14px;height:14px;border-radius:5px;border:1px solid rgba(0,0,0,.04)}.legend-sw.t-full{background:linear-gradient(135deg,var(--accent-1),var(--accent-2))}.day-view{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow-md);border:1px solid var(--line);overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch}.day-grid{display:grid;grid-template-columns:88px repeat(auto-fit,minmax(180px,1fr));position:relative}.day-corner{border-bottom:1px solid var(--line);border-right:1px solid var(--line);background:var(--surface-2);min-height:64px;position:sticky;left:0;z-index:11}.day-installer-head{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);background:var(--surface);min-height:64px}.day-installer-head:last-child{border-right:0}.day-installer-head .info{min-width:0}.day-installer-head .name{font-weight:700;font-size:13px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.day-installer-head .role{font-size:11px;color:var(--ink-3);margin-top:2px}.day-time-gutter{position:sticky;left:0;border-right:1px solid var(--line);background:var(--surface-2);z-index:10}.day-hour-tick{position:absolute;left:0;right:8px;font-size:11px;color:var(--ink-3);font-weight:600;text-align:right;transform:translateY(-50%);padding-right:6px;letter-spacing:.04em}.day-col{position:relative;border-right:1px solid var(--line);background:var(--surface)}.day-col:last-child{border-right:0}.day-col.is-drop-target{background:#ff7a450a}.day-grid-line{position:absolute;left:0;right:0;height:1px;background:var(--line);pointer-events:none}.day-lunch{position:absolute;left:0;right:0;background:repeating-linear-gradient(-45deg,#0f172a06 0 4px,#0f172a0b 4px 8px);display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;color:var(--ink-4);letter-spacing:.18em;text-transform:uppercase;pointer-events:none;z-index:1}.day-now{position:absolute;left:0;right:0;height:0;border-top:2px solid var(--accent);pointer-events:none;z-index:6}.day-now:before{content:"";position:absolute;left:-5px;top:-5px;width:10px;height:10px;border-radius:50%;background:var(--accent)}.day-now-label{position:absolute;left:-82px;top:-10px;font-size:11px;font-weight:700;color:var(--accent);background:var(--surface);padding:2px 6px;border-radius:4px;font-variant-numeric:tabular-nums}.day-drop-ghost{position:absolute;left:6px;right:6px;border-radius:11px;background:#ff7a451a;border:2px dashed var(--accent);pointer-events:none;z-index:5;transition:top .08s ease,height .08s ease}.day-block{position:absolute;left:6px;right:6px;border-radius:14px;padding:10px 14px 10px 16px;background:var(--full-bg);color:var(--full-fg);display:flex;flex-direction:column;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;border:1px solid rgba(255,255,255,.18);overflow:hidden;box-shadow:var(--shadow-sm);z-index:2;transition:top .1s ease,height .1s ease}.day-block:active{cursor:grabbing}.day-block.t-half{background:var(--half-bg);color:var(--half-fg);--bar: var(--half-bar)}.day-block.t-threeq{background:var(--threeq-bg);color:var(--threeq-fg);--bar: var(--threeq-bar)}.day-block.t-quarter{background:var(--quarter-bg);color:var(--quarter-fg);--bar: var(--quarter-bar)}.day-block.t-decal{background:var(--decal-bg);color:var(--decal-fg);--bar: var(--decal-bar)}.day-block.t-removal{background:var(--removal-bg);color:var(--removal-fg);--bar: var(--removal-bar)}.day-block:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--bar, rgba(255,255,255,.55))}.day-block.dragging{opacity:.55}.day-block.moving-out{opacity:.4}.day-block.selected{outline:2px solid var(--accent);outline-offset:2px}.day-block.pending{opacity:.65}.day-block.helper{background:#fff9;color:var(--ink-2);border:1px dashed var(--line-strong);padding:4px 12px;font-size:11px;cursor:pointer}.day-block-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}.day-block-pill{font-size:10px;font-weight:700;padding:3px 10px;border-radius:999px;letter-spacing:.04em}.day-block-time{font-size:11px;font-weight:700;opacity:.85;font-variant-numeric:tabular-nums;letter-spacing:.02em}.day-block-customer{font-size:18px;font-weight:800;line-height:1.15;letter-spacing:-.01em}.day-block-vehicle{font-size:12px;opacity:.85;margin-top:2px;font-weight:500}.day-block-foot{margin-top:auto;display:flex;align-items:center;gap:8px;padding-top:8px;font-size:10.5px;font-weight:700;letter-spacing:.04em;opacity:.85}.day-block-job{font-variant-numeric:tabular-nums}.day-block-dur{margin-left:auto}.day-cont{position:absolute;left:50%;transform:translate(-50%);font-size:9px;font-weight:800;letter-spacing:.12em;background:#ffffffd9;color:var(--ink-2);padding:2px 8px;z-index:3}.day-cont-up{top:0;border-radius:0 0 6px 6px}.day-cont-down{bottom:0;border-radius:6px 6px 0 0}.day-resize{position:absolute;left:0;right:0;height:8px;cursor:ns-resize;z-index:4}.day-resize-top{top:0}.day-resize-bottom{bottom:0}.day-block:hover .day-resize{background:#ffffff2e}@media(max-width:720px){.day-installer-head .role{display:none}.day-installer-head{padding:8px 10px;gap:8px}}.job-page{max-width:720px;margin:0 auto;padding:14px 16px 60px;font-family:-apple-system,BlinkMacSystemFont,Plus Jakarta Sans,sans-serif;color:var(--ink)}.job-loading,.job-error,.job-submitted{max-width:720px;margin:0 auto;padding:24px 16px}.job-error-msg{color:#b91c1c;font-weight:600;margin-top:16px}.job-back{display:inline-block;font-size:13px;color:var(--ink-3);text-decoration:none;font-weight:600;padding:4px 0;margin-bottom:8px}.job-back:hover{color:var(--accent)}.sync-badge{margin-left:auto;padding:4px 10px;font-size:12px;font-weight:700;border-radius:999px;white-space:nowrap;display:inline-flex;align-items:center;gap:4px}.sync-saving{background:#fef3c7;color:#92400e}.sync-saved{background:#d1fae5;color:#065f46}.sync-error{background:#fee2e2;color:#991b1b}.sync-check{font-weight:800}.job-discard-row{margin:8px 0 60px;text-align:center}.job-discard-btn{appearance:none;background:none;border:1px solid #FCA5A5;color:#b91c1c;padding:10px 18px;border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit}.job-discard-btn:hover{background:#fee2e2}.job-discard-btn:disabled{opacity:.5;cursor:not-allowed}.discard-backdrop{position:fixed;inset:0;background:#0009;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}.discard-modal{background:var(--surface);border-radius:14px;padding:24px;max-width:380px;width:100%;box-shadow:0 10px 40px #0003}.discard-modal h3{margin:0 0 12px;font-size:18px;font-weight:800;color:var(--ink)}.discard-modal p{margin:0 0 12px;font-size:14px;line-height:1.5;color:var(--ink-2)}.discard-modal .discard-warn{color:#b91c1c;font-weight:700;font-size:13px}.discard-actions{display:flex;gap:10px;margin-top:16px}.discard-actions button{flex:1;padding:12px;border-radius:10px;border:none;font-size:14px;font-weight:700;cursor:pointer;font-family:inherit}.discard-cancel{background:var(--surface-2);color:var(--ink)}.discard-confirm{background:#b91c1c;color:#fff}.discard-confirm:hover{background:#991b1b}.discard-cancel:disabled,.discard-confirm:disabled{opacity:.5;cursor:not-allowed}.job-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;position:sticky;top:0;z-index:20;background:var(--bg);margin:-14px -16px 8px;padding:calc(8px + env(safe-area-inset-top,0px)) 16px 8px;border-bottom:1px solid var(--line)}.job-head .job-back{margin-bottom:0;flex:1 0 100%;font-size:15px;padding:6px 0}.job-pill{font-size:12px;font-weight:700;padding:4px 12px;border-radius:999px}.job-date{font-size:13px;color:var(--ink-3);font-weight:600}.job-customer{font-size:28px;font-weight:800;letter-spacing:-.01em;margin:4px 0 2px;line-height:1.1}.job-vehicle{font-size:16px;color:var(--ink-3);font-weight:500;margin-bottom:16px}.job-details{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:6px 14px;margin-bottom:18px}.job-detail-row{display:flex;justify-content:space-between;align-items:baseline;padding:8px 0;border-top:1px solid var(--line);font-size:13.5px}.job-detail-row:first-child{border-top:0}.job-detail-row .k{color:var(--ink-3);font-weight:500}.job-detail-row .v{color:var(--ink);font-weight:600;text-align:right}.job-detail-row code{font-size:12px}.job-section{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:14px 14px 16px;margin-bottom:14px}.job-section h2{font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;color:var(--ink-3);margin:0 0 10px;display:flex;align-items:center;gap:8px}.job-section-count{background:var(--surface-2);color:var(--ink-2);font-weight:700;border-radius:999px;padding:1px 8px;font-size:11px;letter-spacing:.04em;text-transform:none}.job-wo-link{display:flex;align-items:center;justify-content:space-between;background:var(--surface-2);padding:12px 14px;border-radius:9px;text-decoration:none;color:var(--ink);font-weight:600;font-size:14px;border:1px solid var(--line)}.job-wo-link:hover{background:var(--line)}.job-wo-link+.job-wo-link{margin-top:6px}.job-action-btn{background:var(--ink);color:#fff;border:none;font-weight:700;font-size:14px;padding:12px 22px;border-radius:10px;cursor:pointer;letter-spacing:.01em}.job-action-btn:active{transform:translateY(1px)}.job-action-btn:disabled{opacity:.5;cursor:not-allowed}.job-vin-row{display:flex;flex-direction:column;gap:12px}.job-vin-result{background:var(--surface-2);padding:10px 14px;border-radius:9px;font-size:13px;display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--line)}.job-vin-result.ok{background:#e8f8ee;border-color:#45b07e;color:#1f6b49}.job-vin-result.mismatch{background:#fff1e0;border-color:#e0944a;color:#8a4a12}.job-vin-result code{font-weight:700;font-size:13px}.ok-tag,.mismatch-tag{font-weight:700}.job-textarea{width:100%;border:1px solid var(--line-strong);border-radius:10px;padding:12px 14px;font-size:14px;font-family:inherit;resize:vertical;background:var(--surface-2);color:var(--ink);box-sizing:border-box}.job-textarea:focus{outline:2px solid var(--accent);outline-offset:-1px}.job-time-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.job-time-grid label{display:flex;flex-direction:column;gap:6px;font-size:11px;font-weight:700;color:var(--ink-3);letter-spacing:.04em;text-transform:uppercase}.job-time-grid input{width:100%;border:1px solid var(--line-strong);border-radius:10px;padding:12px;font-size:18px;font-weight:700;font-variant-numeric:tabular-nums;text-align:center;background:var(--surface-2);color:var(--ink);font-family:inherit;box-sizing:border-box}.job-time-grid input:focus{outline:2px solid var(--accent);outline-offset:-1px}.job-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px}.job-photo-thumb{position:relative;aspect-ratio:1 / 1;border-radius:10px;overflow:hidden;background:var(--surface-2);border:1px solid var(--line)}.job-photo-thumb img{width:100%;height:100%;object-fit:cover;display:block}.job-photo-remove{position:absolute;top:4px;right:4px;background:#000000b3;color:#fff;border:none;width:24px;height:24px;border-radius:50%;font-size:16px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1}.photo-status{position:absolute;bottom:4px;left:4px;background:#fdab3deb;color:#fff;width:22px;height:22px;border-radius:50%;font-size:14px;font-weight:800;display:flex;align-items:center;justify-content:center;line-height:1}.photo-status.failed{background:#dc2626eb}.job-photo-add{aspect-ratio:1 / 1;border-radius:10px;background:var(--surface-2);border:2px dashed var(--line-strong);font-size:13px;font-weight:600;color:var(--ink-3);cursor:pointer;font-family:inherit}.job-photo-add:hover{border-color:var(--accent);color:var(--accent)}.job-photo-add:disabled{opacity:.5;cursor:not-allowed}.job-error-inline{background:#fee2e2;color:#991b1b;padding:12px 14px;border-radius:10px;font-size:13px;font-weight:600;margin-bottom:12px;border:1px solid #FCA5A5}.job-progress{background:var(--accent-soft);color:var(--ink-2);padding:12px 14px;border-radius:10px;font-size:13px;font-weight:600;margin-bottom:12px;border:1px solid var(--accent)}.job-submit-row{padding:14px 0;margin-top:14px}.job-submit-btn{width:100%;background:linear-gradient(135deg,var(--accent-1),var(--accent-2));color:#fff;border:none;font-weight:800;font-size:17px;padding:18px 24px;border-radius:14px;cursor:pointer;letter-spacing:.01em;box-shadow:0 4px 14px #ff7a4559}.job-submit-btn:active{transform:translateY(1px)}.job-submit-btn:disabled{opacity:.6;cursor:not-allowed;background:var(--ink-3);box-shadow:none}.job-submitted-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:32px 24px;text-align:center;margin-top:24px}.job-submitted-check{width:64px;height:64px;margin:0 auto 16px;border-radius:50%;background:linear-gradient(135deg,#00c875,#45b07e);color:#fff;display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:700}.job-submitted-card h1{font-size:22px;font-weight:800;margin:0 0 8px}.job-submitted-card p{color:var(--ink-3);font-size:14px;margin:4px 0}.vin-modal-backdrop{position:fixed;inset:0;background:#000000d9;z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px}.vin-modal{background:var(--surface);border-radius:16px;width:100%;max-width:520px;overflow:hidden;display:flex;flex-direction:column}.vin-modal-head{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--line);font-weight:700;font-size:14px}.vin-close{background:none;border:none;font-size:24px;cursor:pointer;color:var(--ink-3);padding:0;line-height:1}.vin-video-wrap{position:relative;background:#000}.vin-video{width:100%;height:320px;object-fit:cover;display:block;background:#000}.vin-reticle{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:70%;height:50%;pointer-events:none;background:linear-gradient(to right,white 24px,transparent 24px) 0 0 / 100% 3px no-repeat,linear-gradient(to right,transparent calc(100% - 24px),white calc(100% - 24px)) 0 0 / 100% 3px no-repeat,linear-gradient(to right,white 24px,transparent 24px) 0 100% / 100% 3px no-repeat,linear-gradient(to right,transparent calc(100% - 24px),white calc(100% - 24px)) 0 100% / 100% 3px no-repeat,linear-gradient(to bottom,white 24px,transparent 24px) 0 0 / 3px 100% no-repeat,linear-gradient(to bottom,transparent calc(100% - 24px),white calc(100% - 24px)) 0 0 / 3px 100% no-repeat,linear-gradient(to bottom,white 24px,transparent 24px) 100% 0 / 3px 100% no-repeat,linear-gradient(to bottom,transparent calc(100% - 24px),white calc(100% - 24px)) 100% 0 / 3px 100% no-repeat;opacity:.6}.vin-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 18px;border-bottom:1px solid var(--line);flex-wrap:wrap}.vin-torch{background:var(--surface-2);border:1px solid var(--line-strong);color:var(--ink);font-size:13px;font-weight:700;padding:8px 14px;border-radius:10px;cursor:pointer;font-family:inherit;min-height:36px}.vin-torch.on{background:#fef3c7;border-color:#fcd34d;color:#92400e}.vin-ocr-btn{background:var(--ink);color:#fff;border:1px solid var(--ink);font-size:13px;font-weight:700;padding:8px 14px;border-radius:10px;cursor:pointer;font-family:inherit;min-height:36px}.vin-ocr-btn:disabled{opacity:.55;cursor:not-allowed}.vin-hint{padding:10px 18px;font-size:13px;color:var(--ink-3);text-align:center}.vin-expected{font-size:12px;color:var(--ink-3)}.vin-expected code{background:var(--surface-2);padding:2px 6px;border-radius:4px;font-weight:700;color:var(--ink)}.vin-error{padding:24px 18px;font-size:14px;color:#b91c1c;text-align:center}.vin-manual{padding:14px 18px 18px;background:var(--surface-2);border-top:1px solid var(--line)}.vin-manual-label{font-size:12px;font-weight:700;color:var(--ink-3);margin-bottom:8px;text-transform:uppercase;letter-spacing:.04em}.vin-manual-input{flex:1;padding:10px 12px;font-size:15px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--line-strong);border-radius:10px;background:var(--surface);color:var(--ink)}.vin-manual-submit{background:var(--accent);color:#fff;border:none;padding:0 16px;font-size:13px;font-weight:700;border-radius:10px;cursor:pointer;font-family:inherit;white-space:nowrap}.vin-manual-submit:disabled{opacity:.45;cursor:not-allowed}.vin-manual-error{margin-top:8px;font-size:12px;color:#b91c1c;font-weight:600}.wo-preview{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;overflow:hidden;cursor:zoom-in;margin-bottom:8px}.wo-preview:hover{border-color:var(--ink-4)}.wo-preview-img{display:block;width:100%;max-height:420px;object-fit:contain;background:#fff}.wo-preview-iframe{display:block;width:100%;height:480px;border:0;background:#fff}.wo-preview-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;font-size:13px;font-weight:600;color:var(--ink-2);background:var(--surface);border-top:1px solid var(--line)}.wo-preview-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wo-preview-zoom{color:var(--accent);font-size:12px;font-weight:700}.wo-preview-zoom-btn{background:var(--surface-2);border:1px solid var(--line-strong);color:var(--ink-2);font-size:12px;font-weight:700;padding:6px 12px;border-radius:8px;cursor:pointer}.wo-preview-zoom-btn:hover{background:var(--line)}.wo-preview-pdf{cursor:zoom-in}.wo-preview-pdf-wrap{max-height:480px;overflow:hidden;pointer-events:none;background:#fff}.wo-preview-iframe-wrap{pointer-events:none}.wo-preview-other{cursor:zoom-in}.wo-preview-other .wo-preview-foot{border-top:none}.wo-fullscreen-backdrop{position:fixed;inset:0;background:#000000eb;z-index:1000;display:flex;align-items:stretch;justify-content:stretch;padding:0}.wo-fullscreen{width:100%;height:100%;display:flex;flex-direction:column;background:#fff}.wo-fullscreen-head{display:flex;align-items:center;justify-content:space-between;padding:calc(12px + env(safe-area-inset-top,0px)) 16px 12px;background:var(--ink);color:#fff;font-weight:700;font-size:14px;flex-shrink:0}.wo-fullscreen-close{min-width:44px;min-height:44px}.wo-fullscreen-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-right:12px}.wo-fullscreen-close{background:none;border:none;color:#fff;font-size:28px;cursor:pointer;line-height:1;padding:0 4px}.wo-fullscreen-body{flex:1;min-height:0;position:relative;background:#1a1a1a;overflow:hidden}.wo-fullscreen-iframe{position:absolute;inset:0;width:100%;height:100%;display:block;border:0;background:#fff}.wo-fullscreen-img-fit{position:absolute;inset:0;background-color:#1a1a1a;background-position:center center;background-size:contain;background-repeat:no-repeat}.wo-fullscreen-body.is-actual-size{overflow:auto}.wo-fullscreen-img-raw{display:block}.pdf-viewer{width:100%;height:100%;position:relative}.pdf-viewer-fit{overflow:hidden}.pdf-viewer-fullscreen{position:absolute;inset:0;overflow:auto;background:#1a1a1a}.pdf-viewer-pages{display:flex;flex-direction:column;align-items:center;gap:8px}.pdf-viewer-pages .pdf-page{display:block;background:#fff;box-shadow:0 1px 4px #00000026;max-width:100%}.pdf-viewer-status{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:600;pointer-events:none}.pdf-viewer-error{color:#fca5a5}.wo-fullscreen-zoom-toggle{background:#ffffff26;color:#fff;border:none;border-radius:8px;padding:8px 14px;font-size:13px;font-weight:700;cursor:pointer;margin-right:8px;min-height:36px;font-family:inherit}.wo-fullscreen-zoom-toggle:hover{background:#ffffff40}@media(max-width:759px){.page-head{padding:12px 14px;flex-wrap:wrap;gap:8px}.page-title{font-size:20px}.page-sub{font-size:12px}.body{overflow-x:auto;-webkit-overflow-scrolling:touch;padding:0 14px 24px}.calendar-wrap{min-width:720px}}.ce-overlay{position:fixed;inset:0;background:#0f172a52;display:flex;justify-content:flex-end;z-index:110;opacity:0;pointer-events:none;transition:opacity .18s ease}.ce-overlay.open{opacity:1;pointer-events:auto}.ce-drawer{width:min(620px,96vw);height:100vh;background:#f8f9fb;display:flex;flex-direction:column;box-shadow:-8px 0 30px #0f172a2e;animation:ce-drawer-in .22s cubic-bezier(.22,.61,.36,1)}@keyframes ce-drawer-in{0%{transform:translate(40px);opacity:.6}to{transform:translate(0);opacity:1}}.ce-drawer-head{display:flex;align-items:center;gap:10px;padding:12px 18px;background:#fff;border-bottom:1px solid #ECEEF2;flex-shrink:0}.ce-drawer-title h2{margin:0;font-size:16px;font-weight:700;letter-spacing:-.01em;color:#0f172a}.ce-grow{flex:1}.ce-btn{appearance:none;background:#fff;border:1px solid #DEE1E6;color:#344054;font:inherit;font-weight:600;font-size:12.5px;padding:8px 14px;border-radius:9px;cursor:pointer;transition:all .12s ease}.ce-btn:hover:not(:disabled){background:#f8f9fb;border-color:#9ca3af;color:#0f172a}.ce-btn:disabled{opacity:.45;cursor:not-allowed}.ce-btn.primary{background:#ff7a45;color:#fff;border-color:#ff7a45}.ce-btn.primary:hover:not(:disabled){background:#ed5e1f;border-color:#ed5e1f}.ce-icon-btn{background:transparent;border:0;width:32px;height:32px;border-radius:8px;cursor:pointer;color:#6b7280;display:inline-grid;place-items:center}.ce-icon-btn:hover{background:#f4f5f8;color:#0f172a}.ce-error{background:#fef2f2;border-bottom:1px solid #FECACA;color:#b91c1c;font-size:12.5px;padding:8px 18px;display:flex;align-items:center;gap:8px}.ce-error button{margin-left:auto;background:transparent;border:0;color:#b91c1c;cursor:pointer}.ce-body{flex:1;overflow-y:auto;padding:20px 24px 28px}.ce-loading{padding:28px;text-align:center;color:#9ca3af;font-size:13px}.ce-form{display:flex;flex-direction:column;gap:18px}.ce-section{display:flex;flex-direction:column;gap:8px}.ce-section-h{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#6b7280}.ce-label{font-size:11px;font-weight:500;color:#9ca3af;letter-spacing:0;text-transform:none}.ce-input{border:1px solid #DEE1E6;background:#fff;border-radius:8px;padding:8px 11px;font:inherit;font-size:13px;color:#0f172a;width:100%;box-sizing:border-box;transition:border-color .12s ease,box-shadow .12s ease}.ce-input:focus{outline:none;border-color:#ff7a45;box-shadow:0 0 0 3px #ff7a452e}.ce-textarea{font-family:inherit;resize:vertical;min-height:64px}.ce-row-2,.ce-row-3{display:grid;gap:8px 10px}.ce-row-2{grid-template-columns:repeat(2,1fr)}.ce-row-3{grid-template-columns:repeat(3,1fr)}.ce-row-2 label,.ce-row-3 label{display:flex;flex-direction:column;gap:4px}@media(max-width:600px){.ce-row-2,.ce-row-3{grid-template-columns:1fr}}.ce-toggle{display:inline-flex;gap:0;background:#f4f5f8;border-radius:9px;padding:3px;align-self:flex-start}.ce-toggle-opt{appearance:none;background:transparent;border:0;font:inherit;font-size:12.5px;font-weight:600;color:#6b7280;padding:6px 14px;border-radius:7px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:background .12s,color .12s}.ce-toggle-opt:hover{color:#0f172a}.ce-toggle-opt.is-on{background:#fff;color:#0f172a;box-shadow:0 1px 2px #0f172a14}.wrt-root{min-height:100vh;background:#f4f5f8;font-family:Inter Tight,-apple-system,BlinkMacSystemFont,Plus Jakarta Sans,system-ui,sans-serif;font-feature-settings:"cv11","ss01","ss03";font-size:13.5px;color:#0f1024;-webkit-font-smoothing:antialiased}.wrt-main{max-width:1280px;margin:0 auto;padding:20px 22px 60px}.wrt-head{display:flex;align-items:center;gap:12px;margin-bottom:4px}.wrt-title{font-size:26px;font-weight:700;letter-spacing:-.02em;margin:0}.wrt-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.01em;background:#0f11180f;color:#4b5563;border:1px solid rgba(15,17,24,.08)}.wrt-sub{color:#6b7280;font-size:13px;margin:0 0 18px}.wrt-denied{margin:80px auto 0;max-width:420px;text-align:center;padding:32px 28px;background:#fff;border:1px solid rgba(15,17,24,.08);border-radius:16px;box-shadow:0 1px 2px #0f11180a,0 2px 8px #0f11180d}.wrt-denied h2{margin:0 0 8px;font-size:18px}.wrt-denied p{margin:0;color:#6b7280;font-size:13px}.wrt-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:12px 14px;background:#fff;border:1px solid rgba(15,17,24,.08);border-radius:12px;margin-bottom:14px}.wrt-chips{display:inline-flex;gap:4px;background:#0f11180d;padding:3px;border-radius:8px;flex-wrap:wrap}.wrt-chip{border:0;background:transparent;font:inherit;font-size:12px;font-weight:600;color:#4b5563;padding:4px 10px;border-radius:6px;cursor:pointer;transition:background .1s ease,color .1s ease}.wrt-chip:hover{color:#0f1024}.wrt-chip.is-on{background:#fff;color:#0f1024;box-shadow:0 1px 2px #0f11180f}.wrt-new-btn{margin-left:auto;display:inline-flex;align-items:center;gap:6px;border:1px solid #0F1024;background:#0f1024;color:#fff;font:inherit;font-size:12.5px;font-weight:600;padding:6px 12px;border-radius:8px;cursor:pointer;transition:background .1s ease}.wrt-new-btn:hover{background:#1f2235}.wrt-status-pill{display:inline-flex;align-items:center;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.01em;white-space:nowrap}.wrt-status-open{background:#e6873a1f;color:#c2570c}.wrt-status-investigating{background:#2a6fdb1f;color:#1d4ed8}.wrt-status-approved_repair,.wrt-status-approved_redo{background:#1f8a5b1f;color:#15803d}.wrt-status-approved_compensation{background:#7c5cff24;color:#5b41cc}.wrt-status-denied{background:#ef44441f;color:#b91c1c}.wrt-status-resolved{background:#0f111814;color:#4b5563}.wrt-table-wrap{background:#fff;border:1px solid rgba(15,17,24,.08);border-radius:12px;overflow:hidden;box-shadow:0 1px 2px #0f11180a}.wrt-table{width:100%;border-collapse:collapse;font-size:13px}.wrt-table thead th{text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;background:#f9fafb;padding:10px 14px;border-bottom:1px solid rgba(15,17,24,.08)}.wrt-table tbody tr{cursor:pointer;transition:background .08s ease}.wrt-table tbody tr:hover{background:#f9fafb}.wrt-table tbody td{padding:10px 14px;border-bottom:1px solid rgba(15,17,24,.05);vertical-align:top}.wrt-table tbody tr:last-child td{border-bottom:0}.wrt-cell-name{font-weight:600}.wrt-cell-sub{font-size:11.5px;color:#6b7280;margin-top:2px}.wrt-cell-complaint{color:#4b5563;font-size:12.5px;max-width:380px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.wrt-cell-time{font-variant-numeric:tabular-nums;color:#4b5563;white-space:nowrap}.wrt-empty{padding:60px 20px;text-align:center;color:#6b7280}.wrt-empty h3{margin:0 0 6px;font-size:16px;color:#0f1024}.wrt-empty p{margin:0;font-size:13px}.wrt-error{background:#fef2f2;border:1px solid #FECACA;color:#b91c1c;padding:10px 14px;border-radius:10px;margin-bottom:12px;font-size:13px}.wrt-detail-back{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:#4b5563;text-decoration:none;padding:4px 8px;border-radius:6px;margin-bottom:10px}.wrt-detail-back:hover{background:#0f11180d;color:#0f1024}.wrt-detail-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:18px}.wrt-detail-title{font-size:22px;font-weight:700;letter-spacing:-.01em;margin:0}.wrt-detail-actions{margin-left:auto;display:inline-flex;gap:8px}.wrt-danger-btn{border:1px solid rgba(239,68,68,.4);background:#fff;color:#b91c1c;font:inherit;font-size:12.5px;font-weight:600;padding:5px 10px;border-radius:7px;cursor:pointer;transition:background .1s ease}.wrt-danger-btn:hover{background:#ef444414}.wrt-card{background:#fff;border:1px solid rgba(15,17,24,.08);border-radius:12px;padding:16px 18px;margin-bottom:14px;box-shadow:0 1px 2px #0f11180a}.wrt-card-head{display:flex;align-items:center;gap:8px;margin-bottom:10px}.wrt-card-title{font-size:14px;font-weight:700;margin:0;letter-spacing:-.005em}.wrt-card-stamp{margin-left:auto;font-size:11.5px;color:#9ca3af;font-variant-numeric:tabular-nums}.wrt-field{margin-bottom:12px}.wrt-field:last-child{margin-bottom:0}.wrt-field-label{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;margin-bottom:4px}.wrt-field-value{font-size:13px;color:#0f1024;line-height:1.5;white-space:pre-wrap;word-break:break-word}.wrt-field-value.is-muted{color:#9ca3af;font-style:italic}.wrt-input,.wrt-textarea,.wrt-select{width:100%;border:1px solid rgba(15,17,24,.14);background:#fff;border-radius:8px;padding:8px 10px;font:inherit;font-size:13px;color:#0f1024;box-sizing:border-box}.wrt-textarea{resize:vertical;min-height:84px;line-height:1.5}.wrt-input:focus,.wrt-textarea:focus,.wrt-select:focus{outline:2px solid rgba(15,17,24,.4);outline-offset:1px}.wrt-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:720px){.wrt-grid-2{grid-template-columns:1fr}}.wrt-tag-input{display:flex;flex-wrap:wrap;gap:6px;align-items:center;border:1px solid rgba(15,17,24,.14);background:#fff;border-radius:8px;padding:6px 8px;min-height:38px}.wrt-tag{display:inline-flex;align-items:center;gap:4px;background:#0f111814;color:#0f1024;font-size:12px;font-weight:600;padding:3px 4px 3px 8px;border-radius:6px}.wrt-tag button{border:0;background:transparent;color:#6b7280;cursor:pointer;padding:0 4px;font-size:14px;line-height:1}.wrt-tag button:hover{color:#b91c1c}.wrt-tag-input input{flex:1;min-width:100px;border:0;outline:0;font:inherit;font-size:13px;padding:4px;background:transparent}.wrt-decision-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}@media(max-width:720px){.wrt-decision-grid{grid-template-columns:1fr}}.wrt-decision-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid rgba(15,17,24,.14);background:#fff;color:#0f1024;font:inherit;font-size:13px;font-weight:600;padding:10px 12px;border-radius:9px;cursor:pointer;transition:background .1s ease,border-color .1s ease}.wrt-decision-btn:hover:not(:disabled){background:#f9fafb;border-color:#0f11184d}.wrt-decision-btn:disabled{opacity:.5;cursor:not-allowed}.wrt-decision-btn.is-deny{border-color:#ef444459;color:#b91c1c}.wrt-decision-btn.is-deny:hover:not(:disabled){background:#ef44440f}.wrt-save-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid #0F1024;background:#0f1024;color:#fff;font:inherit;font-size:12.5px;font-weight:600;padding:7px 14px;border-radius:8px;cursor:pointer;transition:background .1s ease}.wrt-save-btn:hover:not(:disabled){background:#1f2235}.wrt-save-btn:disabled{opacity:.5;cursor:not-allowed}.wrt-save-row{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.wrt-repair-link{display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit;padding:10px 12px;border-radius:9px;background:#f9fafb;border:1px solid rgba(15,17,24,.06)}.wrt-repair-link:hover{background:#f4f5f8}.wrt-repair-job{font-weight:700;font-variant-numeric:tabular-nums}.wrt-repair-stage{font-size:11.5px;color:#6b7280;text-transform:capitalize}.wrt-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.wrt-photo-card{position:relative;border-radius:10px;overflow:hidden;background:#f9fafb;border:1px solid rgba(15,17,24,.06);aspect-ratio:4 / 3}.wrt-photo-card img{width:100%;height:100%;object-fit:cover;display:block}.wrt-photo-empty{display:flex;align-items:center;justify-content:center;color:#9ca3af;font-size:11px}.wrt-photo-caption{position:absolute;left:0;right:0;bottom:0;background:linear-gradient(to top,rgba(15,17,24,.65),transparent);color:#fff;font-size:11px;padding:14px 8px 6px;word-break:break-word}.wrt-photo-remove{position:absolute;top:6px;right:6px;width:26px;height:26px;border-radius:50%;border:0;background:#0f1118b3;color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .12s ease}.wrt-photo-card:hover .wrt-photo-remove{opacity:1}.wrt-photo-upload{display:inline-flex;align-items:center;gap:6px;border:1px dashed rgba(15,17,24,.2);background:#fff;font:inherit;font-size:12.5px;font-weight:600;color:#4b5563;padding:8px 12px;border-radius:8px;cursor:pointer}.wrt-photo-upload:hover{background:#f9fafb;color:#0f1024}.wrt-drawer-backdrop{position:fixed;inset:0;background:#0f111866;z-index:80;animation:wrt-fade .12s ease-out;border:0}.wrt-drawer{position:fixed;top:0;right:0;bottom:0;width:min(560px,100vw);background:#fff;z-index:81;display:flex;flex-direction:column;box-shadow:-10px 0 30px #0f111826;animation:wrt-slide-in .18s ease-out}@keyframes wrt-fade{0%{opacity:0}to{opacity:1}}@keyframes wrt-slide-in{0%{transform:translate(20px);opacity:0}to{transform:translate(0);opacity:1}}.wrt-drawer-head{padding:16px 20px;border-bottom:1px solid rgba(15,17,24,.08);display:flex;align-items:center;gap:12px}.wrt-drawer-head h2{font-size:16px;font-weight:700;margin:0}.wrt-drawer-close{margin-left:auto;border:0;background:transparent;color:#6b7280;cursor:pointer;padding:6px;border-radius:6px}.wrt-drawer-close:hover{background:#0f11180d;color:#0f1024}.wrt-drawer-body{flex:1;overflow:auto;padding:18px 20px}.wrt-drawer-foot{border-top:1px solid rgba(15,17,24,.08);padding:14px 20px;display:flex;gap:8px;justify-content:flex-end}.wrt-cancel-btn{border:1px solid rgba(15,17,24,.14);background:#fff;font:inherit;font-size:12.5px;font-weight:600;color:#4b5563;padding:7px 14px;border-radius:8px;cursor:pointer}.wrt-cancel-btn:hover{background:#f9fafb}.wrt-mini{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#fff;border:1px solid rgba(15,17,24,.06);border-radius:9px;text-decoration:none;color:inherit;margin-bottom:6px;transition:background .08s ease}.wrt-mini:hover{background:#f9fafb}.wrt-mini-complaint{flex:1;font-size:12.5px;color:#4b5563;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wrt-mini-time{font-size:11.5px;color:#9ca3af;font-variant-numeric:tabular-nums}:root{--c-bg: #F4F5F8;--c-surface: #FFFFFF;--c-surface-2: #F8F9FB;--c-line: #ECEEF2;--c-line-strong: #DEE1E6;--c-ink: #0F172A;--c-ink-2: #344054;--c-ink-3: #6B7280;--c-ink-4: #98A2B3;--c-accent: #FF7A45;--c-accent-soft: #FFEFE4;--c-radius: 14px;--c-radius-sm: 10px;--c-shadow-sm: 0 1px 2px rgba(15, 23, 42, .05);--c-shadow-md: 0 1px 0 rgba(15, 23, 42, .04), 0 6px 20px rgba(15, 23, 42, .07)}.clients-root{min-height:100vh;background:var(--c-bg);font-family:-apple-system,BlinkMacSystemFont,Plus Jakarta Sans,system-ui,sans-serif;color:var(--c-ink);-webkit-font-smoothing:antialiased}.clients-list-main{max-width:1200px;margin:0 auto;padding:24px 20px 60px}.clients-list-head{display:flex;align-items:center;gap:10px;margin-bottom:14px}.clients-new-btn{appearance:none;display:inline-flex;align-items:center;gap:6px;background:#ff7a45;color:#fff;border:0;font:inherit;font-weight:600;font-size:13px;padding:8px 14px;border-radius:9px;cursor:pointer;transition:background .12s ease}.clients-new-btn:hover{background:#ed5e1f}.clients-title{font-size:24px;font-weight:800;letter-spacing:-.02em;margin:0}.clients-count{font-size:12px;font-weight:700;color:var(--c-ink-3);background:var(--c-surface);border:1px solid var(--c-line);padding:2px 9px;border-radius:999px}.clients-search-wrap{margin-bottom:16px}.clients-search{width:100%;border:1px solid var(--c-line-strong);background:var(--c-surface);border-radius:10px;padding:11px 14px;font:inherit;font-size:14px;color:var(--c-ink);box-sizing:border-box;transition:border-color .12s ease,box-shadow .12s ease;box-shadow:var(--c-shadow-sm)}.clients-search:focus{outline:none;border-color:var(--c-accent);box-shadow:0 0 0 3px #ff7a452e}.clients-search::placeholder{color:var(--c-ink-4)}.clients-loading,.clients-error,.clients-empty{background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--c-radius);padding:28px 24px;text-align:center;color:var(--c-ink-3);font-size:14px;margin-top:12px}.clients-error{color:#b91c1c;background:#fef2f2;border-color:#fecaca;text-align:left}.clients-error code{display:block;margin-top:8px;font-size:12px;background:#0000000a;padding:6px 8px;border-radius:6px}.client-cards{display:grid;grid-template-columns:1fr;gap:12px}.client-card{display:grid;grid-template-columns:56px minmax(0,1fr) auto;align-items:start;gap:16px;padding:16px 20px;background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--c-radius);text-decoration:none;color:inherit;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease;box-shadow:var(--c-shadow-sm)}.client-card:hover{transform:translateY(-1px);border-color:var(--c-line-strong);box-shadow:var(--c-shadow-md)}.cc-avatar{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:18px;color:#fff;flex-shrink:0}.cc-main{min-width:0}.cc-row1{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:4px}.cc-name{font-size:16px;font-weight:800;letter-spacing:-.01em;color:var(--c-ink)}.cc-industry{font-size:12px;color:var(--c-ink-3);font-weight:600}.cc-contact-line{font-size:13px;color:var(--c-ink-2);margin-bottom:6px}.cc-contact-name{font-weight:600}.cc-contact-role{margin-left:6px;color:var(--c-ink-3)}.cc-coords{display:flex;align-items:center;gap:16px;flex-wrap:wrap;font-size:12.5px;color:var(--c-ink-3)}.cc-coord{display:inline-flex;align-items:center;gap:5px}.cc-icon{width:16px;height:16px;display:inline-grid;place-items:center;color:var(--c-ink-4);flex-shrink:0}.cc-meta{display:flex;flex-direction:column;align-items:flex-end;gap:6px;font-size:12px;color:var(--c-ink-3);white-space:nowrap}.cc-chips{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.cc-chip{background:var(--c-surface-2);padding:2px 8px;border-radius:999px;font-weight:600;font-size:11.5px;color:var(--c-ink-2)}.cc-since,.cc-last-install{color:var(--c-ink-3)}.cc-ltv{display:inline-block;background:linear-gradient(135deg,#ffe7d7,#ffd0b0);color:#b84e18;font-weight:800;font-size:12.5px;letter-spacing:-.01em;padding:4px 10px;border-radius:999px;margin-bottom:6px;white-space:nowrap}.type-pill{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:3px 9px;border-radius:999px}.type-business{background:#e0e7ff;color:#3730a3}.type-consumer{background:#fce7f3;color:#831843}.stage-pill{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:2px 8px;border-radius:999px}.stage-onboarding{background:#fef3c7;color:#92400e}.stage-design{background:#f2eafe;color:#5b2dbe}.stage-production{background:#dbf4ff;color:#075985}.stage-install{background:#ffefe4;color:#c2410c}.stage-complete{background:#d1fae5;color:#065f46}.cdp-main{max-width:1100px;margin:0 auto;padding:18px 20px 60px}.cdp-back{display:inline-flex;align-items:center;font-size:13px;font-weight:600;color:var(--c-ink-3);text-decoration:none;margin-bottom:12px;padding:6px 10px;border-radius:8px;transition:color .12s ease,background .12s ease}.cdp-back:hover{color:var(--c-ink);background:var(--c-surface-2)}.cdp-hero{display:grid;grid-template-columns:80px minmax(0,1fr) auto;align-items:center;gap:22px;background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--c-radius);padding:22px 26px;box-shadow:var(--c-shadow-md);margin-bottom:18px}.cdp-hero-avatar{width:80px;height:80px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:26px;color:#fff;flex-shrink:0}.cdp-hero-main{min-width:0}.cdp-hero-name-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:6px}.cdp-hero-name{font-size:26px;font-weight:800;letter-spacing:-.015em;margin:0}.cdp-hero-industry{font-size:13px;color:var(--c-ink-3);font-weight:600}.cdp-hero-contact{margin-top:4px}.cdp-hero-contact-name{font-weight:600;font-size:14px;color:var(--c-ink-2)}.cdp-hero-contact-role{color:var(--c-ink-3)}.cdp-hero-coords{display:flex;gap:18px;flex-wrap:wrap;margin-top:6px;font-size:13px;color:var(--c-ink-2)}.cdp-hero-coord{display:inline-flex;align-items:center;gap:6px;color:var(--c-ink-2);text-decoration:none}.cdp-hero-coord:hover{color:var(--c-accent)}.cdp-hero-edit{appearance:none;border:1px solid var(--c-line-strong);background:var(--c-surface);color:var(--c-ink-2);font:inherit;font-weight:700;font-size:13px;padding:9px 16px;border-radius:10px;cursor:pointer;transition:all .12s ease}.cdp-hero-edit:not(:disabled):hover{background:var(--c-ink);color:#fff;border-color:var(--c-ink)}.cdp-hero-edit:disabled{opacity:.55;cursor:not-allowed}.cdp-tabs{display:flex;gap:4px;padding:4px;background:var(--c-surface);border:1px solid var(--c-line);border-radius:12px;margin-bottom:18px;overflow-x:auto}.cdp-tab{appearance:none;border:0;background:transparent;padding:9px 16px;font:inherit;font-weight:600;font-size:13.5px;color:var(--c-ink-3);border-radius:8px;cursor:pointer;white-space:nowrap;transition:color .12s ease,background .12s ease}.cdp-tab:hover{color:var(--c-ink)}.cdp-tab.is-active{background:var(--c-ink);color:#fff}.cdp-tab-body{display:flex;flex-direction:column;gap:16px}.cdp-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.cdp-stat{background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--c-radius);padding:16px 18px;box-shadow:var(--c-shadow-sm)}.cdp-stat-label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--c-ink-3);margin-bottom:6px}.cdp-stat-value{font-size:26px;font-weight:800;letter-spacing:-.01em;color:var(--c-ink);line-height:1.1;font-variant-numeric:tabular-nums}.cdp-stat-value-sm{font-size:18px}.cdp-section{background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--c-radius);padding:18px 22px;box-shadow:var(--c-shadow-sm)}.cdp-section-head{display:flex;align-items:baseline;gap:10px;margin-bottom:12px}.cdp-section-title{font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--c-ink-2);margin:0}.cdp-section-count{background:var(--c-surface-2);color:var(--c-ink-2);font-weight:700;border-radius:999px;padding:1px 9px;font-size:11px}.cdp-section-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.cdp-info-block{display:flex;flex-direction:column;gap:4px}.cdp-info-label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--c-ink-3);margin-bottom:2px}.cdp-info-value{font-size:15px;font-weight:700;color:var(--c-ink)}.cdp-info-sub{font-size:13px;color:var(--c-ink-3)}.cdp-info-link{font-size:13px;color:var(--c-ink-2);text-decoration:none}.cdp-info-link:hover{color:var(--c-accent);text-decoration:underline}.cdp-notes{margin-top:14px;padding-top:14px;border-top:1px solid var(--c-line)}.cdp-notes p{margin:6px 0 0;font-size:13.5px;color:var(--c-ink-2);line-height:1.55}.cdp-projects{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.cdp-project{display:flex;align-items:center;gap:14px;padding:10px 12px;background:var(--c-surface-2);border-radius:var(--c-radius-sm)}.cdp-project-name{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.cdp-project-job{font-weight:700;font-size:13.5px;color:var(--c-ink);font-variant-numeric:tabular-nums}.cdp-project-vehicle{font-size:12.5px;color:var(--c-ink-3);font-weight:500}.cdp-project-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12px;color:var(--c-ink-3)}.cdp-project-install{font-weight:600;color:var(--c-ink-2);font-variant-numeric:tabular-nums}.cd-empty{font-size:13px;color:var(--c-ink-3);font-style:italic;margin:4px 0 0}.cd-contacts,.cd-vehicles,.cd-projects{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.cd-contact,.cd-vehicle,.cd-project{padding:10px 12px;background:var(--c-surface-2);border-radius:var(--c-radius-sm)}.cd-contact-head,.cd-vehicle-head,.cd-project-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-bottom:4px}.cd-contact-name,.cd-vehicle-label,.cd-project-job{font-weight:700;font-size:13px;color:var(--c-ink)}.cd-primary-tag{margin-left:8px;font-size:9.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--c-accent);background:var(--c-accent-soft);padding:1px 6px;border-radius:999px;vertical-align:middle}.cd-contact-role,.cd-vehicle-class{font-size:11px;color:var(--c-ink-3);font-weight:600;margin-left:auto}.cd-contact-coords{display:flex;flex-direction:column;gap:2px;font-size:12.5px}.cd-contact-link{color:var(--c-ink-2);text-decoration:none}.cd-contact-link:hover{color:var(--c-accent);text-decoration:underline}.cd-vehicle-meta{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:4px;font-size:12px;color:var(--c-ink-3);font-weight:500}.cd-vehicle-vin{font-variant-numeric:tabular-nums;letter-spacing:.04em}.cd-project-body{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:12px;color:var(--c-ink-3);font-weight:500}.cd-project-vehicle{color:var(--c-ink-2);font-weight:600}.cd-tentative{font-size:9.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#92400e;background:#fef3c7;padding:1px 6px;border-radius:999px}@media(max-width:800px){.cdp-stats{grid-template-columns:repeat(2,1fr)}.cdp-section-grid{grid-template-columns:1fr}.cdp-hero{grid-template-columns:64px minmax(0,1fr);grid-template-rows:auto auto;gap:14px}.cdp-hero-edit{grid-column:1 / -1;justify-self:start}.cdp-hero-avatar{width:64px;height:64px;font-size:22px}.cdp-hero-name{font-size:22px}}@media(max-width:560px){.client-card{grid-template-columns:48px minmax(0,1fr);grid-template-rows:auto auto;gap:12px}.cc-meta{grid-column:1 / -1;align-items:flex-start;flex-direction:row;flex-wrap:wrap;gap:6px 14px}.cc-avatar{width:48px;height:48px;font-size:16px}}@media(max-width:759px){.clients-root .clients-list-main{padding:14px}.clients-list-head{flex-wrap:wrap;gap:6px}.clients-title{font-size:22px}.clients-new-btn{flex:0 0 100%;justify-content:center;margin-top:4px}.client-cards{grid-template-columns:1fr!important;gap:10px!important}.cdp-main{padding:12px 14px 60px}.cdp-hero{flex-wrap:wrap;gap:12px}.cdp-hero-name{font-size:20px}.cdp-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;margin:0 -14px;padding:0 14px 6px;scrollbar-width:none}.cdp-tabs::-webkit-scrollbar{display:none}}@media(max-width:600px){.ce-drawer{width:100vw;max-width:100vw}.ce-body{padding:16px 16px 36px}}.cdp-files-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}.cdp-files-crumbs{display:flex;align-items:center;flex-wrap:wrap;gap:1px;min-width:0}.cdp-files-crumb-wrap{display:inline-flex;align-items:center}.cdp-files-crumb-sep{color:var(--c-ink-3);margin:0 1px;flex-shrink:0}.cdp-files-crumb{background:none;border:none;padding:2px 4px;font:inherit;font-size:14px;font-weight:700;color:var(--c-ink-2);cursor:pointer;border-radius:6px}.cdp-files-crumb:hover{color:var(--c-accent);background:var(--c-surface-2)}.cdp-files-crumb.is-current{color:var(--c-ink);cursor:default}.cdp-files-actions{display:flex;align-items:center;gap:8px}.cdp-files-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;font-size:12.5px;font-weight:600;color:var(--c-ink-2);background:var(--c-surface);border:1px solid var(--c-line);border-radius:8px;cursor:pointer;text-decoration:none;white-space:nowrap}.cdp-files-btn:hover{background:var(--c-surface-2)}.cdp-files-btn.is-primary{color:#fff;background:#0f1024;border-color:#0f1024}.cdp-files-btn.is-primary:hover{background:#1f2233}.cdp-files-btn:disabled{opacity:.55;cursor:default}.cdp-files-error{margin-top:10px;padding:9px 12px;font-size:12.5px;color:#b42318;background:#fef3f2;border:1px solid #FECACA;border-radius:8px;word-break:break-word}.cdp-files-empty{display:flex;flex-direction:column;align-items:flex-start;gap:12px;font-style:normal}.cdp-files-list{list-style:none;margin:0;padding:0;border:1px solid var(--c-line);border-radius:var(--c-radius-sm);overflow:hidden}.cdp-files-row+.cdp-files-row{border-top:1px solid var(--c-line)}.cdp-files-item{display:flex;align-items:center;gap:11px;width:100%;padding:10px 13px;background:none;border:none;font:inherit;text-align:left;color:inherit;cursor:pointer;text-decoration:none}.cdp-files-item:hover{background:var(--c-surface-2)}.cdp-files-ico{display:inline-flex;align-items:center;justify-content:center;color:var(--c-ink-3);flex-shrink:0}.cdp-files-ico.is-folder{color:var(--c-accent)}.cdp-files-name{flex:1 1 auto;min-width:0;font-size:13.5px;font-weight:600;color:var(--c-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cdp-files-meta{font-size:12px;color:var(--c-ink-3);white-space:nowrap;flex-shrink:0}.cdp-files-chev{color:var(--c-ink-3);flex-shrink:0}.cdp-files-spin{animation:cdp-files-spin .8s linear infinite}@keyframes cdp-files-spin{to{transform:rotate(360deg)}}@media(max-width:560px){.cdp-files-meta{display:none}}.estimates-root{min-height:100vh;background:#f8f9fb;font-family:-apple-system,BlinkMacSystemFont,Inter Tight,Plus Jakarta Sans,system-ui,sans-serif;color:#0f172a}.est-page{max-width:1280px;margin:0 auto;padding:18px 26px 80px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:4px 0 16px}.page-head h1{margin:0 0 4px;font-size:26px;font-weight:800;letter-spacing:-.02em;color:#0f172a}.page-head .sub{font-size:13px;color:#6b7280}.page-head .actions{display:flex;gap:8px;align-items:center}.page-error{background:#fef2f2;border:1px solid #FECACA;color:#b91c1c;padding:10px 14px;border-radius:10px;margin-bottom:12px;display:flex;align-items:center;gap:10px;font-size:13px}.page-error button{margin-left:auto;background:transparent;border:0;color:#b91c1c;font-size:16px;cursor:pointer}.btn{appearance:none;background:#fff;border:1px solid #DEE1E6;color:#344054;font:inherit;font-weight:600;font-size:13px;padding:8px 14px;border-radius:9px;cursor:pointer;transition:all .12s ease;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.btn:hover:not(:disabled){background:#f8f9fb;border-color:#9ca3af;color:#0f172a}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{background:#ff7a45;color:#fff;border-color:#ff7a45}.btn.primary:hover:not(:disabled){background:#ed5e1f;border-color:#ed5e1f;color:#fff}.btn.tiny{font-size:11.5px;padding:4px 10px;border-radius:7px}.btn.ghost{background:transparent;border-color:transparent;color:#6b7280}.btn.ghost:hover:not(:disabled){border-color:#dee1e6}.icon-btn{background:transparent;border:0;width:32px;height:32px;border-radius:8px;cursor:pointer;color:#6b7280;font-size:14px;display:inline-grid;place-items:center}.icon-btn:hover{background:#f4f5f8;color:#0f172a}.est-tabs{display:flex;gap:6px;padding:0;margin:4px 0 14px;flex-wrap:wrap}.est-tab{appearance:none;background:#fff;border:1px solid #ECEEF2;color:#6b7280;font:inherit;font-size:12.5px;font-weight:600;padding:6px 12px;border-radius:999px;cursor:pointer;display:inline-flex;align-items:center;gap:7px;transition:all .12s ease}.est-tab:hover{background:#f8f9fb;color:#0f172a}.est-tab.on{background:#ff7a45;color:#fff;border-color:#ff7a45}.et-count{font-size:10.5px;font-weight:700;background:#f4f5f8;color:#6b7280;padding:1px 7px;border-radius:999px;font-variant-numeric:tabular-nums}.est-tab.on .et-count{background:#ffffff38;color:#fff}.est-table-wrap{background:#fff;border:1px solid #ECEEF2;border-radius:12px;overflow:hidden;box-shadow:0 1px #0f172a0a}.est-loading{padding:40px;text-align:center;color:#9ca3af;font-size:13px}.est-table{width:100%;border-collapse:collapse;font-size:13px}.est-table thead th{text-align:left;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#6b7280;padding:11px 16px;background:#f8f9fb;border-bottom:1px solid #ECEEF2}.est-table tbody td{padding:13px 16px;border-bottom:1px solid #F1F3F6;vertical-align:middle}.est-table tbody tr{cursor:pointer;transition:background .1s}.est-table tbody tr:hover{background:#fff6f0}.est-table tbody tr:last-child td{border-bottom:0}.et-num{font-weight:700;font-size:13px;color:#0f172a;font-variant-numeric:tabular-nums}.et-title{font-size:11.5px;color:#6b7280;margin-top:1px}.est-status{display:inline-flex;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.01em}.et-open{background:transparent;border:0;color:#9ca3af;cursor:pointer;font-size:16px;width:22px;height:22px;border-radius:6px;display:inline-grid;place-items:center}.et-open:hover{background:#f4f5f8;color:#0f172a}.et-empty{padding:32px;text-align:center;color:#9ca3af;font-size:13px}.est-overlay{position:fixed;inset:0;background:#0f172a52;display:flex;justify-content:flex-end;z-index:100;opacity:0;pointer-events:none;transition:opacity .18s ease}.est-overlay.open{opacity:1;pointer-events:auto}.est-drawer{width:min(1120px,96vw);height:100vh;background:#f8f9fb;display:flex;flex-direction:column;box-shadow:-8px 0 30px #0f172a2e;animation:drawerIn .22s cubic-bezier(.22,.61,.36,1)}@keyframes drawerIn{0%{transform:translate(40px);opacity:.6}to{transform:translate(0);opacity:1}}.est-drawer-head{display:flex;align-items:center;gap:10px;padding:12px 18px;background:#fff;border-bottom:1px solid #ECEEF2;flex-shrink:0}.est-drawer-head .grow{flex:1}.edh-title{display:flex;align-items:baseline;gap:10px}.est-drawer-head h2{margin:0;font-size:16px;font-weight:700;letter-spacing:-.01em;color:#0f172a}.edh-num{font-size:11.5px;font-weight:700;color:#c2410c;background:#ffefe4;padding:2px 10px;border-radius:999px;letter-spacing:.03em;font-variant-numeric:tabular-nums}.est-error{background:#fef3c7;border-bottom:1px solid #FCD34D;color:#92400e;font-size:12.5px;padding:8px 18px;display:flex;align-items:center;gap:8px;flex-shrink:0}.est-error button{margin-left:auto;background:transparent;border:0;color:#92400e;cursor:pointer;font-size:14px}.est-build{flex:1;display:grid;grid-template-columns:320px minmax(0,1fr);min-height:0}.est-catalog{background:#fff;border-right:1px solid #ECEEF2;display:flex;flex-direction:column;min-height:0}.ec-head{padding:12px 14px 6px}.ec-search{display:flex;align-items:center;gap:7px;border:1px solid #DEE1E6;border-radius:8px;padding:6px 10px;background:#fff}.ec-search input{flex:1;border:0;background:transparent;outline:none;color:#0f172a;font-size:13px;font-family:inherit}.ec-tabs{display:flex;gap:2px;padding:0 12px 8px}.ec-tabs button{flex:1;appearance:none;background:transparent;border:0;font:inherit;font-size:12px;font-weight:600;color:#6b7280;padding:6px 8px;border-radius:7px;cursor:pointer;transition:all .12s ease}.ec-tabs button:hover{background:#f4f5f8;color:#0f172a}.ec-tabs button.on{background:#ff7a45;color:#fff}.ec-items{flex:1;overflow-y:auto;padding:4px 10px;display:flex;flex-direction:column;gap:3px}.ec-item{appearance:none;background:#fff;border:1px solid #ECEEF2;border-radius:8px;padding:8px 10px;cursor:pointer;text-align:left;display:flex;align-items:center;gap:8px;font:inherit;transition:all .1s ease}.ec-item:hover{border-color:#ff7a45;transform:translate(-2px)}.ec-item-info{flex:1;min-width:0}.ec-item-info b{display:block;font-size:12px;font-weight:600;color:#0f172a;line-height:1.25}.ec-item-info span{font-size:10.5px;color:#9ca3af}.ec-item-price{font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap;color:#344054}.ec-add{width:22px;height:22px;border-radius:5px;background:#f4f5f8;display:grid;place-items:center;color:#6b7280;flex-shrink:0}.ec-item:hover .ec-add{background:#ff7a45;color:#fff}.ec-add.sm{width:18px;height:18px}.ec-empty{padding:22px;text-align:center;color:#9ca3af;font-size:12px}.ec-custom{margin:8px 12px 12px;appearance:none;border:1px dashed #DEE1E6;background:#fff;color:#6b7280;font:inherit;font-weight:600;font-size:12px;padding:8px;border-radius:8px;cursor:pointer;display:flex;justify-content:center}.ec-custom:hover{border-color:#ff7a45;color:#c2410c}.wrap-tree{display:flex;flex-direction:column;gap:4px}.wt-veh{background:#fff;border:1px solid #ECEEF2;border-radius:8px;overflow:hidden}.wt-veh-h{width:100%;display:flex;align-items:center;gap:8px;padding:8px 10px;background:transparent;border:0;cursor:pointer;font-size:12.5px;font-weight:600;color:#0f172a;text-align:left;font-family:inherit}.wt-veh-h:hover{background:#fff6f0}.wt-veh-name{flex:1}.wt-veh-count{font-size:10.5px;color:#9ca3af;font-weight:500}.wt-chevron{color:#9ca3af;display:inline-flex;align-items:center}.wt-veh.open .wt-veh-h{border-bottom:1px solid #F1F3F6}.wt-sizes{display:flex;flex-direction:column;padding:4px 6px 6px;gap:2px}.wt-size{border-radius:6px;overflow:hidden}.wt-size-h{width:100%;display:flex;align-items:center;gap:7px;padding:6px 8px;background:#f8f9fb;border:0;border-radius:6px;cursor:pointer;text-align:left;font-family:inherit}.wt-size-h:hover{background:#ffefe4}.wt-size-name{font-size:12px;font-weight:600;color:#0f172a;white-space:nowrap}.wt-size-ex{flex:1;font-size:10px;color:#9ca3af;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wt-wraps{display:flex;flex-direction:column;gap:1px;padding:3px 0 3px 12px}.wt-wrap{display:flex;align-items:center;gap:8px;padding:6px 8px;background:transparent;border:1px solid transparent;border-radius:6px;cursor:pointer;text-align:left;font-family:inherit;font-size:12px;color:#344054}.wt-wrap:hover{background:#fff6f0;border-color:#ffefe4}.wt-wrap-name{flex:1;font-weight:500}.wt-wrap-price{font-size:12px;font-weight:600;font-variant-numeric:tabular-nums}.est-doc{display:flex;flex-direction:column;min-height:0;background:#f8f9fb}.est-doc-scroll{flex:1;overflow-y:auto;padding:18px 24px;display:flex;flex-direction:column;gap:18px}.ed-section{display:flex;flex-direction:column;gap:6px}.ed-label{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#6b7280}.ed-input{border:1px solid #DEE1E6;background:#fff;border-radius:8px;padding:8px 12px;font:inherit;font-size:13.5px;color:#0f172a;outline:none;transition:border-color .12s,box-shadow .12s}.ed-input:focus{border-color:#ff7a45;box-shadow:0 0 0 3px #ff7a452e}.ed-customer{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:#fff;border:1px solid #ECEEF2;border-radius:10px}.ed-cust-info{display:flex;align-items:center;gap:10px;color:#6b7280}.ed-cust-icon{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;background:#f4f5f8;color:#6b7280;flex-shrink:0}.ed-cust-info b{display:block;font-size:13.5px;font-weight:600;color:#0f172a}.ed-cust-info span{font-size:11.5px;color:#9ca3af}.ed-cust-search{position:relative}.ed-cust-search .ec-search{background:#fff;border-radius:8px}.cust-drop{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #ECEEF2;border-radius:10px;max-height:240px;overflow-y:auto;box-shadow:0 8px 24px #0f172a1f;z-index:5;display:flex;flex-direction:column;gap:0;padding:4px}.cust-opt{appearance:none;background:transparent;border:0;text-align:left;padding:8px 10px;border-radius:7px;cursor:pointer;display:flex;flex-direction:column;gap:1px;font-family:inherit}.cust-opt:hover{background:#fff6f0}.cust-opt b{font-size:12.5px;font-weight:600;color:#0f172a}.cust-opt span{font-size:11px;color:#9ca3af}.cust-empty{padding:14px;text-align:center;color:#9ca3af;font-size:12px}.ed-lines{border:1px solid #ECEEF2;border-radius:10px;overflow:hidden;background:#fff}.ed-lines-head,.ed-line-wrap{border-bottom:1px solid #F1F3F6}.ed-line-wrap:last-child{border-bottom:0}.ed-line{display:grid;grid-template-columns:1fr 64px 100px 90px 28px 28px;gap:6px;padding:8px 12px;align-items:center}.el-dup{display:grid;place-items:center;width:24px;height:24px;background:transparent;border:none;border-radius:6px;color:#9ca3af;cursor:pointer}.el-dup:hover{color:#c5601a;background:#e6873a1a}.el-veh{display:flex;align-items:center;gap:6px;padding:0 12px 8px 16px;color:#9ca3af;flex-wrap:wrap}.el-veh>svg{flex-shrink:0}.el-veh-year,.el-veh-text{font-size:12px;padding:4px 8px;border:1px solid #E1E5EA;border-radius:6px;background:#fff;color:#0f1024;font-family:inherit;min-width:0}.el-veh-year{width:60px}.el-veh-text{flex:1 1 100px}.el-veh-year:focus,.el-veh-text:focus{outline:1.5px solid rgba(230,135,58,.4);border-color:#e6873a}.el-veh-year::placeholder,.el-veh-text::placeholder{color:#c2c4cb}.edt-spawn{margin-top:8px;padding:6px 10px;background:#e6873a1a;border:1px solid rgba(230,135,58,.3);border-radius:8px;color:#c5601a;font-size:11.5px;font-weight:500}.edt-spawn b{color:#0f1024;font-weight:700}.cc-overlay{position:fixed;inset:0;z-index:260;background:#0f111880;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:grid;place-items:center;padding:24px}.cc-card{width:min(100%,540px);max-height:80vh;background:#fff;border-radius:16px;box-shadow:0 24px 60px #0f111859;display:flex;flex-direction:column;overflow:hidden}.cc-head{display:flex;align-items:center;padding:14px 18px;border-bottom:1px solid #ECEEF2}.cc-head h3{flex:1;margin:0;font-size:14.5px;font-weight:700;color:#0f1024;display:flex;align-items:center;gap:8px}.cc-head h3 svg{color:#c5601a}.cc-close{width:26px;height:26px;display:grid;place-items:center;background:transparent;border:1px solid #E1E5EA;border-radius:7px;color:#9ca3af;cursor:pointer}.cc-close:hover{color:#0f1024;background:#f8f9fb}.cc-body{padding:16px 18px;overflow-y:auto;flex:1}.cc-intro{margin:0 0 12px;font-size:13px;color:#4b5563;line-height:1.5}.cc-projects{display:flex;flex-direction:column;gap:10px}.cc-project{padding:10px 12px;background:#f8f9fb;border:1px solid #ECEEF2;border-radius:10px}.cc-project-head{display:flex;align-items:baseline;gap:10px;margin-bottom:4px}.cc-project-num{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#9ca3af;font-family:ui-monospace,SF Mono,Menlo,monospace}.cc-project-vehicle{font-size:13px;font-weight:700;color:#0f1024}.cc-project-lines{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.cc-project-lines li{font-size:12px;color:#4b5563;padding-left:12px;position:relative}.cc-project-lines li:before{content:"•";position:absolute;left:0;color:#c2c4cb}.cc-qty{color:#9ca3af;font-weight:500}.cc-shared-line{color:#6b7280}.cc-shared-tag{font-size:10px;font-weight:700;color:#c5601a;margin-left:6px;letter-spacing:.04em;text-transform:uppercase}.cc-project-empty{font-size:12px;color:#9ca3af;font-style:italic;padding-left:12px}.cc-note{margin:12px 0 0;font-size:11.5px;color:#9ca3af;line-height:1.5}.cc-foot{display:flex;justify-content:flex-end;gap:8px;padding:12px 18px;border-top:1px solid #ECEEF2;background:#f8f9fb}.addveh-overlay{position:fixed;inset:0;z-index:250;background:#0f11186b;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;padding:24px}.addveh-card{width:min(100%,480px);background:#fff;border-radius:16px;box-shadow:0 16px 40px #0f111840;overflow:hidden;display:flex;flex-direction:column}.addveh-head{display:flex;align-items:center;padding:14px 18px;border-bottom:1px solid #ECEEF2}.addveh-head h3{flex:1;margin:0;font-size:15px;font-weight:700;color:#0f1024}.addveh-close{width:28px;height:28px;display:grid;place-items:center;background:transparent;border:1px solid #E1E5EA;border-radius:8px;color:#9ca3af;cursor:pointer}.addveh-body{padding:16px 18px;display:flex;flex-direction:column;gap:12px}.addveh-field{display:flex;flex-direction:column;gap:4px}.addveh-field>span{font-size:11px;font-weight:600;color:#4b5563}.addveh-field input,.addveh-field select{font-size:13.5px;padding:8px 10px;border:1px solid #E1E5EA;border-radius:8px;background:#fff;font-family:inherit}.addveh-vin-row{display:flex;gap:8px;align-items:stretch}.addveh-vin-row input{flex:1;min-width:0}.addveh-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.addveh-spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.addveh-error{padding:8px 12px;background:#b91c1c14;border:1px solid rgba(185,28,28,.25);border-radius:8px;color:#b91c1c;font-size:12px}.addveh-foot{display:flex;justify-content:flex-end;gap:8px;padding:12px 18px;border-top:1px solid #ECEEF2;background:#f8f9fb}@media(max-width:560px){.addveh-card{border-radius:14px}.addveh-grid{grid-template-columns:1fr}}.ed-lines-head{background:#f8f9fb;border-bottom:1px solid #ECEEF2;font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#6b7280}.ed-lines-head .c-qty,.ed-lines-head .c-price{text-align:center}.ed-lines-head .c-total{text-align:right}.ed-line{border-bottom:1px solid #F1F3F6;font-size:13px}.ed-line:last-child{border-bottom:0}.ed-lines-empty{padding:22px;text-align:center;color:#9ca3af;font-size:12.5px}.el-name,.el-qty{border:1px solid transparent;background:transparent;font:inherit;font-size:13px;color:#0f172a;outline:none;padding:4px 6px;border-radius:6px;width:100%}.el-name:focus,.el-qty:focus{border-color:#ff7a45;background:#fff}.el-qty{text-align:center;font-variant-numeric:tabular-nums}.el-price{display:flex;align-items:center;background:transparent;border:1px solid transparent;border-radius:6px;padding:0 6px}.el-price:focus-within{border-color:#ff7a45;background:#fff}.el-dollar{color:#9ca3af;font-size:12px}.el-price input{border:0;background:transparent;font:inherit;font-size:13px;text-align:right;width:100%;font-variant-numeric:tabular-nums;outline:none}.el-total{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.el-x{width:24px;height:24px;border:0;background:transparent;border-radius:6px;color:#9ca3af;cursor:pointer;font-size:12px}.el-x:hover{background:#fee2e2;color:#dc2626}.ed-add-line{align-self:flex-start;background:transparent;border:0;color:#6b7280;font-size:12.5px;font-weight:600;cursor:pointer;padding:4px 0}.ed-add-line:hover{color:#c2410c}.ed-internal{background:#fff6f0;border:1px dashed #FED7AA;border-radius:11px;padding:12px 14px;gap:10px}.ed-internal-h{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#c2410c;display:inline-flex;align-items:center;gap:6px}.ed-internal-h svg{color:#c2410c}.ed-mini{display:flex;flex-direction:column;gap:4px}.ed-mini.full{grid-column:1 / -1}.ed-mini>span{font-size:11px;font-weight:500;color:#6b7280}.ed-mini textarea,.ed-mini select{border:1px solid #DEE1E6;border-radius:7px;padding:7px 10px;font-size:13px;font-family:inherit;background:#fff;color:#0f172a}.ed-mini textarea:focus,.ed-mini select:focus{outline:none;border-color:#ff7a45}.ed-totals{background:#fff;border-top:1px solid #ECEEF2;padding:12px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-shrink:0}.ed-totals-controls{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.ed-toggle{display:flex;align-items:center;gap:6px;font-size:12.5px;color:#6b7280;cursor:pointer}.ed-toggle input{width:15px;height:15px;accent-color:#FF7A45}.ed-deposit,.ed-discount{display:flex;align-items:center;gap:5px;font-size:12.5px;color:#6b7280}.ed-deposit input,.ed-discount input{width:50px;height:28px;text-align:center;border:1px solid #DEE1E6;border-radius:6px;font-size:12.5px;font-variant-numeric:tabular-nums;background:#f8f9fb;color:#0f172a}.ed-discount select{height:28px;border:1px solid #DEE1E6;border-radius:6px;background:#f8f9fb;font-size:12px;padding:0 6px;color:#344054}.ed-margin{display:flex;align-items:center;gap:5px;font-size:12px;color:#6b7280;background:#f4f5f8;padding:5px 10px;border-radius:7px}.ed-margin.good b{color:#16a34a;font-weight:700}.ed-margin.low b{color:#d97706;font-weight:700}.ed-totals-nums{display:flex;flex-direction:column;gap:1px;min-width:220px}.edt-row{display:flex;justify-content:space-between;gap:16px;font-size:12.5px;color:#6b7280;padding:1px 0}.edt-row b{color:#0f172a;font-weight:600;font-variant-numeric:tabular-nums}.edt-row.disc b{color:#16a34a}.edt-row.grand{font-size:14px;padding-top:4px;margin-top:3px;border-top:1px solid #ECEEF2}.edt-row.grand b{font-size:18px}.edt-row.dep{font-size:11.5px;color:#9ca3af}.est-drawer.preview-mode,.est-drawer.send-mode{width:min(820px,96vw)}.est-preview-scroll{flex:1;overflow-y:auto;padding:26px;background:#f4f5f8}.prev-doc{max-width:680px;margin:0 auto;display:flex;flex-direction:column;gap:18px}.prev-hero{background:linear-gradient(135deg,#1a0f0a,#2a1a12 55%,#ff7a45 145%);color:#fff;border-radius:18px;padding:32px 32px 26px;box-shadow:0 18px 40px -16px #0f172a59}.prev-badge{display:inline-block;padding:4px 12px;background:#ffffff1f;border:1px solid rgba(255,255,255,.18);border-radius:999px;font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-bottom:14px}.prev-hero h1{margin:0 0 6px;font-size:30px;font-weight:700;letter-spacing:-.02em;line-height:1.1}.prev-hero p{margin:0 0 22px;font-size:14px;color:#ffffffb8}.prev-meta{display:flex;gap:28px;flex-wrap:wrap}.prev-meta>div{display:flex;flex-direction:column;gap:2px}.prev-meta span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#ffffff8c;font-weight:600}.prev-meta b{font-size:13.5px;font-weight:600}.prev-invest{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:12px}.pv-card{background:#fff;border:1px solid #ECEEF2;border-radius:14px;padding:16px 18px;box-shadow:0 1px #0f172a0a}.pv-card.pv-total{background:linear-gradient(160deg,#1a0f0a,#2a1a12);color:#fff;border:0}.pv-card span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:#9ca3af}.pv-card.pv-total span{color:#fff9}.pv-val{font-size:25px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin-top:6px}.prev-lines{background:#fff;border:1px solid #ECEEF2;border-radius:16px;padding:22px 26px;box-shadow:0 1px #0f172a0a}.prev-lines-h{display:flex;justify-content:space-between;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#9ca3af;padding-bottom:10px;border-bottom:1.5px solid #ECEEF2}.prev-line{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #F1F3F6}.prev-line:last-of-type{border-bottom:0}.prev-line b{display:block;font-size:13.5px;font-weight:600;color:#0f172a}.prev-line span{font-size:11.5px;color:#9ca3af}.pl-amt{font-size:14px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap;color:#0f172a}.prev-totals{margin-top:12px;display:flex;flex-direction:column;gap:2px}.pt-row{display:flex;justify-content:space-between;font-size:13px;color:#6b7280;padding:2px 0}.pt-row b{color:#0f172a;font-weight:600;font-variant-numeric:tabular-nums}.pt-row.pt-grand{font-size:15px;padding-top:8px;margin-top:4px;border-top:1.5px solid #0F172A}.pt-row.pt-grand b{font-size:21px}.send-body{flex:1;overflow-y:auto;padding:24px;background:#f4f5f8;display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:18px;align-items:start}.send-card{background:#fff;border:1px solid #ECEEF2;border-radius:14px;padding:20px 22px;box-shadow:0 1px #0f172a0a}.send-to{display:flex;align-items:center;justify-content:space-between;padding-bottom:14px;border-bottom:1px solid #ECEEF2;margin-bottom:14px}.send-to-row{display:flex;align-items:center;gap:14px}.send-lbl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#9ca3af}.send-to b{font-size:14px;font-weight:600;display:block;color:#0f172a}.send-phone{font-size:11.5px;color:#9ca3af;font-variant-numeric:tabular-nums}.send-channel{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;background:#f4f5f8;border-radius:999px;font-size:12px;font-weight:600;color:#6b7280}.send-field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.send-field>span{font-size:11px;font-weight:600;color:#9ca3af}.send-field textarea{border:1px solid #DEE1E6;border-radius:9px;padding:11px 12px;font:inherit;font-size:13px;color:#0f172a;resize:vertical;background:#fff}.send-field textarea:focus{outline:none;border-color:#ff7a45;box-shadow:0 0 0 3px #ff7a452e}.send-link-preview{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;background:#f4f5f8;border-radius:7px;font-size:12px;color:#6b7280;font-family:ui-monospace,SF Mono,Menlo,monospace;margin-bottom:14px}.send-btn{width:100%;height:44px;font-size:14px;justify-content:center}.send-note{margin-top:10px;font-size:11.5px;color:#6b7280;text-align:center;line-height:1.4}.send-summary{background:#fff;border:1px solid #ECEEF2;border-radius:14px;padding:16px 18px}.send-summary h4{margin:0 0 12px;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#9ca3af}.ss-line{display:flex;justify-content:space-between;padding:6px 0;font-size:12.5px;color:#6b7280;border-bottom:1px dashed #ECEEF2}.ss-line:last-child{border-bottom:0}.ss-line b{color:#0f172a;font-weight:600;font-variant-numeric:tabular-nums}.wf-toast{position:fixed;bottom:22px;left:50%;transform:translate(-50%);z-index:600;display:inline-flex;align-items:center;gap:9px;padding:11px 18px;background:#0f172a;color:#fff;border-radius:11px;font-size:13px;font-weight:500;box-shadow:0 14px 38px #0f172a66;animation:wf-toast-in .28s cubic-bezier(.22,.61,.36,1)}.wf-toast svg{color:#4ade80}@keyframes wf-toast-in{0%{transform:translate(-50%,18px);opacity:0}to{transform:translate(-50%);opacity:1}}@media(max-width:860px){.est-build{grid-template-columns:1fr}.est-catalog{display:none}.send-body{grid-template-columns:1fr}}.est-mobile-tabs{display:none}@media(max-width:720px){.est-page{padding:14px 14px 60px}.page-head{flex-direction:column;align-items:flex-start;gap:8px}.page-head h1{font-size:22px}.page-head .actions{width:100%}.page-head .actions .btn{width:100%;justify-content:center}.est-tabs{flex-wrap:nowrap;overflow-x:auto;margin:4px -14px 12px;padding:2px 14px 6px;scrollbar-width:none}.est-tabs::-webkit-scrollbar{display:none}.est-tab{flex-shrink:0}.est-table-wrap{background:transparent;border:0;box-shadow:none}.est-table thead{display:none}.est-table,.est-table tbody{display:block}.est-table tr{display:grid;grid-template-columns:1fr auto;gap:4px 12px;background:#fff;border:1px solid #ECEEF2;border-radius:12px;padding:12px 14px;margin-bottom:10px}.est-table td{border:0;padding:0;vertical-align:top}.est-table td:nth-child(1){grid-column:1 / -1}.est-table td:nth-child(2){grid-column:1 / 2;font-size:12.5px;color:#6b7280}.est-table td:nth-child(3){grid-column:2 / 3;justify-self:end}.est-table td:nth-child(4),.est-table td:nth-child(5){grid-column:1 / -1;display:flex;justify-content:space-between;font-size:13px!important;color:#344054!important;text-align:left!important;padding-top:4px!important}.est-table td:nth-child(4):before{content:"Total";color:#9ca3af;font-size:11.5px}.est-table td:nth-child(5):before{content:"Design fee";color:#9ca3af;font-size:11.5px}.est-table td:nth-child(6){grid-column:1 / 2;padding-top:6px!important;border-top:1px solid #F1F3F6;margin-top:4px}.est-table td:nth-child(7){grid-column:2 / 3;justify-self:end;padding-top:6px!important;border-top:1px solid #F1F3F6;margin-top:4px}.est-table td:nth-child(8){display:none}.est-drawer{width:100vw;max-width:100vw}.ed-lines-head{display:none}.ed-line{display:grid;grid-template-columns:1fr auto;gap:4px 12px;padding:10px 12px;border-bottom:1px solid #F1F3F6}.el-name{grid-column:1 / -1;border:0;background:transparent;padding:4px 0;font-size:14px;font-weight:600;color:#0f172a;width:100%}.el-name:focus{border:0;background:#fff6f0;padding-left:6px;padding-right:6px;border-radius:6px}.el-qty{grid-column:1 / 2;width:60px;text-align:left}.el-price{grid-column:1 / 2;width:110px;border:1px solid #DEE1E6;border-radius:7px;padding:4px 10px;margin-top:2px}.el-price:focus-within{border-color:#ff7a45}.el-qty{border:1px solid #DEE1E6;border-radius:7px;padding:4px 0;text-align:center}.el-qty:focus{border-color:#ff7a45;background:#fff}.el-total{grid-column:2 / 3;grid-row:2 / 3;align-self:end;font-size:16px;font-weight:700}.el-x{grid-column:2 / 3;grid-row:1 / 2;align-self:start;justify-self:end;width:32px;height:32px}.est-drawer-head{padding:9px 10px;flex-wrap:nowrap;gap:6px;min-height:0}.est-drawer-head h2{font-size:14px}.est-drawer-head .icon-btn{order:-1;width:34px;height:34px}.edh-title{flex:1;min-width:0;overflow:hidden}.edh-title h2{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.edh-num{display:none}.est-drawer-head>.btn:not(.primary){display:none}.est-drawer-head .btn.primary{flex-shrink:0;padding:8px 12px;font-size:12.5px}.est-mobile-tabs{display:flex;background:#fff;border-bottom:1px solid #ECEEF2;padding:6px 8px;gap:4px}.est-mobile-tab{appearance:none;background:transparent;border:0;flex:1;padding:9px 10px;border-radius:8px;font:inherit;font-size:12.5px;font-weight:600;color:#6b7280;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px}.est-mobile-tab.is-on{background:#ffefe4;color:#c2410c}.est-mobile-count{background:#c2410c26;color:#c2410c;border-radius:999px;padding:1px 6px;font-size:10.5px;font-weight:700;margin-left:4px}.est-build-pane-doc .est-catalog{display:none}.est-build-pane-catalog .est-catalog{display:flex;border-right:0}.est-build-pane-catalog .est-doc{display:none}.est-doc-scroll{padding:14px 14px 16px}.ed-internal{padding:0;border:1px dashed #FED7AA;border-radius:11px;background:#fff6f0}.ed-internal .ed-internal-h{appearance:none;border:0;background:transparent;width:100%;padding:10px 12px;display:flex;align-items:center;gap:6px;cursor:pointer;font:inherit}.ed-internal-chevron{margin-left:auto;color:#c2410c;display:inline-flex;align-items:center}.ed-internal label{padding:0 12px 12px}.ed-totals{padding:10px 14px 14px;flex-direction:column;align-items:stretch;gap:8px}.ed-totals-controls{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px;align-items:center}.ed-margin{grid-column:1 / -1;justify-self:start;font-size:11px}.ed-totals-nums{min-width:0}.edt-row{font-size:12.5px}.edt-row.grand{font-size:14px}.edt-row.grand b{font-size:18px}.est-preview-scroll,.send-body{padding:16px}.prev-hero{padding:22px 20px}.prev-hero h1{font-size:22px}.prev-invest{grid-template-columns:1fr}}.ed-payments{background:#fff;border:1px solid #ECEEF2;border-radius:11px;padding:12px 14px;gap:10px}.ed-payments-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.ed-payments-head .ed-label{display:inline-flex;align-items:center;margin:0}.ed-payments-record{appearance:none;background:transparent;border:1px dashed #DEE1E6;color:#c2410c;font:inherit;font-size:12px;font-weight:600;padding:5px 10px;border-radius:7px;cursor:pointer;display:inline-flex;align-items:center;gap:4px}.ed-payments-record:hover{background:#fff6f0;border-color:#ff7a45;color:#ed5e1f}.ed-payments-err{background:#fef2f2;border:1px solid #FECACA;color:#b91c1c;font-size:12px;padding:6px 10px;border-radius:7px;display:flex;align-items:center;justify-content:space-between;gap:6px}.ed-payments-err button{background:transparent;border:0;color:#b91c1c;font-size:11px;text-decoration:underline;cursor:pointer}.ed-payments-empty{font-size:12px;color:#9ca3af;padding:6px 0;line-height:1.5}.ed-payments-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.ed-payment{display:flex;flex-direction:column;gap:4px;padding:9px 11px;border:1px solid #ECEEF2;border-radius:9px;background:#fbfbfc;font-size:12.5px}.ed-payment.is-refund{border-color:#fed7aa;background:#fff6f0}.ed-payment.is-voided{background:#f4f5f8;color:#9ca3af}.ed-payment.is-voided .ed-payment-amount,.ed-payment.is-voided .ed-payment-method-l{text-decoration:line-through}.ed-payment-main{display:flex;align-items:center;justify-content:space-between;gap:10px}.ed-payment-method{display:inline-flex;align-items:center;gap:6px;color:#0f172a}.ed-payment.is-voided .ed-payment-method{color:#9ca3af}.ed-payment-method-l{font-weight:600;font-size:12.5px}.ed-payment-kind{font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#6b7280;padding:2px 7px;border-radius:999px;background:#eceef2}.ed-payment.is-refund .ed-payment-kind{background:#fed7aa;color:#9a3412}.ed-payment-amount{font-weight:700;font-size:13.5px;font-variant-numeric:tabular-nums;color:#0f172a}.ed-payment.is-refund .ed-payment-amount{color:#9a3412}.ed-payment.is-voided .ed-payment-amount{color:#9ca3af}.ed-payment-meta{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:11.5px;color:#6b7280}.ed-payment-ref{font-variant-numeric:tabular-nums;color:#0f172a}.ed-payment.is-voided .ed-payment-ref,.ed-payment-by{color:#9ca3af}.ed-payment-notes{font-size:11.5px;color:#6b7280;font-style:italic}.ed-payment-void{font-size:11px;color:#b91c1c;font-weight:600;margin-top:2px}.ed-payment.is-voided .ed-payment-void{color:#9a3412}.ed-payment-void-btn{appearance:none;background:transparent;border:0;color:#9ca3af;font:inherit;font-size:11px;font-weight:600;cursor:pointer;padding:2px 0;display:inline-flex;align-items:center;gap:4px;align-self:flex-start}.ed-payment-void-btn:hover:not(:disabled){color:#b91c1c}.ed-payment-void-btn:disabled{opacity:.5;cursor:not-allowed}.rp-overlay{position:fixed;inset:0;background:#0f172a6b;display:flex;justify-content:flex-end;z-index:200;opacity:0;pointer-events:none;transition:opacity .18s ease}.rp-overlay.open{opacity:1;pointer-events:auto}.rp-drawer{width:min(460px,96vw);height:100vh;background:#f8f9fb;display:flex;flex-direction:column;box-shadow:-8px 0 30px #0f172a38;animation:drawerIn .22s cubic-bezier(.22,.61,.36,1)}.rp-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 18px;background:#fff;border-bottom:1px solid #ECEEF2}.rp-head h2{margin:0;font-size:15.5px;font-weight:700;letter-spacing:-.01em;color:#0f172a}.rp-head .icon-btn{appearance:none;background:transparent;border:0;color:#6b7280;cursor:pointer;padding:4px;border-radius:6px}.rp-head .icon-btn:hover{background:#f4f5f8;color:#0f172a}.rp-error{background:#fef2f2;border-bottom:1px solid #FECACA;color:#b91c1c;font-size:12.5px;padding:9px 18px;display:flex;align-items:center;gap:8px}.rp-error button{margin-left:auto;background:transparent;border:0;color:#b91c1c;cursor:pointer}.rp-body{flex:1;overflow-y:auto;padding:18px;display:flex;flex-direction:column;gap:16px}.rp-section{display:flex;flex-direction:column;gap:6px}.rp-section.grow{flex:1}.rp-label{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#6b7280}.rp-row{display:flex;gap:12px;align-items:flex-end}.rp-input{border:1px solid #DEE1E6;background:#fff;border-radius:8px;padding:8px 12px;font:inherit;font-size:13.5px;color:#0f172a;outline:none;transition:border-color .12s,box-shadow .12s;width:100%;box-sizing:border-box}textarea.rp-input{resize:vertical;min-height:56px}.rp-input:focus{border-color:#ff7a45;box-shadow:0 0 0 3px #ff7a452e}.rp-amount{display:flex;align-items:center;border:1px solid #DEE1E6;background:#fff;border-radius:8px;padding:0 10px;transition:border-color .12s,box-shadow .12s}.rp-amount:focus-within{border-color:#ff7a45;box-shadow:0 0 0 3px #ff7a452e}.rp-dollar{color:#9ca3af;font-size:13px}.rp-amount input{flex:1;border:0;background:transparent;font:inherit;font-size:14px;padding:8px 4px 8px 6px;outline:none;font-variant-numeric:tabular-nums;color:#0f172a}.rp-hint{font-size:11px;color:#9ca3af}.rp-radio-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px}.rp-radio-row{display:flex;flex-wrap:wrap;gap:6px}.rp-radio{appearance:none;background:#fff;border:1px solid #DEE1E6;color:#344054;font:inherit;font-size:12.5px;font-weight:600;padding:8px 10px;border-radius:8px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:5px;transition:all .12s ease}.rp-radio:hover{border-color:#9ca3af;color:#0f172a}.rp-radio.is-on{background:#ffefe4;border-color:#ff7a45;color:#c2410c}.rp-radio.inline{padding:6px 11px;font-size:12px;border-radius:999px}.rp-radio-check{color:#ff7a45}.rp-footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 18px;background:#fff;border-top:1px solid #ECEEF2}@media(max-width:480px){.rp-row{flex-direction:column;align-items:stretch}.rp-radio-grid{grid-template-columns:1fr 1fr}}.ij-root{min-height:100vh;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-feature-settings:var(--font-feature-settings);font-size:14.5px;-webkit-font-smoothing:antialiased;padding-bottom:96px}.ij-shell{max-width:640px;margin:0 auto;padding:0 16px}.ij-header{position:sticky;top:0;z-index:10;background:#f7f7f8eb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);padding:12px 0 10px}.ij-header-inner{max-width:640px;margin:0 auto;padding:0 16px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px}.ij-back{display:inline-flex;align-items:center;gap:4px;color:var(--text-dim);text-decoration:none;font-weight:600;font-size:13.5px;padding:6px 8px 6px 4px;border-radius:8px;background:transparent;border:0;cursor:pointer}.ij-back:hover{color:var(--text)}.ij-header-center{display:flex;align-items:center;gap:8px;min-width:0}.ij-jobnum{font-size:14px;font-weight:800;letter-spacing:.02em;color:var(--ink, #0f1024);white-space:nowrap}.ij-pill{font-size:10.5px;font-weight:700;padding:4px 10px;border-radius:999px;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.ij-pill.t-full{background:var(--full-bg);color:var(--full-fg)}.ij-pill.t-three_q{background:var(--threeq-bg);color:var(--threeq-fg)}.ij-pill.t-half{background:var(--half-bg);color:var(--half-fg)}.ij-pill.t-quarter{background:var(--quarter-bg);color:var(--quarter-fg)}.ij-pill.t-decal{background:var(--decal-bg);color:var(--decal-fg)}.ij-pill.t-removal{background:var(--removal-bg);color:var(--removal-fg)}.ij-pill.t-color_change{background:#ffd7e3;color:#8a1c4a}.ij-date{font-weight:600;font-size:13.5px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ij-sync{font-size:11.5px;font-weight:600;padding:4px 9px;border-radius:999px;white-space:nowrap;letter-spacing:.01em;display:inline-flex;align-items:center;gap:2px}.ij-sync-saving{background:#0f11180f;color:var(--text-dim)}.ij-sync-saved{background:#1f8a5b1a;color:#1f8a5b}.ij-sync-error{background:#dc26261a;color:#b91c1c}.ij-sync-check{font-weight:800}.ij-card{background:var(--bg-elev);border:1px solid var(--line);border-radius:14px;padding:16px;margin-top:14px;box-shadow:var(--shadow-card)}.ij-card-title{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-mute);margin:0 0 10px}.ij-kv-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px}.ij-kv{min-width:0}.ij-kv-label{font-size:11.5px;font-weight:600;color:var(--text-mute);letter-spacing:.02em;margin-bottom:3px}.ij-kv-val{font-size:14.5px;font-weight:600;color:var(--text);word-break:break-word}.ij-kv-val.is-muted{color:var(--text-dim);font-weight:500}.ij-status-pill{display:inline-flex;align-items:center;font-size:11.5px;font-weight:700;padding:3px 9px;border-radius:999px;letter-spacing:.04em;text-transform:uppercase}.ij-label{display:block;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-mute);margin-bottom:6px}.ij-input,.ij-textarea{width:100%;font:inherit;font-size:16px;line-height:1.45;color:var(--text);background:var(--surface-2);border:1px solid var(--line-strong);border-radius:10px;padding:10px 12px;box-sizing:border-box;transition:border-color .12s ease,box-shadow .12s ease;-webkit-appearance:none;appearance:none}.ij-input:focus,.ij-textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #0f111814;background:var(--bg-elev)}.ij-textarea{min-height:110px;resize:vertical}.ij-vin-row{display:flex;flex-direction:column;gap:4px}.ij-vin-hint{font-size:12px;color:var(--text-dim)}.ij-vin-hint.is-match{color:#1f8a5b;font-weight:600}.ij-vin-hint.is-mismatch{color:#b91c1c;font-weight:600}.ij-time-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}@media(max-width:380px){.ij-time-grid{grid-template-columns:1fr}}.ij-time-suffix{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--text-mute);font-size:13px;pointer-events:none}.ij-time-cell{position:relative}.ij-time-cell .ij-input{padding-right:38px}.ij-complete-banner{background:#d8efe0;color:#1f6b4a;border:1px solid rgba(31,107,74,.18);border-radius:12px;padding:12px 14px;margin-top:14px;font-weight:600}.ij-actions{position:fixed;left:0;right:0;bottom:0;z-index:10;background:#f7f7f8f0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--line);padding:10px 16px calc(10px + env(safe-area-inset-bottom))}.ij-actions-inner{max-width:640px;margin:0 auto;display:flex;gap:10px}.ij-btn{flex:1;font:inherit;font-size:15px;font-weight:700;letter-spacing:.01em;padding:12px 14px;border-radius:12px;border:1px solid transparent;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease;min-height:48px}.ij-btn:disabled{opacity:.55;cursor:not-allowed}.ij-btn-primary{background:var(--primary);color:var(--primary-fg)}.ij-btn-primary:hover:not(:disabled){background:#1a1b30}.ij-btn-ghost{background:transparent;color:var(--text);border-color:var(--line-strong)}.ij-btn-ghost:hover:not(:disabled){background:var(--surface-2)}.ij-btn-danger{background:#b91c1c;color:#fff}.ij-btn-danger:hover:not(:disabled){background:#9c1717}.ij-discard-backdrop{position:fixed;inset:0;z-index:20;background:#0f111873;display:grid;place-items:center;padding:16px}.ij-discard-modal{background:var(--bg-elev);border-radius:16px;padding:22px;max-width:420px;width:100%;box-shadow:var(--shadow-lift)}.ij-discard-modal h3{margin:0 0 8px;font-size:18px;font-weight:700}.ij-discard-modal p{margin:0 0 8px;font-size:14px;color:var(--text-dim);line-height:1.5}.ij-discard-warn{color:#b91c1c!important;font-weight:600}.ij-discard-actions{display:flex;gap:10px;margin-top:14px}.ij-photos-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.ij-photo-count{display:inline-block;margin-left:6px;font-size:11px;font-weight:700;padding:1px 7px;border-radius:999px;background:var(--surface-2);color:var(--text-dim);letter-spacing:.04em}.ij-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}@media(min-width:640px){.ij-photo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.ij-photo-thumb{position:relative;aspect-ratio:1 / 1;border-radius:10px;overflow:hidden;background:var(--surface-2);border:1px solid var(--line);display:flex;flex-direction:column}.ij-photo-thumb-tap{position:absolute;inset:0;padding:0;margin:0;border:0;background:transparent;cursor:zoom-in;display:block}.ij-photo-thumb-tap img{width:100%;height:100%;object-fit:cover;display:block}.ij-photo-loading{width:100%;height:100%;background:linear-gradient(90deg,var(--surface-2) 0%,rgba(255,255,255,.5) 50%,var(--surface-2) 100%);background-size:200% 100%;animation:ij-shimmer 1.4s linear infinite}@keyframes ij-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.ij-photo-badge{position:absolute;bottom:4px;left:4px;min-width:22px;height:22px;padding:0 5px;border-radius:999px;font-size:12px;font-weight:800;color:#fff;display:inline-flex;align-items:center;justify-content:center;line-height:1;pointer-events:none;box-shadow:0 1px 2px #0000002e}.ij-photo-badge.pending{background:#f59e0bf2}.ij-photo-badge.uploaded{background:#1f8a5bf2}.ij-photo-badge.failed{background:#dc2626f2}.ij-photo-thumb-actions{position:absolute;top:4px;right:4px;display:flex;flex-direction:column;gap:4px;z-index:1}.ij-photo-action{width:26px;height:26px;border:none;border-radius:50%;background:#0000009e;color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;line-height:1;transition:background .12s ease}.ij-photo-action:hover:not(:disabled){background:#000000d1}.ij-photo-action.danger:hover:not(:disabled){background:#b91c1cf2}.ij-photo-action:disabled{opacity:.5;cursor:not-allowed}.ij-photo-share{position:absolute;bottom:4px;right:4px;display:inline-flex;align-items:center;gap:4px;font-size:10.5px;font-weight:700;color:#fff;background:#0000008c;padding:3px 7px;border-radius:999px;cursor:pointer;-webkit-user-select:none;user-select:none;z-index:1}.ij-photo-share input{width:12px;height:12px;accent-color:var(--primary);margin:0}.ij-photo-add{aspect-ratio:1 / 1;border-radius:10px;background:var(--surface-2);border:2px dashed var(--line-strong);font-size:12.5px;font-weight:700;color:var(--text-dim);cursor:pointer;font-family:inherit;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;transition:border-color .12s ease,color .12s ease}.ij-photo-add:hover:not(:disabled){border-color:var(--text);color:var(--text)}.ij-photo-add:disabled{opacity:.5;cursor:not-allowed}.ij-photo-failed-banner{margin-top:14px;background:#fee2e2;color:#991b1b;border:1px solid #FCA5A5;border-radius:12px;padding:12px 14px;font-size:13.5px;font-weight:600;line-height:1.45}.ij-photo-fullscreen{position:fixed;inset:0;z-index:30;background:#000000eb;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:16px;touch-action:pan-y}.ij-photo-fullscreen img{max-width:100%;max-height:100%;object-fit:contain;border-radius:6px;cursor:default}.ij-photo-fullscreen-close{position:absolute;top:calc(12px + env(safe-area-inset-top));right:12px;width:40px;height:40px;border:0;border-radius:50%;background:#ffffff2e;color:#fff;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.ij-photo-fullscreen-close:hover{background:#ffffff52}.ij-photo-fullscreen-empty{color:#fff9;font-size:14px}.ij-state{margin:64px auto;max-width:420px;text-align:center;color:var(--text-dim)}.ij-state-title{font-size:18px;font-weight:700;color:var(--text);margin-bottom:6px}.ij-state p{margin:0;line-height:1.5}.ij-state-error{color:#b91c1c}.iv-root{min-height:100vh;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-feature-settings:var(--font-feature-settings);font-size:14.5px;-webkit-font-smoothing:antialiased;padding-bottom:96px}.iv-shell{max-width:720px;margin:0 auto;padding:0 16px}.iv-header{position:sticky;top:0;z-index:10;background:#f7f7f8eb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);padding:12px 0 10px}.iv-header-inner{max-width:720px;margin:0 auto;padding:0 16px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px}.iv-back{display:inline-flex;align-items:center;gap:4px;color:var(--text-dim);text-decoration:none;font-weight:600;font-size:13.5px;padding:6px 8px 6px 4px;border-radius:8px;background:transparent;border:0;cursor:pointer}.iv-back:hover{color:var(--text)}.iv-header-center{display:flex;align-items:center;gap:8px;min-width:0}.iv-jobnum{font-size:14px;font-weight:800;letter-spacing:.02em;color:var(--ink, #0f1024);white-space:nowrap}.iv-pill{font-size:10.5px;font-weight:700;padding:4px 10px;border-radius:999px;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;background:var(--surface-2);color:var(--text-dim)}.iv-date{font-weight:600;font-size:13.5px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iv-sync{font-size:11.5px;font-weight:600;padding:4px 9px;border-radius:999px;white-space:nowrap;letter-spacing:.01em;display:inline-flex;align-items:center;gap:2px}.iv-sync-saving{background:#0f11180f;color:var(--text-dim)}.iv-sync-saved{background:#1f8a5b1a;color:#1f8a5b}.iv-sync-error{background:#dc26261a;color:#b91c1c}.iv-sync-check{font-weight:800}.iv-card{background:var(--bg-elev);border:1px solid var(--line);border-radius:14px;padding:16px;margin-top:14px;box-shadow:var(--shadow-card)}.iv-card-title{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-mute);margin:0 0 10px}.iv-card-sub{font-size:12.5px;color:var(--text-dim);margin:-6px 0 12px}.iv-label{display:block;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-mute);margin-bottom:6px}.iv-input,.iv-textarea,.iv-select{width:100%;font:inherit;font-size:16px;line-height:1.45;color:var(--text);background:var(--surface-2);border:1px solid var(--line-strong);border-radius:10px;padding:10px 12px;box-sizing:border-box;transition:border-color .12s ease,box-shadow .12s ease;-webkit-appearance:none;appearance:none}.iv-input:focus,.iv-textarea:focus,.iv-select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #0f111814;background:var(--bg-elev)}.iv-textarea{min-height:90px;resize:vertical}.iv-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px 14px}@media(max-width:480px){.iv-grid-2{grid-template-columns:1fr}}.iv-field{min-width:0}.iv-field-full{grid-column:1 / -1}.iv-check-row{display:flex;align-items:flex-start;gap:10px;margin-top:4px;font-size:14px;color:var(--text)}.iv-check-row input[type=checkbox]{width:20px;height:20px;margin-top:1px;accent-color:var(--primary);flex-shrink:0}.iv-vin-row{display:flex;flex-direction:column;gap:10px}.iv-vin-actions{display:flex;gap:10px;flex-wrap:wrap}.iv-vin-scan-btn{flex:1;min-width:180px;background:var(--primary);color:var(--primary-fg);border:0;border-radius:10px;font-weight:700;font-size:14.5px;padding:12px 14px;cursor:pointer;font-family:inherit;display:inline-flex;align-items:center;justify-content:center;gap:8px}.iv-vin-scan-btn:hover:not(:disabled){background:#1a1b30}.iv-vin-scan-btn:disabled{opacity:.55;cursor:not-allowed}.iv-vin-expected{font-size:12.5px;color:var(--text-dim)}.iv-vin-expected code{font-family:var(--font-mono, ui-monospace, monospace);font-size:12px;background:var(--surface-2);padding:2px 6px;border-radius:5px}.iv-vin-result{font-size:14.5px;font-weight:700;font-family:var(--font-mono, ui-monospace, monospace);padding:10px 12px;border-radius:10px;background:var(--surface-2);border:1px solid var(--line);letter-spacing:.02em}.iv-vin-match{color:#1f8a5b;font-size:12.5px;font-weight:600;margin-top:6px}.iv-vin-mismatch{color:#b91c1c;font-size:12.5px;font-weight:600;margin-top:6px}.iv-silhouette-wrap{position:relative;width:100%;aspect-ratio:2 / 1;background:var(--surface-2);border-radius:12px;border:1px dashed var(--line-strong);overflow:hidden;touch-action:manipulation;color:var(--text)}.iv-silhouette-svg{display:block;width:100%;height:100%}.iv-silhouette-svg svg{width:100%;height:100%;display:block}.iv-pin{position:absolute;width:24px;height:24px;border-radius:50%;background:#f59e0b;color:#1f1100;border:2px solid #fff;box-shadow:0 2px 4px #00000038;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:11.5px;transform:translate(-50%,-50%);cursor:pointer;pointer-events:auto;-webkit-user-select:none;user-select:none}.iv-pin:hover{background:#fbbf24}.iv-pin.is-active{background:#b45309;color:#fff;outline:2px solid #F59E0B;outline-offset:1px}.iv-pin-list{margin-top:12px;display:flex;flex-direction:column;gap:8px}.iv-pin-item{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:10px;background:var(--surface-2);border:1px solid var(--line);border-radius:10px;padding:8px 10px}.iv-pin-num{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:#f59e0b;color:#1f1100;font-weight:800;font-size:11.5px}.iv-pin-text{font-size:13.5px;color:var(--text);word-break:break-word}.iv-pin-empty{color:var(--text-dim)}.iv-pin-remove{background:transparent;border:0;color:var(--text-dim);cursor:pointer;padding:4px;border-radius:6px}.iv-pin-remove:hover{color:#b91c1c;background:#dc262614}.iv-pin-drawer-backdrop{position:fixed;inset:0;z-index:25;background:#0f111880;display:grid;place-items:end center}.iv-pin-drawer{background:var(--bg-elev);border-top-left-radius:18px;border-top-right-radius:18px;padding:20px 18px calc(20px + env(safe-area-inset-bottom));width:100%;max-width:520px;box-shadow:var(--shadow-lift)}.iv-pin-drawer h3{margin:0 0 6px;font-size:16px;font-weight:700}.iv-pin-drawer-actions{display:flex;gap:8px;margin-top:12px}.iv-angle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}@media(min-width:640px){.iv-angle-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.iv-angle-slot{position:relative;aspect-ratio:1 / 1;border-radius:10px;overflow:hidden;background:var(--surface-2);border:1px solid var(--line);display:flex;flex-direction:column}.iv-angle-tap{position:absolute;inset:0;border:0;padding:0;margin:0;background:transparent;cursor:pointer}.iv-angle-tap img{width:100%;height:100%;object-fit:cover;display:block}.iv-angle-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--text-dim);font-size:12px;font-weight:600;height:100%;background:var(--surface-2);border:2px dashed var(--line-strong);border-radius:10px}.iv-angle-empty.is-missing{border-color:#f59e0ba6;background:#f59e0b14;color:#b45309}.iv-angle-label{position:absolute;bottom:4px;left:4px;right:4px;font-size:10.5px;font-weight:700;color:#fff;background:#0000008c;padding:3px 6px;border-radius:6px;text-align:center;pointer-events:none}.iv-angle-badge{position:absolute;top:4px;right:4px;display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;font-size:11.5px;font-weight:800;color:#fff;background:#f59e0b}.iv-angle-badge.done{background:#1f8a5b}.iv-angle-remove{position:absolute;top:4px;left:4px;width:24px;height:24px;border:0;border-radius:50%;background:#0009;color:#fff;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.iv-angle-remove:hover{background:#b91c1ce6}.iv-angle-status-loading{position:absolute;bottom:24px;left:4px;right:4px;font-size:10.5px;font-weight:700;color:#fff;background:#f59e0bf2;padding:2px 6px;border-radius:6px;text-align:center}.iv-angle-status-failed{position:absolute;bottom:24px;left:4px;right:4px;font-size:10.5px;font-weight:700;color:#fff;background:#dc2626f2;padding:2px 6px;border-radius:6px;text-align:center}.iv-sig-wrap{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:10px;overflow:hidden;position:relative}.iv-sig-canvas{display:block;width:100%;height:180px;background:#fff;touch-action:none;cursor:crosshair}.iv-sig-placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;color:var(--text-dim);font-size:13px;font-style:italic}.iv-sig-actions{display:flex;gap:8px;margin-top:10px}.iv-sig-saved{margin-top:10px;padding:10px 12px;background:#1f8a5b14;border:1px solid rgba(31,138,91,.2);color:#1f6b4a;border-radius:10px;font-size:13px;font-weight:600;display:flex;align-items:center;gap:8px}.iv-complete-banner{background:#d8efe0;color:#1f6b4a;border:1px solid rgba(31,107,74,.18);border-radius:12px;padding:12px 14px;margin-top:14px;font-weight:600}.iv-discarded-banner{background:#fee2e2;color:#7c1414;border:1px solid #FCA5A5;border-radius:12px;padding:12px 14px;margin-top:14px;font-weight:600}.iv-actions{position:fixed;left:0;right:0;bottom:0;z-index:10;background:#f7f7f8f0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--line);padding:10px 16px calc(10px + env(safe-area-inset-bottom))}.iv-actions-inner{max-width:720px;margin:0 auto;display:flex;gap:10px}.iv-btn{flex:1;font:inherit;font-size:15px;font-weight:700;letter-spacing:.01em;padding:12px 14px;border-radius:12px;border:1px solid transparent;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease;min-height:48px;font-family:inherit}.iv-btn:disabled{opacity:.55;cursor:not-allowed}.iv-btn-primary{background:var(--primary);color:var(--primary-fg)}.iv-btn-primary:hover:not(:disabled){background:#1a1b30}.iv-btn-ghost{background:transparent;color:var(--text);border-color:var(--line-strong)}.iv-btn-ghost:hover:not(:disabled){background:var(--surface-2)}.iv-btn-danger{background:#b91c1c;color:#fff}.iv-btn-danger:hover:not(:disabled){background:#9c1717}.iv-validation-banner{margin-top:14px;background:#fef3c7;color:#78350f;border:1px solid #F59E0B;border-radius:12px;padding:12px 14px;font-size:13.5px;font-weight:600}.iv-discard-backdrop{position:fixed;inset:0;z-index:20;background:#0f111873;display:grid;place-items:center;padding:16px}.iv-discard-modal{background:var(--bg-elev);border-radius:16px;padding:22px;max-width:420px;width:100%;box-shadow:var(--shadow-lift)}.iv-discard-modal h3{margin:0 0 8px;font-size:18px;font-weight:700}.iv-discard-modal p{margin:0 0 8px;font-size:14px;color:var(--text-dim);line-height:1.5}.iv-discard-warn{color:#b91c1c!important;font-weight:600}.iv-discard-actions{display:flex;gap:10px;margin-top:14px}.iv-photo-fullscreen{position:fixed;inset:0;z-index:30;background:#000000eb;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:16px}.iv-photo-fullscreen img{max-width:100%;max-height:100%;object-fit:contain;border-radius:6px}.iv-photo-fullscreen-close{position:absolute;top:calc(12px + env(safe-area-inset-top));right:12px;width:40px;height:40px;border:0;border-radius:50%;background:#ffffff2e;color:#fff;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.iv-state{margin:64px auto;max-width:420px;text-align:center;color:var(--text-dim)}.iv-state-title{font-size:18px;font-weight:700;color:var(--text);margin-bottom:6px}.iv-state p{margin:0;line-height:1.5}.iv-state-error{color:#b91c1c}.vin-modal-backdrop{position:fixed;inset:0;z-index:30;background:#000000b3;display:flex;align-items:center;justify-content:center;padding:16px}.vin-modal{background:var(--bg-elev);border-radius:16px;max-width:480px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lift)}.vin-modal-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--line);font-weight:700;font-size:15px}.vin-close{background:transparent;border:0;cursor:pointer;color:var(--text-dim);padding:4px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center}.vin-close:hover{color:var(--text);background:var(--surface-2)}.vin-video-wrap{position:relative;width:100%;aspect-ratio:4 / 3;background:#000;overflow:hidden}.vin-video{width:100%;height:100%;object-fit:cover;display:block}.vin-reticle{position:absolute;top:50%;left:50%;width:70%;height:30%;transform:translate(-50%,-50%);border:2px solid rgba(255,220,90,.85);border-radius:8px;pointer-events:none}.vin-controls{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--line);flex-wrap:wrap}.vin-torch{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:999px;padding:6px 12px;font-weight:700;font-size:12.5px;cursor:pointer;font-family:inherit;color:var(--text)}.vin-torch.on{background:#fbbf24;border-color:#f59e0b;color:#1f1100}.vin-expected{font-size:12px;color:var(--text-dim)}.vin-expected code{font-family:var(--font-mono, ui-monospace, monospace);background:var(--surface-2);padding:1px 5px;border-radius:4px;font-size:11.5px}.vin-hint{font-size:12px;color:var(--text-dim);padding:8px 16px 0;line-height:1.45}.vin-manual{padding:14px 16px;border-top:1px solid var(--line)}.vin-manual-label{font-size:12px;font-weight:700;color:var(--text-mute);letter-spacing:.04em;text-transform:uppercase;margin-bottom:6px}.vin-manual-row{display:flex;gap:8px}.vin-manual-input{flex:1;font-size:16px;font-family:var(--font-mono, ui-monospace, monospace);background:var(--surface-2);border:1px solid var(--line-strong);border-radius:8px;padding:10px 12px;letter-spacing:.04em}.vin-manual-input:focus{outline:none;border-color:var(--primary)}.vin-manual-submit{background:var(--primary);color:var(--primary-fg);border:0;border-radius:8px;font-weight:700;font-size:13.5px;padding:10px 16px;cursor:pointer;font-family:inherit}.vin-manual-submit:disabled{opacity:.5;cursor:not-allowed}.vin-manual-error{margin-top:6px;font-size:12px;color:#b91c1c;font-weight:600}.vin-error{padding:24px;text-align:center;color:var(--text-dim);font-size:14px}.vin-error strong{display:block;color:var(--text);font-size:15px;margin-bottom:4px}.vin-error p{margin:8px 0 16px;line-height:1.45}.vin-retry-btn{background:var(--primary);color:var(--primary-fg);border:0;border-radius:8px;font-weight:700;font-size:13.5px;padding:10px 16px;cursor:pointer;font-family:inherit}.pj-root{min-height:100vh;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-feature-settings:var(--font-feature-settings);font-size:14.5px;-webkit-font-smoothing:antialiased;padding-bottom:96px}.pj-shell{max-width:640px;margin:0 auto;padding:0 16px}.pj-header{position:sticky;top:0;z-index:10;background:#f7f7f8eb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);padding:12px 0 10px}.pj-header-inner{max-width:640px;margin:0 auto;padding:0 16px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px}.pj-back{display:inline-flex;align-items:center;gap:4px;color:var(--text-dim);text-decoration:none;font-weight:600;font-size:13.5px;padding:6px 8px 6px 4px;border-radius:8px;background:transparent;border:0;cursor:pointer}.pj-back:hover{color:var(--text)}.pj-header-center{display:flex;align-items:center;gap:8px;min-width:0}.pj-jobnum{font-size:14px;font-weight:800;letter-spacing:.02em;color:var(--ink, #0f1024);white-space:nowrap}.pj-pill{font-size:10.5px;font-weight:700;padding:4px 10px;border-radius:999px;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.pj-pill.t-full{background:var(--full-bg);color:var(--full-fg)}.pj-pill.t-three_q{background:var(--threeq-bg);color:var(--threeq-fg)}.pj-pill.t-half{background:var(--half-bg);color:var(--half-fg)}.pj-pill.t-quarter{background:var(--quarter-bg);color:var(--quarter-fg)}.pj-pill.t-decal{background:var(--decal-bg);color:var(--decal-fg)}.pj-pill.t-removal{background:var(--removal-bg);color:var(--removal-fg)}.pj-pill.t-color_change{background:#ffd7e3;color:#8a1c4a}.pj-date{font-weight:600;font-size:13.5px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pj-sync{font-size:11.5px;font-weight:600;padding:4px 9px;border-radius:999px;white-space:nowrap;letter-spacing:.01em;display:inline-flex;align-items:center;gap:2px}.pj-sync-saving{background:#0f11180f;color:var(--text-dim)}.pj-sync-saved{background:#1f8a5b1a;color:#1f8a5b}.pj-sync-error{background:#dc26261a;color:#b91c1c}.pj-sync-check{font-weight:800}.pj-card{background:var(--bg-elev);border:1px solid var(--line);border-radius:14px;padding:16px;margin-top:14px;box-shadow:var(--shadow-card)}.pj-card-title{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-mute);margin:0 0 10px}.pj-kv-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px}.pj-kv{min-width:0}.pj-kv-label{font-size:11.5px;font-weight:600;color:var(--text-mute);letter-spacing:.02em;margin-bottom:3px}.pj-kv-val{font-size:14.5px;font-weight:600;color:var(--text);word-break:break-word}.pj-kv-val.is-muted{color:var(--text-dim);font-weight:500}.pj-label{display:block;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-mute);margin-bottom:6px}.pj-input,.pj-textarea{width:100%;font:inherit;font-size:16px;line-height:1.45;color:var(--text);background:var(--surface-2);border:1px solid var(--line-strong);border-radius:10px;padding:10px 12px;box-sizing:border-box;transition:border-color .12s ease,box-shadow .12s ease;-webkit-appearance:none;appearance:none}.pj-input:focus,.pj-textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #0f111814;background:var(--bg-elev)}.pj-textarea{min-height:110px;resize:vertical}.pj-time-cell{position:relative}.pj-time-cell .pj-input{padding-right:38px}.pj-time-suffix{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--text-mute);font-size:13px;pointer-events:none}.pj-field-hint{margin-top:6px;font-size:12px;color:var(--text-dim);line-height:1.4}.pj-complete-banner{background:#d8efe0;color:#1f6b4a;border:1px solid rgba(31,107,74,.18);border-radius:12px;padding:12px 14px;margin-top:14px;font-weight:600;line-height:1.45}.pj-actions{position:fixed;left:0;right:0;bottom:0;z-index:10;background:#f7f7f8f0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--line);padding:10px 16px calc(10px + env(safe-area-inset-bottom))}.pj-actions-inner{max-width:640px;margin:0 auto;display:flex;gap:10px}.pj-btn{flex:1;font:inherit;font-size:15px;font-weight:700;letter-spacing:.01em;padding:12px 14px;border-radius:12px;border:1px solid transparent;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease;min-height:48px}.pj-btn:disabled{opacity:.55;cursor:not-allowed}.pj-btn-primary{background:var(--primary);color:var(--primary-fg)}.pj-btn-primary:hover:not(:disabled){background:#1a1b30}.pj-btn-ghost{background:transparent;color:var(--text);border-color:var(--line-strong)}.pj-btn-ghost:hover:not(:disabled){background:var(--surface-2)}.pj-btn-danger{background:#b91c1c;color:#fff}.pj-btn-danger:hover:not(:disabled){background:#9c1717}.pj-discard-backdrop{position:fixed;inset:0;z-index:20;background:#0f111873;display:grid;place-items:center;padding:16px}.pj-discard-modal{background:var(--bg-elev);border-radius:16px;padding:22px;max-width:420px;width:100%;box-shadow:var(--shadow-lift)}.pj-discard-modal h3{margin:0 0 8px;font-size:18px;font-weight:700}.pj-discard-modal p{margin:0 0 8px;font-size:14px;color:var(--text-dim);line-height:1.5}.pj-discard-warn{color:#b91c1c!important;font-weight:600}.pj-discard-actions{display:flex;gap:10px;margin-top:14px}.pj-state{margin:64px auto;max-width:420px;text-align:center;color:var(--text-dim)}.pj-state-title{font-size:18px;font-weight:700;color:var(--text);margin-bottom:6px}.pj-state p{margin:0;line-height:1.5}.pj-state-error{color:#b91c1c}.pj-steps-intro{margin:0 0 4px;font-size:13px;color:var(--text-mute);line-height:1.45}.pj-steps-note{margin:0 0 12px;font-size:12px;color:var(--text-dim);line-height:1.4}.pj-prog{display:flex;align-items:center;gap:10px;margin-bottom:14px}.pj-prog-bar{flex:1;height:7px;background:var(--surface-2);border-radius:999px;overflow:hidden}.pj-prog-fill{display:block;height:100%;background:#1f8a5b;border-radius:999px;transition:width .2s ease}.pj-prog-label{font-size:12.5px;font-weight:700;color:var(--text-mute);font-variant-numeric:tabular-nums;white-space:nowrap}.pj-step-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.pj-step{display:flex;gap:12px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);transition:border-color .15s ease,background .15s ease}.pj-step.is-done{background:#1f8a5b0f;border-color:#1f8a5b4d}.pj-step-check{flex-shrink:0;width:34px;height:34px;border-radius:999px;border:2px solid var(--line-strong);background:var(--bg-elev);display:grid;place-items:center;cursor:pointer;color:var(--text-mute);font-weight:800;font-size:15px;-webkit-tap-highlight-color:transparent;transition:background .15s ease,border-color .15s ease,color .15s ease}.pj-step.is-done .pj-step-check{background:#1f8a5b;border-color:#1f8a5b;color:#fff}.pj-step-num{line-height:1}.pj-step-body{min-width:0;flex:1}.pj-step-title{font-size:15px;font-weight:700;color:var(--text);letter-spacing:-.01em}.pj-step.is-done .pj-step-title{color:var(--text-mute)}.pj-step-what{margin:4px 0 8px;font-size:13.5px;color:var(--text);line-height:1.45}.pj-step-how{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:4px}.pj-step-how li{font-size:13px;color:var(--text-mute);line-height:1.45}.pj-step-watch{margin-top:10px;font-size:12.5px;color:#92400e;background:#fef3c7;border-radius:8px;padding:8px 10px;line-height:1.4}@media(prefers-reduced-motion:reduce){.pj-prog-fill,.pj-step,.pj-step-check{transition:none}}.cp-root{--cp-coral: #ff7a45;--cp-coral-tint: #fff1ea;--cp-ink: #0f172a;--cp-ink-2: #475569;--cp-ink-3: #6b7280;--cp-ink-4: #9ca3af;--cp-line: #eceef2;--cp-line-2: #f1f3f6;--cp-shell: #f4f5f8;--cp-surface: #ffffff;--cp-card-shadow: 0 1px 0 rgba(15, 23, 42, .04);min-height:100vh;background:var(--cp-shell);font-family:-apple-system,BlinkMacSystemFont,Inter Tight,Plus Jakarta Sans,system-ui,sans-serif;color:var(--cp-ink);-webkit-font-smoothing:antialiased}.cp-main{max-width:720px;margin:0 auto;padding:26px 18px 80px;display:flex;flex-direction:column;gap:16px}@media(min-width:640px){.cp-main{padding:38px 26px 80px;gap:20px}}.cp-num{font-variant-numeric:tabular-nums}.cp-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}.cp-loading{display:inline-flex;align-items:center;gap:10px;color:var(--cp-ink-3);font-size:14px;padding:80px 0;justify-content:center}.cp-spin{animation:cp-spin 1s linear infinite}@keyframes cp-spin{to{transform:rotate(360deg)}}.cp-error{background:var(--cp-surface);border:1px solid var(--cp-line);border-radius:14px;padding:28px;box-shadow:var(--cp-card-shadow)}.cp-error h2{margin:0 0 8px;font-size:18px;font-weight:700;letter-spacing:-.01em}.cp-error p{font-size:13.5px;color:var(--cp-ink-3);margin:0 0 10px;line-height:1.5}.cp-error a{color:var(--cp-coral)}.cp-error-detail{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px;background:var(--cp-shell);border-radius:6px;padding:8px 10px;color:var(--cp-ink-2)!important;margin-bottom:0!important}.cp-greeting{padding:2px 2px 0}.cp-greeting-h{margin:0 0 4px;font-size:24px;font-weight:700;letter-spacing:-.02em;line-height:1.15}@media(min-width:640px){.cp-greeting-h{font-size:28px}}.cp-greeting-sub{margin:0;font-size:14.5px;color:var(--cp-ink-3)}.cp-card{background:var(--cp-surface);border:1px solid var(--cp-line);border-radius:16px;padding:20px 22px;box-shadow:var(--cp-card-shadow)}.cp-card-h{margin:0 0 12px;font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--cp-ink-4)}.cp-card-h-flush{margin:0}.cp-list{list-style:none;margin:0;padding:0}.cp-hero{background:linear-gradient(135deg,#1a0f0a,#2a1a12 55%,#ff7a45 145%);color:#fff;border-radius:18px;padding:28px 26px;box-shadow:0 18px 40px -16px #0f172a59}@media(min-width:640px){.cp-hero{padding:36px 34px}}.cp-hero-chips{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:14px}.cp-chip{display:inline-block;padding:4px 12px;background:#ffffff1f;border:1px solid rgba(255,255,255,.18);border-radius:999px;font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.cp-status-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;background:#ffffff29;border-radius:999px;font-size:11.5px;font-weight:600}.cp-hero-title{margin:0 0 8px;font-size:28px;font-weight:700;letter-spacing:-.02em;line-height:1.1}@media(min-width:640px){.cp-hero-title{font-size:34px}}.cp-hero-sub{margin:0;font-size:13.5px;color:#ffffffb8;display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.cp-hero-dot{color:#fff6}.cp-rail-card{padding:24px 16px 18px}.cp-rail{list-style:none;margin:0;padding:0;display:flex;align-items:flex-start}.cp-stage{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;position:relative;min-width:0}.cp-stage:not(:last-child):after{content:"";position:absolute;top:17px;left:calc(50% + 18px);right:calc(-50% + 18px);height:2px;background:var(--cp-line);z-index:0}.cp-rail-mini .cp-stage:not(:last-child):after{top:13px;left:calc(50% + 14px);right:calc(-50% + 14px)}.cp-stage-done:not(:last-child):after{background:var(--cp-coral)}.cp-stage-node{width:36px;height:36px;border-radius:999px;display:grid;place-items:center;background:var(--cp-surface);border:2px solid var(--cp-line);color:var(--cp-ink-4);z-index:1;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease}.cp-rail-mini .cp-stage-node{width:28px;height:28px}.cp-stage-done .cp-stage-node{background:var(--cp-coral);border-color:var(--cp-coral);color:#fff}.cp-stage-current .cp-stage-node{background:#fff;border-color:var(--cp-coral);color:var(--cp-coral);box-shadow:0 0 0 4px var(--cp-coral-tint),0 4px 12px -2px #ff7a4573}.cp-stage-label{font-size:11px;font-weight:500;color:var(--cp-ink-4);text-align:center;line-height:1.2}.cp-rail-mini .cp-stage-label{font-size:10px}.cp-stage-done .cp-stage-label,.cp-stage-current .cp-stage-label{color:var(--cp-ink)}.cp-stage-current .cp-stage-label{font-weight:600}.cp-stage-days{font-size:10px;font-weight:600;color:var(--cp-coral);text-align:center;line-height:1.1;margin-top:-2px}@media(max-width:420px){.cp-stage-label{font-size:9.5px}.cp-stage-node{width:32px;height:32px}.cp-stage:not(:last-child):after{top:15px;left:calc(50% + 16px);right:calc(-50% + 16px)}}.cp-upnext-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--cp-line-2)}.cp-upnext-row:first-child{border-top:0;padding-top:0}.cp-upnext-row:last-child{padding-bottom:0}.cp-tone-dot{width:8px;height:8px;border-radius:999px;flex-shrink:0}.cp-tone-warn{background:#f59e0b}.cp-tone-info{background:#3b82f6}.cp-tone-ok{background:#10b981}.cp-tone-neutral{background:var(--cp-ink-4)}.cp-upnext-title{flex:1;min-width:0;font-size:13.5px;font-weight:500;color:var(--cp-ink);line-height:1.4}.cp-cta-chip{font-size:11.5px;font-weight:600;color:var(--cp-ink-2);background:var(--cp-shell);border:1px solid var(--cp-line);border-radius:999px;padding:4px 10px;white-space:nowrap;flex-shrink:0}.cp-row-chev{color:var(--cp-ink-4);flex-shrink:0}.cp-file-row{display:flex;align-items:center;gap:12px;padding:11px 0;border-top:1px solid var(--cp-line-2)}.cp-file-row:first-child{border-top:0;padding-top:0}.cp-file-row:last-child{padding-bottom:0}.cp-file-icon{width:36px;height:36px;border-radius:10px;background:var(--cp-shell);display:grid;place-items:center;color:var(--cp-ink-2);flex-shrink:0}.cp-file-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.cp-file-name{font-size:13px;font-weight:500;color:var(--cp-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cp-file-meta{font-size:11px;color:var(--cp-ink-4)}.cp-file-open{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:var(--cp-coral);text-decoration:none;flex-shrink:0;padding:6px 10px;border-radius:8px;transition:background .15s ease}.cp-file-open:hover{background:var(--cp-coral-tint)}.cp-act-row{display:flex;align-items:flex-start;gap:12px;padding:10px 0;border-top:1px solid var(--cp-line-2)}.cp-act-row:first-child{border-top:0;padding-top:0}.cp-act-row:last-child{padding-bottom:0}.cp-act-dot{width:7px;height:7px;border-radius:999px;background:var(--cp-ink-4);flex-shrink:0;margin-top:6px}.cp-act-text{flex:1;min-width:0;font-size:13px;color:var(--cp-ink-2);line-height:1.45}.cp-act-when{font-size:11.5px;color:var(--cp-ink-4);white-space:nowrap;flex-shrink:0;margin-top:1px}.cp-checklist-head{margin-bottom:6px}.cp-checklist-head-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.cp-checklist-count{font-size:12.5px;font-weight:600;color:var(--cp-ink-3)}.cp-progress{height:7px;background:var(--cp-shell);border-radius:999px;overflow:hidden}.cp-progress-fill{display:block;height:100%;border-radius:999px;background:linear-gradient(135deg,#ff7a45,#ff5c8a);transition:width .4s ease}.cp-task-list{list-style:none;margin:0;padding:0}.cp-task-subsection{margin-top:4px}.cp-task-subhead{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--cp-ink-4);padding:14px 0 2px;border-top:1px solid var(--cp-line-2)}.cp-task-row{display:flex;align-items:flex-start;gap:14px;padding:16px 0;border-top:1px solid var(--cp-line-2)}.cp-task-list:first-of-type>.cp-task-row:first-child{border-top:0}.cp-task-subsection .cp-task-row:first-child{border-top:0}.cp-ring{width:22px;height:22px;border-radius:999px;display:grid;place-items:center;flex-shrink:0;margin-top:1px;border:2px solid var(--cp-ink-4);color:#fff;transition:border-color .18s ease,background .18s ease}.cp-ring-not_started{border-color:#d4d8e0;background:transparent}.cp-ring-in_progress{border-color:var(--cp-coral);background:transparent;position:relative}.cp-ring-in_progress:after{content:"";position:absolute;inset:-2px;border-radius:999px;background:conic-gradient(var(--cp-coral) var(--cp-ring-pct, 0%),transparent var(--cp-ring-pct, 0%));-webkit-mask:radial-gradient(circle,transparent 7px,#000 8px);mask:radial-gradient(circle,transparent 7px,#000 8px)}.cp-ring-done{border-color:var(--cp-coral);background:var(--cp-coral)}.cp-task-body{flex:1;min-width:0}.cp-task-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.cp-task-title{font-size:14px;font-weight:600;letter-spacing:-.01em;color:var(--cp-ink)}.cp-task-done .cp-task-title{color:var(--cp-ink-3)}.cp-task-pill{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:999px;font-size:11px;font-weight:600;white-space:nowrap}.cp-task-pill-done{background:#ecfdf5;color:#047857}.cp-task-pill-in_progress{background:var(--cp-coral-tint);color:#b8431b}.cp-task-pill-not_started{background:#eef0f4;color:var(--cp-ink-2)}.cp-task-desc{margin:4px 0 0;font-size:12.5px;color:var(--cp-ink-2);line-height:1.45}.cp-task-foot{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:11.5px;color:var(--cp-ink-4)}.cp-task-due{display:inline-flex;align-items:center;gap:5px}.cp-task-foot-dot{color:var(--cp-ink-4)}.cp-task-cta{appearance:none;font:inherit;display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;padding:8px 13px;border-radius:999px;flex-shrink:0;white-space:nowrap;cursor:default}.cp-task-cta-primary{background:linear-gradient(135deg,#ff7a45,#ff5c8a);color:#fff;border:0;box-shadow:0 8px 18px -8px #ff7a458c}.cp-task-cta-ghost{background:var(--cp-surface);color:var(--cp-ink-2);border:1px solid var(--cp-line)}.cp-task-cta:disabled{opacity:1}.cp-celebrate{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:32px 24px}.cp-celebrate-badge{width:52px;height:52px;border-radius:999px;display:grid;place-items:center;background:var(--cp-coral-tint);color:var(--cp-coral);margin-bottom:4px}.cp-celebrate-title{margin:0;font-size:19px;font-weight:700;letter-spacing:-.01em}.cp-celebrate-sub{margin:0;font-size:14px;color:var(--cp-ink-3)}.cp-group-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:4px 2px 0}.cp-group-title{margin:0;font-size:18px;font-weight:700;letter-spacing:-.01em}.cp-group-count{font-size:13px;font-weight:600;color:var(--cp-ink-3)}.cp-vehicle-card{padding:18px 20px 20px}.cp-vehicle-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:18px}.cp-vehicle-id{display:flex;flex-direction:column;gap:2px;min-width:0}.cp-vehicle-title{font-size:15.5px;font-weight:700;letter-spacing:-.01em;color:var(--cp-ink)}.cp-vehicle-job{font-size:11px;font-weight:500;color:var(--cp-ink-4)}.cp-status-pill-light{background:var(--cp-shell);color:var(--cp-ink-2);border:1px solid var(--cp-line)}.cp-rail-card-mini{margin:0 -2px}.cp-vehicle-upnext{display:flex;align-items:center;gap:10px;margin-top:16px;padding-top:14px;border-top:1px solid var(--cp-line-2)}.cp-vehicle-upnext-text{font-size:13px;color:var(--cp-ink-2);line-height:1.4}.cp-proof-card{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.cp-proof-card-body{display:flex;align-items:center;gap:14px;min-width:0}.cp-proof-card-icon{width:42px;height:42px;border-radius:12px;flex-shrink:0;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#1a0f0a,#2a1a12);box-shadow:0 6px 16px -8px #0f172a80}.cp-proof-card-text{min-width:0}.cp-proof-card-h{margin:0;font-size:15.5px;font-weight:700;letter-spacing:-.01em;color:var(--cp-ink)}.cp-proof-card-sub{margin:2px 0 0;font-size:12.5px;color:var(--cp-ink-3)}.cp-proof-card-cta{appearance:none;font:inherit;display:inline-flex;align-items:center;gap:7px;font-size:13.5px;font-weight:700;color:#fff;background:linear-gradient(135deg,#ff7a45,#ff5c8a);border:0;border-radius:999px;padding:10px 18px;cursor:pointer;flex-shrink:0;box-shadow:0 10px 22px -10px #ff7a4599;transition:transform .12s ease,box-shadow .12s ease}.cp-proof-card-cta:hover{transform:translateY(-1px);box-shadow:0 12px 26px -10px #ff7a45b8}.cp-proof-overlay{position:fixed;inset:0;z-index:60;display:flex;flex-direction:column;background:radial-gradient(70% 55% at 18% 2%,rgba(120,130,160,.16),transparent 70%),radial-gradient(75% 60% at 100% 100%,rgba(255,122,69,.2),transparent 68%),#0b0e14;color:#f5f7fb;animation:cp-proof-in .22s ease;-webkit-font-smoothing:antialiased}@keyframes cp-proof-in{0%{opacity:0}to{opacity:1}}.cp-proof-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 18px;background:#0d10169e;border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);flex-shrink:0}@supports (padding: max(0px)){.cp-proof-bar{padding-top:max(14px,env(safe-area-inset-top))}}.cp-proof-bar-id{display:flex;flex-direction:column;gap:2px;min-width:0}.cp-proof-bar-title{font-size:15px;font-weight:700;letter-spacing:-.01em;color:#f5f7fb}.cp-proof-bar-sub{font-size:12px;color:#8b93a7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cp-proof-close{appearance:none;flex-shrink:0;width:38px;height:38px;border-radius:999px;display:grid;place-items:center;color:#c8cdda;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);cursor:pointer;transition:background .14s ease,color .14s ease}.cp-proof-close:hover{background:#ffffff1f;color:#fff}.cp-proof-stage{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:20px 18px;overflow:auto}.cp-proof-state{display:flex;flex-direction:column;align-items:center;gap:12px;color:#8b93a7;font-size:14px;text-align:center}.cp-proof-state-err{gap:6px}.cp-proof-state-h{font-size:16px;font-weight:700;color:#f5f7fb}.cp-proof-state-detail{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px;color:#8b93a7;max-width:80vw;word-break:break-word}.cp-proof-imgwrap{appearance:none;border:0;background:transparent;padding:0;margin:0;cursor:zoom-in;display:flex;align-items:center;justify-content:center;max-width:100%;max-height:100%;position:relative;touch-action:pinch-zoom;animation:cp-proof-pop .28s cubic-bezier(.2,.7,.3,1)}@keyframes cp-proof-pop{0%{opacity:0;transform:scale(.985)}to{opacity:1;transform:scale(1)}}.cp-proof-img{display:block;max-width:100%;max-height:calc(100vh - 180px);width:auto;height:auto;object-fit:contain;border-radius:14px;box-shadow:0 30px 80px #0000008c}.cp-proof-imgwrap.is-zoomed{cursor:zoom-out;align-items:flex-start}.cp-proof-imgwrap.is-zoomed .cp-proof-img{max-width:none;max-height:none;width:auto;min-width:min(160vw,1600px);border-radius:0}.cp-proof-zoom-hint{position:absolute;bottom:12px;left:50%;transform:translate(-50%);display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;color:#e7eaf1;background:#0d1016b3;border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:5px 11px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);pointer-events:none}.cp-proof-pdf{width:100%;height:100%;min-height:70vh;border:0;border-radius:12px;background:#fff;box-shadow:0 30px 80px #0000008c}.cp-proof-versions{display:flex;align-items:center;gap:12px;padding:14px 18px;background:#0d10169e;border-top:1px solid rgba(255,255,255,.08);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);flex-shrink:0;overflow-x:auto}@supports (padding: max(0px)){.cp-proof-versions{padding-bottom:max(14px,env(safe-area-inset-bottom))}}.cp-proof-versions-label{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#6f768a;flex-shrink:0}.cp-proof-chips{display:flex;align-items:center;gap:8px}.cp-proof-chip{appearance:none;font:inherit;font-variant-numeric:tabular-nums;font-size:13px;font-weight:600;color:#c8cdda;background:#ffffff12;border:1px solid rgba(255,255,255,.1);border-radius:999px;padding:7px 15px;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background .14s ease,color .14s ease,border-color .14s ease}.cp-proof-chip:hover{background:#ffffff1f;color:#fff}.cp-proof-chip.is-active{background:var(--cp-coral);border-color:var(--cp-coral);color:#fff;box-shadow:0 6px 16px -6px #ff7a4599}.cp-proof-chip-dot{width:6px;height:6px;border-radius:999px;flex-shrink:0}.cp-proof-chip-dot-approved{background:#34d399}.cp-proof-chip-dot-changes{background:#fbbf24}.cp-proof-chip.is-active .cp-proof-chip-dot-approved,.cp-proof-chip.is-active .cp-proof-chip-dot-changes{background:#fff}.cp-decide{flex-shrink:0;display:flex;flex-direction:column;gap:10px;padding:16px 18px;background:#0d10169e;border-top:1px solid rgba(255,255,255,.08);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}.cp-decide-prompt{display:flex;flex-direction:column;gap:2px}.cp-decide-prompt-h{font-size:14px;font-weight:700;letter-spacing:-.01em;color:#f5f7fb}.cp-decide-prompt-sub{font-size:12px;color:#8b93a7;line-height:1.4}.cp-decide-textarea{appearance:none;font:inherit;font-size:13.5px;width:100%;resize:none;color:#f5f7fb;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:10px 12px;line-height:1.45;transition:border-color .14s ease,background .14s ease}.cp-decide-textarea::placeholder{color:#6f768a}.cp-decide-textarea:focus{outline:none;border-color:#ff7a458c;background:#ffffff17}.cp-decide-textarea:disabled{opacity:.6}.cp-decide-err{margin:0;font-size:12.5px;color:#fca5a5;line-height:1.4}.cp-decide-hint{margin:0;font-size:11.5px;color:#6f768a}.cp-decide-actions{display:flex;align-items:center;gap:10px}.cp-decide-changes{appearance:none;font:inherit;flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:13.5px;font-weight:600;color:#c8cdda;background:#ffffff12;border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:11px 16px;cursor:pointer;transition:background .14s ease,color .14s ease,opacity .14s ease}.cp-decide-changes:hover:not(:disabled){background:#ffffff1f;color:#fff}.cp-decide-changes:disabled{opacity:.45;cursor:default}.cp-decide-approve{appearance:none;font:inherit;flex:1;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:13.5px;font-weight:700;color:#fff;background:linear-gradient(135deg,#ff7a45,#ff5c8a);border:0;border-radius:999px;padding:11px 16px;cursor:pointer;box-shadow:0 10px 22px -10px #ff7a45b3;transition:transform .12s ease,box-shadow .12s ease,opacity .14s ease}.cp-decide-approve:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 12px 26px -10px #ff7a45d1}.cp-decide-approve:disabled{opacity:.7;cursor:default}.cp-decide-done{align-items:flex-start}.cp-decide-pill{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:700;padding:7px 14px;border-radius:999px}.cp-decide-pill-approved{color:#6ee7b7;background:#34d39924;border:1px solid rgba(52,211,153,.3)}.cp-decide-pill-changes{color:#fcd34d;background:#fbbf2424;border:1px solid rgba(251,191,36,.3)}.cp-decide-pill-date{font-weight:600;opacity:.85}.cp-decide-note-read{margin:0;font-size:13px;color:#c8cdda;line-height:1.5;font-style:italic}.cp-foot{margin-top:10px;font-size:12px;color:var(--cp-ink-4);text-align:center;line-height:1.7}.cp-foot a{color:var(--cp-ink-3);text-decoration:none}.cp-foot a:hover{color:var(--cp-coral)}@media(prefers-reduced-motion:reduce){.cp-spin{animation:none}.cp-progress-fill,.cp-stage-node,.cp-ring,.cp-file-open,.cp-task-cta,.cp-proof-card-cta,.cp-proof-close,.cp-proof-chip,.cp-decide-textarea,.cp-decide-changes,.cp-decide-approve{transition:none}.cp-proof-overlay,.cp-proof-imgwrap{animation:none}}.wiz-main{max-width:1280px;margin:0 auto;padding:18px 22px 80px;font-family:-apple-system,BlinkMacSystemFont,Plus Jakarta Sans,Inter Tight,system-ui,sans-serif}.wiz-back{display:inline-flex;align-items:center;font-size:13px;font-weight:600;color:#6b7280;text-decoration:none;margin-bottom:12px;padding:6px 10px;border-radius:8px;transition:color .12s ease,background .12s ease}.wiz-back:hover{color:#0f172a;background:#0f172a0a}.wiz-head{display:flex;flex-direction:column;gap:14px;margin-bottom:16px}.wiz-h1{font-size:26px;font-weight:800;letter-spacing:-.02em;margin:0 0 2px;color:#0f172a}.wiz-sub{color:#6b7280;font-size:13px;margin:0}.wiz-stepper-strip{list-style:none;margin:0;padding:4px;display:flex;gap:4px;background:#fff;border:1px solid #ECEEF2;border-radius:12px;overflow-x:auto}.wiz-stepper-strip li{flex:1;min-width:0}.wiz-step-chip{appearance:none;border:0;background:transparent;display:flex;align-items:center;gap:10px;padding:9px 14px;border-radius:9px;font:inherit;font-size:13px;font-weight:600;color:#6b7280;cursor:pointer;width:100%;text-align:left;transition:all .12s ease}.wiz-step-chip:hover:not(:disabled){color:#0f172a;background:#f8f9fb}.wiz-step-chip.is-active{background:#ffefe4;color:#c2410c;font-weight:700}.wiz-step-chip.is-past{color:#15803d}.wiz-step-chip:disabled{opacity:.5;cursor:not-allowed}.wiz-step-num{width:22px;height:22px;border-radius:50%;display:inline-grid;place-items:center;font-size:11px;font-weight:800;background:#f4f5f8;color:#6b7280;flex-shrink:0}.wiz-step-chip.is-active .wiz-step-num{background:#ff7a45;color:#fff}.wiz-step-chip.is-past .wiz-step-num{background:#15803d;color:#fff}.wiz-banner{display:flex;align-items:center;gap:12px;padding:10px 14px;background:#fef2f2;border:1px solid #FECACA;border-radius:10px;color:#b91c1c;font-size:13px;margin-bottom:14px}.wiz-banner-close{margin-left:auto;background:transparent;border:0;color:#b91c1c;font-size:18px;cursor:pointer;padding:0 8px}.wiz-body{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;align-items:start}.wiz-step-body{background:#fff;border:1px solid #ECEEF2;border-radius:14px;padding:22px 26px;box-shadow:0 1px #0f172a0a,0 6px 20px #0f172a0f;min-height:360px}.wiz-step-title{margin-bottom:20px}.wiz-step-title h2{font-size:22px;font-weight:800;letter-spacing:-.01em;margin:0 0 4px;color:#0f172a}.wiz-step-title p{font-size:13.5px;color:#6b7280;margin:0;line-height:1.55}.wiz-block{padding:18px 0;border-top:1px solid #ECEEF2}.wiz-block:first-of-type{padding-top:0;border-top:0}.wiz-section-title{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#6b7280;margin:0 0 12px;display:flex;align-items:baseline;gap:8px}.wiz-section-soft{text-transform:none;letter-spacing:0;font-weight:600;font-size:11.5px;color:#9ca3af;font-style:italic}.wiz-card{appearance:none;border:1.5px solid #DEE1E6;background:#fff;border-radius:12px;padding:14px;font:inherit;text-align:left;cursor:pointer;transition:all .14s ease;display:flex;flex-direction:column;gap:6px;color:#0f172a}.wiz-card:hover{border-color:#ff7a45;transform:translateY(-1px);box-shadow:0 4px 14px #0f172a14}.wiz-card.is-active{border-color:#ff7a45;background:#ffefe4;box-shadow:0 0 0 3px #ff7a4526}.wiz-pending-price{font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#c2410c;background:#ff7a4514;padding:1px 7px;border-radius:999px;margin-top:4px;align-self:flex-start}.wiz-product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.wiz-product{appearance:none;border:1.5px solid #DEE1E6;background:#fff;border-radius:14px;padding:18px;font:inherit;text-align:left;cursor:pointer;transition:all .14s ease;display:flex;flex-direction:column;gap:8px;position:relative;overflow:hidden}.wiz-product:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--prod-accent, #FF7A45)}.wiz-product:hover{border-color:var(--prod-accent, #FF7A45);transform:translateY(-1px);box-shadow:0 6px 20px #0f172a14}.wiz-product.is-active{border-color:var(--prod-accent, #FF7A45);background:color-mix(in srgb,var(--prod-accent, #FF7A45) 8%,white);box-shadow:0 0 0 3px color-mix(in srgb,var(--prod-accent, #FF7A45) 18%,transparent)}.wiz-product-icon{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;font-size:20px;color:var(--prod-accent, #FF7A45);background:color-mix(in srgb,var(--prod-accent, #FF7A45) 14%,white);margin-bottom:4px}.wiz-product-label{font-size:15px;font-weight:800;color:#0f172a;letter-spacing:-.005em}.wiz-product-desc{font-size:12.5px;color:#6b7280;line-height:1.5}.wiz-vc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.wiz-vc-svg{height:50px;display:grid;place-items:center;color:#6b7280}.wiz-card.is-active .wiz-vc-svg{color:#ff7a45}.wiz-vc-svg svg{width:75%;height:100%}.wiz-vc-label{font-size:13px;font-weight:700;text-align:center}.wiz-size-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.wiz-size-bar{height:10px;background:#dee1e6;border-radius:999px;margin-bottom:8px;transition:background .14s ease}.wiz-card.is-active .wiz-size-bar{background:#ff7a45}.wiz-size-label{font-weight:700;font-size:14px}.wiz-size-desc{font-size:11.5px;color:#6b7280;line-height:1.4}.wiz-coverage-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.wiz-coverage-vis{position:relative;height:56px;background:#f4f5f8;border-radius:8px;overflow:hidden;margin-bottom:6px}.wiz-coverage-fill{position:absolute;left:0;right:0;bottom:0;background:linear-gradient(180deg,#ff7a45,#ff5c8a);transition:height .18s ease;opacity:.85}.wiz-card.is-active .wiz-coverage-fill{opacity:1}.wiz-coverage-pct{position:absolute;top:4px;right:6px;font-size:10.5px;font-weight:800;color:#fff;background:#00000059;padding:1px 6px;border-radius:999px}.wiz-coverage-label{font-weight:700;font-size:14px}.wiz-coverage-desc{font-size:11.5px;color:#6b7280;line-height:1.4}.wiz-addons-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.wiz-addon{appearance:none;border:1.5px solid #DEE1E6;background:#fff;border-radius:10px;padding:11px 13px;cursor:pointer;text-align:left;display:flex;align-items:center;gap:10px;font:inherit;transition:all .12s ease}.wiz-addon:hover{border-color:#ff7a45}.wiz-addon.is-active{border-color:#ff7a45;background:#ffefe4}.wiz-addon-check{width:22px;height:22px;border-radius:6px;display:grid;place-items:center;background:#f4f5f8;color:#fff;font-size:12px;font-weight:800;flex-shrink:0}.wiz-addon.is-active .wiz-addon-check{background:#ff7a45}.wiz-addon-label{font-weight:600;font-size:13px;flex:1}.wiz-design-row{margin-bottom:16px}.wiz-design-row:last-child{margin-bottom:0}.wiz-design-row-label{font-size:12px;font-weight:700;color:#344054;margin-bottom:8px}.wiz-design-tiers{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.wiz-tier-name{font-weight:700;font-size:13.5px}.wiz-tier-desc{font-size:11.5px;color:#6b7280;line-height:1.4}.wiz-vin-row{display:flex;gap:8px}.wiz-vin-row .wiz-input{flex:1}.wiz-vin-scan{appearance:none;border:1px dashed #DEE1E6;background:#f8f9fb;color:#9ca3af;font:inherit;font-weight:600;font-size:12.5px;padding:9px 14px;border-radius:10px;cursor:not-allowed;white-space:nowrap}.wiz-photos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}.wiz-photo-slot{position:relative;background:#f4f5f8;border:1px solid #ECEEF2;border-radius:10px;padding:12px 12px 30px;font-size:11.5px}.wiz-photo-name{font-weight:700;color:#344054;word-break:break-word;line-height:1.3}.wiz-photo-size{position:absolute;bottom:8px;left:12px;color:#6b7280;font-size:11px}.wiz-photo-remove{position:absolute;top:6px;right:6px;width:22px;height:22px;border-radius:50%;border:0;background:#0f172a99;color:#fff;cursor:pointer;font-size:14px;line-height:1}.wiz-photo-add{position:relative;border:1.5px dashed #DEE1E6;background:#fff;border-radius:10px;display:grid;place-items:center;min-height:80px;cursor:pointer;font-weight:700;font-size:12.5px;color:#6b7280;transition:all .12s ease}.wiz-photo-add:hover{border-color:#ff7a45;color:#c2410c;background:#fff6f0}.wiz-photo-add input{position:absolute;inset:0;opacity:0;cursor:pointer}.wiz-row-2,.wiz-row-3{display:grid;gap:10px 14px;margin-bottom:10px}.wiz-row-2{grid-template-columns:repeat(2,1fr)}.wiz-row-3{grid-template-columns:repeat(3,1fr)}@media(max-width:700px){.wiz-row-2,.wiz-row-3{grid-template-columns:1fr}}.wiz-row-2 label,.wiz-row-3 label,.wiz-notes-label{display:flex;flex-direction:column;gap:4px}.wiz-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#6b7280}.wiz-input{border:1px solid #DEE1E6;background:#fff;border-radius:10px;padding:9px 12px;font:inherit;font-size:13.5px;color:#0f172a;width:100%;box-sizing:border-box;transition:border-color .12s ease,box-shadow .12s ease}.wiz-input:focus{outline:none;border-color:#ff7a45;box-shadow:0 0 0 3px #ff7a452e}.wiz-input-mono{font-family:ui-monospace,SF Mono,Menlo,monospace;letter-spacing:.04em;text-transform:uppercase}.wiz-textarea{font-family:inherit;resize:vertical;min-height:70px}.wiz-loading{color:#6b7280;font-style:italic;font-size:13px;display:inline-block;padding:4px 0}.wiz-subsection-title{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#6b7280;margin:18px 0 10px}.wiz-radio-row{display:flex;gap:8px;margin-bottom:14px;margin-top:12px}.wiz-radio{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:#f8f9fb;border:1px solid #DEE1E6;border-radius:999px;font-size:13px;font-weight:600;cursor:pointer;color:#344054}.wiz-radio.is-active{background:#ffefe4;color:#c2410c;border-color:#ff7a45}.wiz-radio input{display:none}.wiz-notes-label{margin-top:10px}.wiz-new-client{margin-top:4px}.wiz-quote{background:#fff;border:1px solid #ECEEF2;border-radius:14px;padding:18px 20px;box-shadow:0 1px #0f172a0a,0 6px 20px #0f172a0f;position:sticky;top:18px}.wiz-quote-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:14px}.wiz-quote-title{font-weight:800;font-size:15px;color:#0f172a}.wiz-quote-disclaimer{font-size:9.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#c2410c;background:#ffefe4;padding:2px 8px;border-radius:999px}.wiz-quote-disclaimer-real{font-size:9.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#065f46;background:#d1fae5;padding:2px 8px;border-radius:999px}.wiz-quote-product{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#6b7280;margin:-6px 0 10px;padding-bottom:8px;border-bottom:1px solid #ECEEF2}.wiz-quote-custom{margin-top:10px;padding:10px 12px;background:#fef3c7;border:1px solid #FCD34D;border-radius:8px;font-size:12px;color:#92400e}.wiz-quote-custom-note{margin-bottom:4px;line-height:1.45}.wiz-quote-custom-note:last-child{margin-bottom:0}.wiz-quote-to-estimate{margin-top:14px;padding:10px 14px;width:100%;font-size:12.5px;font-weight:600;text-align:left;color:#c5601a;background:#e6873a1a;border:1px dashed rgba(230,135,58,.45);border-radius:10px;cursor:pointer;font-family:inherit;line-height:1.4}.wiz-quote-to-estimate:hover{background:#e6873a29}.wiz-quote-to-estimate:disabled{color:#9ca3af;background:#0f11180a;border-color:#0f11181a;cursor:not-allowed}.wiz-wrong-door{margin-top:6px;font-size:12.5px;color:#6b7280}.wiz-wrong-door-link{color:#c5601a;font-weight:600;text-decoration:underline}.wiz-wrong-door-link:hover{color:#a8501a}.wiz-quote-foot-soft{margin-top:8px;font-size:11px;color:#92400e;font-style:italic;line-height:1.45}.wiz-custom-quote-note{background:#fef3c7;border:1px solid #FCD34D;border-radius:10px;padding:12px 14px;color:#92400e;font-size:13px;line-height:1.5}.wiz-addon-unit{color:#9ca3af;font-weight:500;font-size:11.5px}.wiz-quote-empty{color:#9ca3af;font-size:12.5px;font-style:italic;padding:30px 0;text-align:center}.wiz-quote-rows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;max-height:320px;overflow-y:auto}.wiz-quote-row{display:flex;justify-content:space-between;font-size:12.5px;color:#344054;padding:5px 0;border-bottom:1px solid #ECEEF2}.wiz-quote-row:last-child{border-bottom:0}.wiz-quote-row-label{padding-right:10px;word-break:break-word}.wiz-quote-row-price{font-variant-numeric:tabular-nums;color:#9ca3af;font-weight:700;white-space:nowrap}.wiz-quote-foot{margin-top:14px;padding-top:12px;border-top:1px solid #DEE1E6;display:flex;flex-direction:column;gap:5px;font-size:13px}.wiz-quote-foot-row{display:flex;justify-content:space-between;color:#6b7280;font-variant-numeric:tabular-nums}.wiz-quote-total{margin-top:4px;padding-top:8px;border-top:1px solid #ECEEF2;font-size:17px;font-weight:800;color:#0f172a}.wiz-foot{display:flex;align-items:center;gap:10px;margin-top:18px;padding-top:18px;border-top:1px solid #ECEEF2}.wiz-foot-grow{flex:1}.wiz-btn{appearance:none;border:1px solid #DEE1E6;background:#fff;color:#344054;font:inherit;font-weight:700;font-size:13.5px;padding:11px 22px;border-radius:10px;cursor:pointer;transition:all .12s ease}.wiz-btn:hover:not(:disabled){background:#f8f9fb;color:#0f172a;border-color:#6b7280}.wiz-btn:disabled{opacity:.45;cursor:not-allowed}.wiz-btn-ghost{background:transparent}.wiz-btn-primary{background:#ff7a45;color:#fff;border-color:#ff7a45}.wiz-btn-primary:hover:not(:disabled){background:#ed5e1f;border-color:#ed5e1f;color:#fff}@media(max-width:1000px){.wiz-body{grid-template-columns:1fr}.wiz-quote{position:static}}@media(max-width:720px){.wiz-step-body{padding:16px}.wiz-product-grid,.wiz-vc-grid,.wiz-size-grid,.wiz-coverage-grid,.wiz-addons-grid,.wiz-design-tiers{grid-template-columns:1fr 1fr}}:root{--prod-bg: #F4F5F8;--prod-surface: #FFFFFF;--prod-surface-2: #F5F5F6;--prod-line: rgba(15, 17, 24, .08);--prod-line-strong: rgba(15, 17, 24, .14);--prod-ink: #0F1024;--prod-ink-2: #4B5563;--prod-ink-3: #9CA3AF;--prod-accent: #0F1024;--prod-radius: 16px;--prod-radius-sm: 10px;--prod-shadow: 0 1px 2px rgba(15, 17, 24, .04), 0 2px 8px rgba(15, 17, 24, .05);--prod-shadow-hover: 0 4px 14px rgba(15, 17, 24, .1)}.prod-root{min-height:100vh;background:var(--prod-bg);font-family:Inter Tight,-apple-system,BlinkMacSystemFont,Plus Jakarta Sans,system-ui,sans-serif;font-feature-settings:"cv11","ss01","ss03";font-size:13.5px;color:var(--prod-ink);-webkit-font-smoothing:antialiased}.prod-main{max-width:1600px;margin:0 auto;padding:20px 22px 60px}.prod-head{display:flex;align-items:center;gap:12px;margin-bottom:16px}.prod-title{font-size:26px;font-weight:700;letter-spacing:-.02em;margin:0}.prod-sub{color:var(--prod-ink-3);font-size:13px}.prod-head-right{margin-left:auto;display:flex;align-items:center;gap:10px}.prod-new-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:var(--prod-accent);color:#fff;border:0;border-radius:10px;font:inherit;font-weight:700;cursor:pointer}.prod-new-btn:hover{opacity:.92}.prod-error,.prod-banner-error{margin:0 0 16px;padding:10px 14px;border-radius:10px;background:#fee2e2;color:#7c1414;font-weight:600}.prod-loading,.prod-empty{padding:40px 12px;text-align:center;color:var(--prod-ink-3);font-size:13px}.prod-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:18px;align-items:start}@media(max-width:1100px){.prod-layout{grid-template-columns:minmax(0,1fr)}}.prod-board{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;align-items:start}.prod-col{display:flex;flex-direction:column;background:var(--prod-surface-2);border:1px solid var(--prod-line);border-radius:var(--prod-radius);min-height:280px;transition:border-color .12s ease,background .12s ease}.prod-col.is-target{border-color:var(--prod-ink);background:#0f111808}.prod-col-head{display:flex;align-items:center;gap:8px;padding:12px 12px 8px}.prod-col-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}.prod-col-name{font-weight:700;font-size:13px;letter-spacing:-.005em}.prod-col-count{font-size:11.5px;font-weight:700;color:var(--prod-ink-3);background:var(--prod-surface);padding:1px 8px;border-radius:999px;margin-left:auto;font-variant-numeric:tabular-nums}.prod-col-body{padding:4px 10px 12px;display:flex;flex-direction:column;gap:8px;min-height:60px}.prod-col-empty{margin:14px 4px;padding:14px 10px;text-align:center;font-size:12px;color:var(--prod-ink-3);border:1px dashed var(--prod-line-strong);border-radius:var(--prod-radius-sm)}.prod-col.is-target .prod-col-empty{color:var(--prod-ink);border-style:solid;border-color:var(--prod-ink);background:#0f11180a}.prod-card{position:relative;padding:11px 12px 10px;border-radius:14px;cursor:grab;user-select:none;-webkit-user-select:none;touch-action:none;background:var(--card-bg, #EEE);color:var(--card-fg, var(--prod-ink));border:1px solid var(--card-border, transparent);box-shadow:var(--prod-shadow);transition:transform .12s ease,box-shadow .12s ease,opacity .12s ease;display:flex;flex-direction:column;gap:3px}.prod-card:hover{transform:translateY(-1px);box-shadow:var(--prod-shadow-hover)}.prod-card.is-dragging{opacity:.3;cursor:grabbing}.prod-card.is-pending{opacity:.6}.prod-card.is-rush{box-shadow:0 0 0 2px #dc2626,var(--prod-shadow)}.prod-card.is-hold{opacity:.7}.prod-card-head{display:flex;align-items:center;gap:6px;margin-bottom:2px;flex-wrap:wrap}.prod-card-pill{font-size:9.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:2px 7px;border-radius:999px;background:#ffffff8c}.prod-card-priority{font-size:9.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:2px 7px;border-radius:999px}.prod-card-priority.rush{background:#dc2626;color:#fff}.prod-card-priority.hold{background:#ffffffb3;color:#92400e}.prod-card-reprint{font-size:9.5px;font-weight:800;padding:2px 6px;border-radius:999px;background:#ffffffbf;color:#7c2d12}.prod-card-customer{font-size:14.5px;font-weight:700;line-height:1.2;letter-spacing:-.01em}.prod-card-job{font-size:11px;font-weight:700;opacity:.65;letter-spacing:.04em}.prod-card-vehicle{font-size:11.5px;opacity:.78;margin-top:1px}.prod-card-material{font-size:11px;margin-top:4px;opacity:.85}.prod-card-foot{display:flex;align-items:center;gap:6px;margin-top:5px;font-size:11px;font-weight:600}.prod-card-sqft{opacity:.7}.prod-card-operator{margin-left:auto;opacity:.8;font-weight:600}.is-drag-ghost{position:fixed;pointer-events:none;z-index:9999;opacity:.92}.prod-card.t-full{--card-bg: linear-gradient(135deg, #FFB37A 0%, #FF6E8C 100%);--card-fg: white;--card-border: rgba(255, 255, 255, .2)}.prod-card.t-half{--card-bg: #DCEEFF;--card-fg: #1A4A85}.prod-card.t-threeq{--card-bg: #FDEDC8;--card-fg: #8A5A0A}.prod-card.t-quarter{--card-bg: #DEF7F4;--card-fg: #0E5C58}.prod-card.t-decal{--card-bg: #E9E0FA;--card-fg: #4A2F8A}.prod-card.t-removal{--card-bg: #D8EFDE;--card-fg: #1F6A3E}.prod-card.t-color-change{--card-bg: #FFD7E3;--card-fg: #8A1C4A}.prod-failed-rail{background:var(--prod-surface-2);border:1px solid var(--prod-line);border-radius:var(--prod-radius);padding:12px;min-height:280px}.prod-failed-head{display:flex;align-items:center;gap:8px;margin-bottom:10px}.prod-failed-title{font-weight:700;font-size:13px;color:#b91c1c}.prod-failed-count{font-size:11.5px;font-weight:700;color:#fff;background:#dc2626;padding:1px 8px;border-radius:999px;font-variant-numeric:tabular-nums}.prod-failed-empty{font-size:12px;color:var(--prod-ink-3);padding:14px 4px;text-align:center}.prod-failed-list{display:flex;flex-direction:column;gap:8px}.prod-drawer-backdrop{position:fixed;inset:0;background:#0f111852;z-index:60;animation:prod-fade-in .12s ease}@keyframes prod-fade-in{0%{opacity:0}to{opacity:1}}.prod-drawer{position:fixed;top:0;right:0;bottom:0;width:540px;max-width:100vw;background:var(--prod-surface);z-index:61;display:flex;flex-direction:column;box-shadow:-8px 0 24px #0f11182e;animation:prod-slide-in .18s ease}@keyframes prod-slide-in{0%{transform:translate(40px);opacity:0}to{transform:translate(0);opacity:1}}.prod-drawer-head{padding:14px 18px;border-bottom:1px solid var(--prod-line);display:flex;align-items:center;gap:10px}.prod-drawer-title{margin:0;font-size:17px;font-weight:700;letter-spacing:-.01em}.prod-drawer-subtitle{font-size:12px;color:var(--prod-ink-3)}.prod-drawer-close{margin-left:auto;background:transparent;border:1px solid var(--prod-line);color:var(--prod-ink-2);border-radius:8px;width:32px;height:32px;cursor:pointer;font-size:17px;line-height:1;font-weight:600}.prod-drawer-close:hover{background:var(--prod-surface-2)}.prod-drawer-body{flex:1;overflow-y:auto;padding:16px 18px 80px;display:flex;flex-direction:column;gap:14px}.prod-section{background:var(--prod-surface-2);border:1px solid var(--prod-line);border-radius:var(--prod-radius-sm);padding:12px 14px}.prod-section h3{margin:0 0 8px;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--prod-ink-2)}.prod-kv-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px}.prod-kv{display:flex;flex-direction:column}.prod-kv-label{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--prod-ink-3)}.prod-kv-val{font-size:13px;font-weight:600;margin-top:2px;word-wrap:break-word}.prod-timeline{display:flex;flex-direction:column;gap:6px}.prod-stage-row{display:grid;grid-template-columns:22px 1fr auto;align-items:center;gap:10px;padding:6px 8px;border-radius:8px;font-size:12.5px}.prod-stage-row.is-current{background:#0f11180f;font-weight:700}.prod-stage-row.is-done .prod-stage-dot{background:#1f8a5b}.prod-stage-row.is-failed .prod-stage-dot{background:#b91c1c}.prod-stage-dot{width:14px;height:14px;border-radius:50%;background:var(--prod-line-strong)}.prod-stage-meta{font-size:11px;color:var(--prod-ink-3);font-weight:500;font-variant-numeric:tabular-nums}.prod-row{display:flex;flex-direction:column;gap:5px}.prod-label{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--prod-ink-3)}.prod-input,.prod-select,.prod-textarea{width:100%;border:1px solid var(--prod-line-strong);background:var(--prod-surface);border-radius:8px;padding:8px 10px;font:inherit;font-size:13px;color:var(--prod-ink);box-sizing:border-box}.prod-textarea{min-height:60px;resize:vertical}.prod-input:focus,.prod-select:focus,.prod-textarea:focus{outline:none;border-color:var(--prod-ink);box-shadow:0 0 0 3px #0f11180f}.prod-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px}.prod-form-grid>.prod-row.full{grid-column:span 2}.prod-actions{display:flex;gap:8px;flex-wrap:wrap}.prod-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;background:var(--prod-accent);color:#fff;border:0;border-radius:8px;font:inherit;font-weight:700;font-size:12.5px;cursor:pointer}.prod-btn:hover{opacity:.92}.prod-btn:disabled{opacity:.4;cursor:not-allowed}.prod-btn-ghost{background:var(--prod-surface);color:var(--prod-ink);border:1px solid var(--prod-line-strong)}.prod-btn-danger{background:#dc2626;color:#fff}.prod-btn-warn{background:#fff;color:#92400e;border:1px solid #FCD34D}.prod-file-link{display:inline-flex;align-items:center;gap:4px;color:var(--prod-accent);text-decoration:underline;font-weight:600;word-break:break-all;font-size:12px}.prod-reprint-chain{display:flex;flex-direction:column;gap:6px}.prod-reprint-link{display:flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid var(--prod-line);border-radius:8px;background:var(--prod-surface);cursor:pointer;font-size:12px;font:inherit;text-align:left}.prod-reprint-link:hover{background:var(--prod-surface-2)}.prod-reprint-link strong{font-weight:700}.prod-reprint-link-meta{margin-left:auto;font-size:11px;color:var(--prod-ink-3)}.prod-modal-backdrop{position:fixed;inset:0;background:#0f111852;z-index:62;display:grid;place-items:center;padding:16px}.prod-modal{background:var(--prod-surface);border-radius:var(--prod-radius);width:min(560px,100%);max-height:90vh;display:flex;flex-direction:column;box-shadow:0 24px 48px #0f11183d}.prod-modal-head{padding:14px 18px;border-bottom:1px solid var(--prod-line);display:flex;align-items:center}.prod-modal-title{margin:0;font-size:16px;font-weight:700}.prod-modal-body{padding:16px 18px;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.prod-modal-foot{padding:12px 18px;border-top:1px solid var(--prod-line);display:flex;justify-content:flex-end;gap:8px}.pd-prod-recap-card{display:flex;flex-direction:column;gap:8px;padding:12px 14px}.pd-prod-recap-row{display:flex;align-items:center;gap:10px}.pd-prod-recap-row strong{font-weight:700}.pd-prod-stage-pill{font-size:10.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;padding:2px 8px;border-radius:999px;background:var(--prod-surface-2);color:var(--prod-ink)}.pd-prod-stage-pill[data-stage=ready_for_install]{background:#d8efe0;color:#1f6b4a}.pd-prod-stage-pill[data-stage=failed]{background:#fee2e2;color:#7c1414}.pd-prod-recap-empty{color:var(--prod-ink-3);font-size:12px;padding:4px 0}@media(max-width:1100px){.prod-board{grid-template-columns:repeat(3,minmax(220px,1fr));overflow-x:auto;gap:12px;scroll-snap-type:x mandatory}.prod-col{scroll-snap-align:start;min-width:220px}}@media(max-width:760px){.prod-drawer{width:100vw}.prod-modal{max-width:100vw}.prod-board{grid-template-columns:repeat(6,minmax(82vw,1fr))}.prod-col{min-width:82vw}}:root{--p-bg: #F4F5F8;--p-surface: #FFFFFF;--p-surface-2: #F5F5F6;--p-line: rgba(15, 17, 24, .08);--p-line-strong: rgba(15, 17, 24, .14);--p-ink: #0F1024;--p-ink-2: #4B5563;--p-ink-3: #9CA3AF;--p-ink-4: #C2C4CB;--p-accent: #0F1024;--p-radius: 16px;--p-radius-sm: 10px;--p-shadow-card: 0 1px 2px rgba(15, 17, 24, .04), 0 2px 8px rgba(15, 17, 24, .05);--p-shadow-card-hover: 0 4px 14px rgba(15, 17, 24, .1)}.projects-root{min-height:100vh;background:var(--p-bg);font-family:Inter Tight,-apple-system,BlinkMacSystemFont,Plus Jakarta Sans,system-ui,sans-serif;font-feature-settings:"cv11","ss01","ss03";font-size:13.5px;color:var(--p-ink);-webkit-font-smoothing:antialiased}.projects-main{max-width:1500px;margin:0 auto;padding:20px 22px 60px}.pp-head{display:flex;align-items:center;gap:16px;margin-bottom:16px}.pp-title{font-size:26px;font-weight:700;letter-spacing:-.02em;margin:0}.pp-head-right{margin-left:auto;display:flex;align-items:center;gap:10px}.pp-search{width:260px;border:1px solid var(--p-line-strong);background:var(--p-surface);border-radius:10px;padding:8px 12px;font:inherit;font-size:13px;color:var(--p-ink);box-sizing:border-box;transition:border-color .12s ease,box-shadow .12s ease}.pp-search:focus{outline:none;border-color:var(--p-ink);box-shadow:0 0 0 3px #0f11180f}.pp-search::placeholder{color:var(--p-ink-3)}.pp-new-btn{display:inline-flex;align-items:center;gap:4px;padding:8px 14px;background:var(--p-accent);color:#fff;text-decoration:none;border-radius:10px;font:inherit;font-weight:700;font-size:13px;transition:background .12s ease}.pp-new-btn:hover{background:#ed5e1f}.pp-view-toggle{display:inline-flex;background:var(--p-surface);border:1px solid var(--p-line);border-radius:10px;padding:3px}.pp-toggle-btn{appearance:none;border:0;background:transparent;padding:6px 14px;font:inherit;font-weight:600;font-size:12.5px;color:var(--p-ink-3);border-radius:7px;cursor:pointer;transition:all .12s ease}.pp-toggle-btn:hover{color:var(--p-ink)}.pp-toggle-btn.is-active{background:var(--p-accent);color:#fff}.pp-tabs{display:flex;gap:4px;padding:4px;background:var(--p-surface);border:1px solid var(--p-line);border-radius:12px;margin-bottom:16px;overflow-x:auto}.pp-tab{appearance:none;border:0;background:transparent;padding:7px 14px;font:inherit;font-weight:600;font-size:13px;color:var(--p-ink-3);border-radius:8px;cursor:pointer;display:inline-flex;align-items:center;gap:8px;white-space:nowrap;transition:all .12s ease}.pp-tab:hover{color:var(--p-ink)}.pp-tab.is-active{background:var(--p-accent);color:#fff}.pp-tab-count{background:#ffffff2e;color:inherit;font-weight:700;border-radius:999px;padding:1px 7px;font-size:11px;font-variant-numeric:tabular-nums}.pp-tab:not(.is-active) .pp-tab-count{background:var(--p-surface-2);color:var(--p-ink-3)}.pp-loading,.pp-error{background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-radius);padding:28px 24px;text-align:center;color:var(--p-ink-3);font-size:14px}.pp-error{color:#b91c1c;background:#fef2f2;border-color:#fecaca;text-align:left}.pp-error code{display:block;margin-top:8px;font-size:12px;background:#0000000a;padding:6px 8px;border-radius:6px}.pp-banner{display:flex;align-items:center;gap:12px;margin-bottom:12px;padding:10px 14px;background:#fef2f2;border:1px solid #FECACA;border-radius:10px;color:#b91c1c;font-size:13px}.pp-banner-close{appearance:none;border:0;background:transparent;color:#b91c1c;font-size:18px;line-height:1;width:24px;height:24px;cursor:pointer;border-radius:50%;margin-left:auto}.pp-banner-close:hover{background:#b91c1c1a}.pp-banner-action{appearance:none;border:1px solid #FCA5A5;background:#fff;color:#b91c1c;font:inherit;font-size:12px;font-weight:600;padding:5px 12px;border-radius:7px;cursor:pointer}.kb-board{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;align-items:start}.kb-board.has-focus .kb-col{min-width:0}.kb-board.has-focus .kb-col.is-focused{grid-column:span 2}.kb-col{display:flex;flex-direction:column;background:var(--p-surface-2);border:1px solid var(--p-line);border-radius:var(--p-radius);min-height:220px;transition:border-color .12s ease,background .12s ease}.kb-col.is-target{border-color:var(--p-ink);background:#0f111808}.kb-col-head{display:flex;align-items:center;gap:8px;padding:12px 14px 8px}.kb-col-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}.kb-col-name{font-weight:700;font-size:13px;letter-spacing:-.005em;color:var(--p-ink)}.kb-col-count{font-size:11.5px;font-weight:700;color:var(--p-ink-3);background:var(--p-surface);padding:1px 8px;border-radius:999px;margin-left:auto;font-variant-numeric:tabular-nums}.kb-col-body{padding:4px 10px 12px;display:flex;flex-direction:column;gap:8px;min-height:60px}.kb-col-empty{margin:14px 4px;padding:14px 10px;text-align:center;font-size:12px;color:var(--p-ink-3);border:1px dashed var(--p-line-strong);border-radius:var(--p-radius-sm)}.kb-col.is-target .kb-col-empty{color:var(--p-ink);border-style:solid;border-color:var(--p-ink);background:#0f11180a}.kb-card{position:relative;padding:12px 13px 11px;border-radius:14px;cursor:grab;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;touch-action:none;background:var(--card-bg, #EEE);color:var(--card-fg, var(--p-ink));border:1px solid var(--card-border, transparent);box-shadow:var(--p-shadow-card);transition:transform .12s ease,box-shadow .12s ease,opacity .12s ease;display:flex;flex-direction:column;gap:4px}.kb-card:hover{transform:translateY(-1px);box-shadow:var(--p-shadow-card-hover)}.kb-card.is-dragging{opacity:.3;cursor:grabbing}.kb-card.is-pending{opacity:.6}.kb-card-head{display:flex;align-items:center;gap:8px;margin-bottom:2px}.kb-card-wrap{font-size:9.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:2px 7px;border-radius:999px;background:#ffffff8c;color:var(--card-fg, var(--p-ink))}.kb-card-tentative{margin-left:auto;font-size:9px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#92400e;background:#ffffffb3;padding:1px 6px;border-radius:999px}.kb-card-customer{font-size:15px;font-weight:700;line-height:1.2;letter-spacing:-.01em;color:var(--card-fg, var(--p-ink))}.kb-card-vehicle{font-size:12px;color:var(--card-fg, var(--p-ink-2));opacity:.78;margin-top:1px}.kb-card-group{font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--card-fg, var(--p-ink));background:#ffffff80;padding:2px 7px;border-radius:999px;align-self:flex-start;margin-top:2px}.kb-card-substatus{font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--card-fg, var(--p-ink));opacity:.6;margin-top:2px}.kb-card-foot{display:flex;align-items:center;gap:8px;margin-top:6px;font-size:11.5px;color:var(--card-fg, var(--p-ink-2))}.kb-card-date{display:inline-flex;align-items:center;gap:4px;font-weight:600}.kb-card-date-icon{font-size:11px}.kb-card-avatar{margin-left:auto;position:relative;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:10px;font-weight:700;color:#fff}.kb-card-avatar-plus{position:absolute;right:-12px;bottom:-2px;background:#0f1118c7;color:#fff;font-size:9px;font-weight:700;padding:1px 5px;border-radius:999px}.kb-card-job{font-size:10.5px;font-weight:700;letter-spacing:.02em;color:var(--card-fg, var(--p-ink-3));opacity:.6;font-variant-numeric:tabular-nums}.kb-card.t-full{--card-bg: linear-gradient(135deg, #FFB37A 0%, #FF6E8C 100%);--card-fg: white;--card-border: rgba(255, 255, 255, .2)}.kb-card.t-half{--card-bg: #DCEEFF;--card-fg: #1A4A85}.kb-card.t-threeq{--card-bg: #FDEDC8;--card-fg: #8A5A0A}.kb-card.t-quarter{--card-bg: #DEF7F4;--card-fg: #0E5C58}.kb-card.t-decal{--card-bg: #E9E0FA;--card-fg: #4A2F8A}.kb-card.t-removal{--card-bg: #D8EFDE;--card-fg: #1F6A3E}.kb-card.t-color-change{--card-bg: #FFD7E3;--card-fg: #8A1C4A}.kb-card.is-drag-ghost{transform:rotate(-1.5deg);box-shadow:0 16px 36px #0f111838}.pl-table-wrap{background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-radius);overflow:hidden;box-shadow:var(--p-shadow-card)}.pl-table{width:100%;border-collapse:collapse;font-size:13px}.pl-table thead th{position:sticky;top:0;background:var(--p-surface-2);text-align:left;font-weight:700;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--p-ink-3);padding:10px 14px;border-bottom:1px solid var(--p-line)}.pl-th-sort{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.pl-th-sort:hover{color:var(--p-ink)}.pl-table td{padding:11px 14px;border-bottom:1px solid var(--p-line);vertical-align:middle}.pl-table tbody tr:last-child td{border-bottom:0}.pl-table tbody tr:hover{background:var(--p-surface-2)}.pl-row{cursor:pointer}.pl-row:focus{outline:2px solid var(--p-ink);outline-offset:-2px}.pl-job{font-weight:700;font-variant-numeric:tabular-nums;color:var(--p-ink)}.pl-customer{font-weight:700;color:var(--p-ink)}.pl-group{font-size:11px;color:var(--p-ink-3);margin-top:2px}.pl-vehicle{color:var(--p-ink-2)}.pl-substatus{font-size:12px;color:var(--p-ink-3);text-transform:lowercase}.pl-install{font-variant-numeric:tabular-nums;color:var(--p-ink-2);white-space:nowrap}.pl-tentative{margin-left:6px;font-size:9px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#92400e;background:#fef3c7;padding:1px 5px;border-radius:999px}.pl-pill{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:2px 8px;border-radius:999px;white-space:nowrap}.pl-pill.t-full{background:linear-gradient(95deg,#ffb37a,#ff6e8c);color:#fff}.pl-pill.t-half{background:#dceeff;color:#1a4a85}.pl-pill.t-threeq{background:#fdedc8;color:#8a5a0a}.pl-pill.t-quarter{background:#def7f4;color:#0e5c58}.pl-pill.t-decal{background:#e9e0fa;color:#4a2f8a}.pl-pill.t-removal{background:#d8efde;color:#1f6a3e}.pl-pill.t-color-change{background:#ffd7e3;color:#8a1c4a}.pl-stage-pill{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:2px 8px;border-radius:999px;white-space:nowrap}.pl-tech-plus{margin-left:4px;font-size:11px;color:var(--p-ink-3);font-weight:600}.pl-empty{text-align:center;color:var(--p-ink-3);padding:40px;font-size:13px}.pl-empty-inline{color:var(--p-ink-3);font-style:italic}@media(max-width:1100px){.kb-board{grid-template-columns:repeat(3,minmax(0,1fr))}.kb-board.has-focus .kb-col.is-focused{grid-column:span 1}}@media(max-width:720px){.kb-board{grid-template-columns:1fr}.pp-head{flex-wrap:wrap}.pp-head-right{margin-left:0;width:100%}.pp-search{flex:1;width:auto}}.pd-main{max-width:1380px;margin:0 auto;padding:20px 24px 80px}.pd-back{display:inline-flex;align-items:center;font-size:13px;font-weight:600;color:var(--p-ink-3);text-decoration:none;margin-bottom:12px;padding:6px 10px;border-radius:8px;transition:color .12s ease,background .12s ease}.pd-back:hover{color:var(--p-ink);background:#0f11180a}.pd-empty{font-size:13px;color:var(--p-ink-3);font-style:italic;margin:0}.pd-mono{font-family:ui-monospace,SF Mono,Menlo,monospace;letter-spacing:.02em;font-size:13px}.pd-dot{color:var(--p-ink-4)}.pd-pending-inline{color:var(--p-ink-4);font-style:italic;font-weight:500}.pd-tiny-avatar{width:20px;height:20px;border-radius:50%;display:inline-grid;place-items:center;font-size:9px;font-weight:700;color:#fff}.pd-group-banner{display:flex;align-items:center;gap:14px;padding:12px 18px;background:linear-gradient(95deg,#ff7a451f,#ff9a640a);border:1px solid rgba(255,122,69,.25);border-radius:var(--p-radius);margin-bottom:14px;font-size:13px;flex-wrap:wrap}.pd-gb-icon{width:28px;height:28px;border-radius:999px;background:var(--p-accent);display:grid;place-items:center;flex-shrink:0;font-size:13px;color:#fff}.pd-gb-text{display:inline-flex;align-items:baseline;gap:8px}.pd-gb-label{color:var(--p-ink-3)}.pd-gb-name{font-weight:700;color:var(--p-ink);text-decoration:none;border-bottom:1px dashed var(--p-ink-3)}.pd-gb-name:hover{border-bottom-color:var(--p-accent);color:var(--p-accent)}.pd-gb-sep{color:var(--p-ink-4)}.pd-gb-meta{color:var(--p-ink-2)}.pd-gb-chip{padding:2px 8px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.02em}.pd-gb-chip-neutral{color:var(--p-ink-3);background:#0f11180d;border:1px dashed var(--p-line-strong)}.pd-gb-view{margin-left:auto;padding:6px 14px;background:var(--p-surface);border:1px solid var(--p-line-strong);border-radius:999px;color:var(--p-ink-2);text-decoration:none;font-weight:600;font-size:12px}.pd-gb-view:hover{background:var(--p-accent);color:#fff;border-color:var(--p-accent)}.pd-hero{display:grid;grid-template-columns:80px minmax(0,1fr) auto;align-items:center;gap:20px;padding:22px 26px;background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-radius);box-shadow:var(--p-shadow-card);margin-bottom:16px}.pd-hero-avatar{width:80px;height:80px;border-radius:18px;display:grid;place-items:center;font-weight:700;font-size:28px;color:#fff;flex-shrink:0}.pd-hero-main{min-width:0}.pd-hero-row1{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:4px;font-size:13px;color:var(--p-ink-3)}.pd-hero-client-name{font-weight:700;font-size:13.5px;color:var(--p-ink-2);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .12s ease}.pd-hero-client-name:hover{border-bottom-color:var(--p-ink-2)}.pd-pill{display:inline-block;font-size:9.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:2px 8px;border-radius:999px}.pd-pill-business{background:#1d4ed81a;color:#1d4ed8}.pd-pill-consumer{background:#be185d1a;color:#be185d}.pd-pill-stage-days{background:#6d28d91a;color:#6d28d9}.pd-hero-row2{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:2px}.pd-hero-title{font-size:26px;font-weight:700;letter-spacing:-.02em;margin:0;line-height:1.1}.pd-hero-job{color:var(--p-ink-3);font-size:13px;font-weight:700;font-family:ui-monospace,SF Mono,Menlo,monospace}.pd-est-pill{display:inline-flex;align-items:center;gap:8px;padding:4px 10px;background:#e6873a1f;border:1px solid rgba(230,135,58,.35);border-radius:999px;font-size:11.5px;font-weight:600;color:#c5601a;text-decoration:none;cursor:pointer;font-family:inherit}.pd-est-pill:hover{background:#e6873a2e}.pd-est-pill-num{font-family:ui-monospace,SF Mono,Menlo,monospace}.pd-est-pill-amt{color:var(--p-ink);font-weight:700}.pd-est-pill-status{text-transform:uppercase;letter-spacing:.05em;font-size:9.5px;font-weight:800;color:var(--p-ink-3)}.pd-est-section{display:block;padding:18px 22px}.pd-est-section-status{margin-left:4px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.pd-est-money{display:flex;flex-direction:column;gap:6px;margin-top:10px}.pd-est-money-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:12.5px;color:var(--p-ink-2)}.pd-est-money-label{font-weight:500;color:var(--p-ink-3)}.pd-est-money-val{font-weight:700;color:var(--p-ink)}.pd-est-money-val--big{font-size:17px;color:#c5601a}.pd-est-paid{margin-left:6px;font-size:11px;font-weight:600;color:#1f8a5b}.pd-est-empty{display:flex;flex-direction:column;gap:10px;align-items:flex-start;margin-top:10px}.pd-est-empty p{margin:0;font-size:12.5px;color:var(--p-ink-3)}.pd-est-generate{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;font-size:13.5px;font-weight:600;color:#fff;background:#1f8a5b;border:1px solid #1f8a5b;border-radius:10px;cursor:pointer;font-family:inherit}.pd-est-generate:hover{background:#197048}.pd-est-generate:disabled{background:#9ea6a2;border-color:#9ea6a2;cursor:not-allowed}.pd-recap-card{position:relative;padding:14px 18px;background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-radius);display:grid;grid-template-columns:1fr;gap:10px;box-shadow:var(--p-shadow-card)}.pd-recap-card--active{border-left-width:3px;border-left-style:solid;padding-left:16px}.pd-recap-card--onboarding{border-left-color:#7c5cff}.pd-recap-card--production{border-left-color:#e6873a}.pd-recap-card--install{border-left-color:#d94f8e}.pd-stage-strip{display:flex;flex-wrap:wrap;align-items:center;gap:16px;padding:14px 18px;background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-radius);margin-bottom:16px;box-shadow:var(--p-shadow-card)}.pd-stage-nodes{display:flex;flex:1 1 auto;align-items:center;list-style:none;margin:0;padding:0;gap:0;min-width:0}.pd-stage-node{display:flex;align-items:center;gap:6px;flex:1 1 0;min-width:0}.pd-stage-node:last-child{flex:0 0 auto}.pd-stage-dot{width:18px;height:18px;border-radius:999px;display:grid;place-items:center;border:1.5px solid var(--p-line-strong);background:var(--p-surface);color:#fff;flex-shrink:0}.pd-stage-node.is-past .pd-stage-dot,.pd-stage-node.is-current .pd-stage-dot{background:var(--stage-accent, var(--p-line-strong));border-color:var(--stage-accent, var(--p-line-strong))}.pd-stage-node.is-current .pd-stage-dot{box-shadow:0 0 0 3px #0f11181a}.pd-stage-label{font-size:11.5px;font-weight:600;color:var(--p-ink-3);white-space:nowrap}.pd-stage-node.is-current .pd-stage-label{color:var(--p-ink);font-weight:700}.pd-stage-rail{flex:1;height:2px;background:var(--p-line);border-radius:2px;min-width:12px}.pd-stage-rail.is-past{background:var(--stage-accent, var(--p-line))}.pd-stage-meta{display:flex;align-items:baseline;gap:6px;font-size:12.5px;color:var(--p-ink-3);white-space:nowrap}.pd-stage-meta-days strong{color:var(--p-ink);font-weight:700}.pd-stage-meta-install{color:var(--p-ink-3)}.pd-next-action{display:flex;align-items:center;gap:18px;padding:14px 18px;background:var(--p-surface);border:1px solid var(--p-line);border-left:3px solid var(--p-ink);border-radius:var(--p-radius);margin-bottom:16px;box-shadow:var(--p-shadow-card);flex-wrap:wrap}.pd-na-body{flex:1 1 240px;min-width:0}.pd-na-title{margin:0 0 4px;font-size:16px;font-weight:700;color:var(--p-ink)}.pd-na-why{margin:0;font-size:12.5px;color:var(--p-ink-2)}.pd-na-actions{display:flex;gap:8px;flex-shrink:0}.pd-na-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 14px;font-size:13.5px;font-weight:600;border-radius:10px;border:1px solid var(--p-line-strong);background:var(--p-surface);color:var(--p-ink-2);cursor:pointer;font-family:inherit;text-decoration:none}.pd-na-btn:hover{background:var(--p-surface-2);color:var(--p-ink)}.pd-na-btn:disabled{opacity:.5;cursor:not-allowed}.pd-na-btn-primary{background:#0f1024;border-color:#0f1024;color:#fff}.pd-na-btn-primary:hover{background:#2a2c44;color:#fff}.pd-na-btn-primary:disabled{background:#6b7280;border-color:#6b7280}.pd-rail{display:flex;flex-direction:column;gap:12px}.pd-linkage{display:flex;flex-direction:column;gap:8px}.pd-linkage-chip{display:flex;align-items:center;gap:8px;padding:8px 10px;font-size:12.5px;font-weight:600;color:#c5601a;background:#e6873a1a;border:1px solid rgba(230,135,58,.3);border-radius:10px;cursor:pointer;font-family:inherit;text-decoration:none;text-align:left}.pd-linkage-chip:hover{background:#e6873a29}.pd-linkage-chip-soft{color:#4b5563;background:#0f11180a;border-color:#0f11181a}.pd-linkage-chip-soft:hover{background:#0f111814}.pd-linkage-num{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:11.5px;flex-shrink:0}.pd-linkage-status{font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--p-ink-3)}.pd-linkage-amt{margin-left:auto;font-size:13px;font-weight:700;color:var(--p-ink)}.pd-linkage-group-icon{color:#c5601a}.pd-linkage-generate{display:inline-flex;align-items:center;gap:6px;padding:9px 12px;font-size:12.5px;font-weight:600;color:#fff;background:#1f8a5b;border:1px solid #1f8a5b;border-radius:10px;cursor:pointer;font-family:inherit;text-align:left}.pd-linkage-generate:hover{background:#197048}.pd-linkage-generate:disabled{background:#9ea6a2;border-color:#9ea6a2;cursor:not-allowed}@media(max-width:900px){.pd-body{display:flex;flex-direction:column;gap:12px}.pd-col-right.pd-rail{order:-1;flex-direction:row;flex-wrap:wrap}.pd-rail>*{flex:1 1 240px;min-width:0}}@media(max-width:560px){.pd-col-right.pd-rail{flex-direction:column}.pd-stage-strip{padding:12px 14px;gap:10px}.pd-stage-meta{width:100%}.pd-next-action{flex-direction:column;align-items:stretch}.pd-na-actions{width:100%}.pd-na-btn{flex:1;justify-content:center}}.pd-hero-sub{font-size:12.5px;color:var(--p-ink-3);margin-top:4px;display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center}.pd-hero-contact{display:inline-flex;align-items:center;gap:6px;color:var(--p-ink-2)}.pd-hero-role{color:var(--p-ink-3)}.pd-hero-right{display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex-shrink:0}.pd-hero-actions{display:flex;gap:8px;align-items:center}.pd-hero-owner{font-size:11.5px;color:var(--p-ink-3)}.pd-btn{appearance:none;border:1px solid var(--p-line-strong);background:var(--p-surface);color:var(--p-ink-2);font:inherit;font-weight:600;font-size:12.5px;padding:9px 14px;border-radius:10px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:all .12s ease}.pd-btn:hover{background:var(--p-surface-2);border-color:var(--p-ink-3);color:var(--p-ink)}.pd-btn:disabled{opacity:.55;cursor:not-allowed}.pd-btn-icon{width:32px;padding:0;justify-content:center}.pd-btn-cta{background:var(--p-accent);border-color:var(--p-accent);color:#fff}.pd-btn-cta:hover{background:#ed5e1f;border-color:#ed5e1f;color:#fff}.pd-btn-cta:disabled{background:var(--p-accent);border-color:var(--p-accent);color:#fff;opacity:.55}.pd-portal-share{display:flex;flex-direction:column;align-items:flex-end;gap:8px;position:relative}.pd-portal-share-err{font-size:11.5px;color:#b91c1c;max-width:260px;text-align:right}.pd-portal-share-out{display:flex;flex-direction:column;gap:6px;padding:10px 12px;background:var(--p-surface);border:1px solid var(--p-line-strong);border-radius:var(--p-radius-sm);box-shadow:var(--p-shadow-card);width:min(320px,80vw)}.pd-portal-share-msg{font-size:12px;font-weight:600;color:#1f6b4a}.pd-portal-share-link{display:flex;align-items:center;gap:6px}.pd-portal-share-url{flex:1;min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;color:var(--p-ink-2);background:var(--p-surface-2);border:1px solid var(--p-line);border-radius:8px;padding:5px 8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pd-portal-share-copy{appearance:none;flex-shrink:0;display:inline-flex;align-items:center;gap:4px;font:inherit;font-weight:600;font-size:11.5px;color:var(--p-ink-2);background:var(--p-surface);border:1px solid var(--p-line-strong);border-radius:8px;padding:5px 9px;cursor:pointer;transition:all .12s ease}.pd-portal-share-copy:hover{background:var(--p-surface-2);color:var(--p-ink);border-color:var(--p-ink-3)}.pd-proof-upload{display:flex;flex-direction:column;align-items:flex-end;gap:8px;position:relative}.pd-proof-panel{display:flex;flex-direction:column;gap:10px;padding:12px 13px;background:var(--p-surface);border:1px solid var(--p-line-strong);border-radius:var(--p-radius-sm);box-shadow:var(--p-shadow-card);width:min(320px,82vw);text-align:left}.pd-proof-file input[type=file]{width:100%;font:inherit;font-size:12px;color:var(--p-ink-2)}.pd-proof-file input[type=file]::file-selector-button{font:inherit;font-weight:600;font-size:11.5px;color:var(--p-ink-2);background:var(--p-surface-2);border:1px solid var(--p-line-strong);border-radius:8px;padding:5px 10px;margin-right:9px;cursor:pointer;transition:all .12s ease}.pd-proof-file input[type=file]::file-selector-button:hover{border-color:var(--p-ink-3);color:var(--p-ink)}.pd-proof-toggle{display:inline-flex;background:var(--p-surface-2);border:1px solid var(--p-line);border-radius:9px;padding:2px;gap:2px}.pd-proof-seg{appearance:none;flex:1;font:inherit;font-weight:600;font-size:11.5px;color:var(--p-ink-3);background:transparent;border:0;border-radius:7px;padding:6px 8px;cursor:pointer;white-space:nowrap;transition:all .12s ease}.pd-proof-seg.is-active{background:var(--p-accent);color:#fff}.pd-proof-label-input{width:100%;font:inherit;font-size:12.5px;color:var(--p-ink);background:var(--p-surface);border:1px solid var(--p-line-strong);border-radius:8px;padding:7px 10px;outline:none;transition:border-color .12s ease}.pd-proof-label-input:focus{border-color:var(--p-ink-3)}.pd-proof-label-input::placeholder{color:var(--p-ink-3)}.pd-proof-submit{justify-content:center}.pd-proof-err{font-size:11.5px;color:#b91c1c;line-height:1.4}.pd-proof-ok{display:inline-flex;align-items:flex-start;gap:6px;font-size:12px;font-weight:600;color:#1f6b4a;line-height:1.4}.pd-proof-ok svg{flex-shrink:0;margin-top:1px}.pd-tabs{display:flex;gap:2px;padding:4px;background:var(--p-surface);border:1px solid var(--p-line);border-radius:12px;margin-bottom:16px;overflow-x:auto}.pd-tab{appearance:none;border:0;background:transparent;font:inherit;font-weight:600;font-size:13px;color:var(--p-ink-3);padding:8px 14px;border-radius:8px;cursor:pointer;display:inline-flex;align-items:center;gap:8px;white-space:nowrap;transition:all .12s ease;position:relative}.pd-tab:hover{color:var(--p-ink)}.pd-tab.is-active{background:var(--p-accent);color:#fff}.pd-tab-dot{width:7px;height:7px;border-radius:50%;background:#b91c1c}.pd-tab-count{font-size:11px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--p-ink-4)}.pd-tab.is-active .pd-tab-count{color:#fff;opacity:.65}.pd-tab-soon{font-size:9px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--p-ink-4);background:#0f11180f;padding:1px 6px;border-radius:999px}.pd-tab.is-active .pd-tab-soon{background:#ffffff2e;color:#fffc}.pd-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.pd-stats-2col{grid-template-columns:repeat(2,1fr)}.pd-stat{padding:14px 18px;background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-radius);box-shadow:var(--p-shadow-card)}.pd-stat-pending{background:repeating-linear-gradient(-45deg,var(--p-surface) 0 14px,var(--p-surface-2) 14px 16px)}.pd-stat-label{font-size:10.5px;text-transform:uppercase;letter-spacing:.1em;color:var(--p-ink-3);font-weight:700;margin-bottom:6px}.pd-stat-value{font-size:24px;font-weight:700;letter-spacing:-.01em;line-height:1.1;color:var(--p-ink)}.pd-stat-pending .pd-stat-value{color:var(--p-ink-4)}.pd-stat-value-sm{font-size:18px}.pd-stat-meta{font-size:11.5px;color:var(--p-ink-3);margin-top:4px}.pd-stat-pending-meta{color:var(--p-ink-4);font-style:italic;font-weight:500}.pd-body{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:16px}.pd-col-left,.pd-col-right{display:flex;flex-direction:column;gap:14px}.pd-card-soon{position:relative;overflow:hidden}.pd-card-soon-stripe{position:absolute;top:0;left:0;right:0;height:3px;background:repeating-linear-gradient(-45deg,var(--p-ink-4) 0 6px,transparent 6px 12px);opacity:.4}.pd-card-soon-badge{font-size:9.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:2px 8px;border-radius:999px;color:var(--p-ink-3);background:#0f11180f;border:1px dashed var(--p-line-strong);white-space:nowrap;margin-left:auto}.pd-veh-card{position:relative;padding:18px 22px;background:linear-gradient(135deg,#ff8a571a,#ffa56e08);border:1px solid rgba(255,138,87,.25);border-radius:var(--p-radius);display:grid;grid-template-columns:140px minmax(0,1fr);gap:22px;box-shadow:var(--p-shadow-card)}.pd-veh-empty{display:block;padding:22px}.pd-veh-img{height:90px;border-radius:var(--p-radius-sm);background:#ff8a571f;display:grid;place-items:center}.pd-veh-img svg{width:90px;height:auto}.pd-veh-main{min-width:0}.pd-veh-tags{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--p-ink-3);margin-bottom:4px;font-family:ui-monospace,SF Mono,Menlo,monospace}.pd-veh-tag-soon{display:inline-block;font-size:9.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:2px 8px;border-radius:999px;color:var(--p-ink-3);background:#0f11180f;border:1px dashed var(--p-line-strong);font-family:Inter Tight,sans-serif}.pd-veh-title{font-size:20px;font-weight:700;letter-spacing:-.01em;margin:0 0 2px;color:var(--p-ink)}.pd-veh-sub{font-size:11.5px;color:var(--p-ink-3);font-family:ui-monospace,SF Mono,Menlo,monospace}.pd-veh-kv-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px 20px;margin-top:12px}.pd-veh-kv-label{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--p-ink-3);font-weight:700;margin-bottom:2px}.pd-veh-kv-val{font-size:13px;font-weight:600;color:var(--p-ink)}.pd-veh-notes{grid-column:1 / -1}.pd-veh-notes-text{font-size:12.5px;color:var(--p-ink-2);font-weight:500;line-height:1.5}.pd-veh-actions{position:absolute;top:18px;right:22px}.pd-veh-action{background:var(--p-surface);border:1px solid var(--p-line-strong);color:var(--p-ink-2);font:inherit;font-size:11.5px;font-weight:600;padding:6px 12px;border-radius:999px;cursor:pointer}.pd-veh-action:disabled{opacity:.55;cursor:not-allowed}.pd-proof-card{display:flex;align-items:center;gap:16px;padding:14px 18px;background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-radius);box-shadow:var(--p-shadow-card)}.pd-proof-thumb{width:80px;height:60px;background:var(--p-surface-2);border:1px solid var(--p-line);border-radius:8px;display:grid;place-items:center;flex-shrink:0}.pd-proof-main{flex:1;min-width:0}.pd-proof-row1{display:flex;align-items:center;gap:8px;margin-bottom:4px}.pd-proof-name{font-size:14px;font-weight:700;color:var(--p-ink)}.pd-proof-sub{font-size:12.5px;color:var(--p-ink-3);line-height:1.5}.pd-activity-row{display:flex;align-items:center;gap:8px;padding:10px 16px;background:var(--p-surface-2);border:1px solid var(--p-line);border-radius:var(--p-radius-sm);font-size:12.5px;color:var(--p-ink-2)}.pd-activity-icon{color:var(--p-ink-4);font-size:11px}.pd-activity-row strong{color:var(--p-ink-2);font-weight:700}.pd-activity-time{color:var(--p-ink-3)}.pd-copilot-card{padding:18px 20px;background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-radius);box-shadow:var(--p-shadow-card)}.pd-copilot-head{display:flex;align-items:center;gap:10px;margin-bottom:10px}.pd-copilot-icon{width:28px;height:28px;border-radius:8px;background:linear-gradient(135deg,#6d28d9,#be185d);display:grid;place-items:center;color:#fff;font-size:14px}.pd-copilot-title{font-weight:700;font-size:14px;color:var(--p-ink)}.pd-copilot-empty{margin:0;font-size:13px;color:var(--p-ink-2);line-height:1.55}.pd-portal-card{padding:16px 18px;background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-radius);box-shadow:var(--p-shadow-card)}.pd-portal-row1{display:flex;align-items:center;gap:10px;margin-bottom:8px}.pd-portal-icon-box{width:28px;height:28px;background:var(--p-surface-2);border:1px solid var(--p-line);border-radius:8px;display:grid;place-items:center;color:var(--p-ink-2)}.pd-portal-title{font-weight:700;font-size:14px;color:var(--p-ink)}.pd-portal-url{display:block;background:var(--p-surface-2);border:1px solid var(--p-line);border-radius:8px;padding:8px 12px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:11px;margin:6px 0 10px}.pd-portal-soon-text{margin:0;font-size:12.5px;color:var(--p-ink-2);line-height:1.55}.pd-comms-card{padding:16px 18px;background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-radius);box-shadow:var(--p-shadow-card)}.pd-comms-head{display:flex;align-items:center;gap:10px;margin-bottom:10px}.pd-comms-title{font-weight:700;font-size:14px;color:var(--p-ink)}.pd-comms-channels-disabled{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.pd-comms-chan-stub{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;background:var(--p-surface-2);border:1px dashed var(--p-line-strong);border-radius:999px;font-size:11.5px;font-weight:600;color:var(--p-ink-4)}.pd-comms-soon-text{margin:0 0 12px;font-size:12.5px;color:var(--p-ink-2);line-height:1.55}.pd-comms-soon-stack{display:flex;flex-direction:column;gap:6px;padding-top:10px;border-top:1px solid var(--p-line)}.pd-comms-soon-item{display:flex;align-items:center;gap:10px;padding:8px 10px;background:var(--p-surface-2);border-radius:8px;font-size:12px;color:var(--p-ink-3)}.pd-comms-soon-icon{width:22px;height:22px;border-radius:6px;display:inline-grid;place-items:center;font-size:10px;color:#fff;font-weight:700;opacity:.55}.pd-icon-email{background:#1d4ed8}.pd-icon-voicemail{background:var(--p-accent)}.pd-icon-sms{background:#15803d}.pd-side-card{padding:16px 18px;background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-radius);box-shadow:var(--p-shadow-card)}.pd-side-title{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--p-ink-3);margin:0 0 12px;display:flex;align-items:baseline;gap:8px}.pd-side-count{background:var(--p-surface-2);color:var(--p-ink-2);font-weight:700;border-radius:999px;padding:1px 8px;font-size:11px}.pd-team-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.pd-team-row{display:flex;align-items:center;gap:10px;padding:8px 10px;background:var(--p-surface-2);border-radius:var(--p-radius-sm)}.pd-team-avatar{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:700;color:#fff;flex-shrink:0}.pd-team-name{font-size:13.5px;font-weight:600;color:var(--p-ink)}.pd-team-primary{font-size:9.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--p-accent);background:#ff7a451a;padding:1px 7px;border-radius:999px}.pd-team-share{margin-left:auto;font-size:11.5px;color:var(--p-ink-3);font-weight:600;font-variant-numeric:tabular-nums}.pd-side-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 18px}.pd-side-kv{display:flex;flex-direction:column;gap:3px}.pd-side-kv-wide{grid-column:1 / -1}.pd-side-kv-label{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--p-ink-3)}.pd-side-kv-val{font-size:13.5px;font-weight:600;color:var(--p-ink)}.pd-status-tentative{font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#92400e;background:#fef3c7;padding:2px 9px;border-radius:999px}.pd-status-confirmed{font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#065f46;background:#d1fae5;padding:2px 9px;border-radius:999px}.pd-tab-soon-panel{background:var(--p-surface);border:1px dashed var(--p-line-strong);border-radius:var(--p-radius);padding:40px 28px;text-align:center}.pd-tab-soon-title{font-size:18px;font-weight:700;color:var(--p-ink);margin-bottom:6px}.pd-tab-soon-sub{max-width:540px;margin:0 auto;font-size:13px;color:var(--p-ink-3);line-height:1.6}.pd-proofs{background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-radius);box-shadow:var(--p-shadow-card);padding:6px 18px}.pd-proof-list{list-style:none;margin:0;padding:0}.pd-proof-row{padding:16px 0;border-top:1px solid var(--p-line)}.pd-proof-row:first-child{border-top:0}.pd-proof-row-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pd-proof-ver{font-size:13px;font-weight:700;color:var(--p-ink)}.pd-proof-label{font-size:13px;color:var(--p-ink-2);min-width:0}.pd-proof-badge{font-size:10.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;padding:3px 9px;border-radius:999px;white-space:nowrap}.pd-proof-badge-await{color:#6b7280;background:#0f11180f}.pd-proof-badge-approved{color:#047857;background:#ecfdf5}.pd-proof-badge-changes{color:#b45309;background:#fffbeb}.pd-proof-decided{font-size:12px;color:var(--p-ink-3);font-variant-numeric:tabular-nums;white-space:nowrap}.pd-proof-open{margin-left:auto;display:inline-flex;align-items:center;gap:5px;font-size:12.5px;font-weight:600;color:var(--p-ink);text-decoration:none;padding:5px 9px;border-radius:var(--p-radius-sm);transition:background .12s ease;white-space:nowrap}.pd-proof-open:hover{background:#0f11180d}.pd-proof-note{margin:10px 0 0;font-size:13px;color:var(--p-ink-2);line-height:1.5;background:var(--p-surface-2);border-radius:var(--p-radius-sm);padding:10px 12px}.pd-proof-note-label{display:block;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--p-ink-3);margin-bottom:3px}@media(max-width:1100px){.pd-stats{grid-template-columns:repeat(2,1fr)}.pd-body{grid-template-columns:1fr}}@media(max-width:700px){.pd-main{padding:14px 14px 60px}.pd-hero{grid-template-columns:64px 1fr}.pd-hero-right{grid-column:1 / -1;align-items:stretch}.pd-hero-actions{flex-wrap:wrap}.pd-hero-avatar{width:64px;height:64px;font-size:22px}.pd-hero-title{font-size:22px}.pd-veh-card,.pd-veh-kv-row{grid-template-columns:1fr}.pd-veh-actions{position:static;margin-top:10px}.pd-group-banner{flex-wrap:wrap}}.kb-board-wrap{display:flex;flex-direction:column;min-height:0;flex:1}.kb-mobile-toolbar{display:none;align-items:center;gap:8px;padding:8px 12px;background:#fff;border-bottom:1px solid #ECEEF2;position:sticky;top:0;z-index:10}.kb-stage-dots{display:flex;gap:6px;flex:1;overflow-x:auto;scrollbar-width:none}.kb-stage-dots::-webkit-scrollbar{display:none}.kb-dot{appearance:none;background:#f4f5f8;border:0;font:inherit;font-size:11.5px;font-weight:600;color:#6b7280;padding:6px 10px;border-radius:7px;cursor:pointer;white-space:nowrap;flex-shrink:0;border-bottom:2px solid transparent}.kb-dot.is-on{background:#fff;color:#0f172a;border-bottom-color:var(--dot-color, #FF7A45)}.kb-dot-label{font-weight:inherit}.kb-zoom-btn{appearance:none;background:#f4f5f8;border:1px solid #ECEEF2;font:inherit;font-size:11.5px;font-weight:700;color:#344054;padding:6px 10px;border-radius:7px;cursor:pointer;display:inline-flex;align-items:center;gap:5px;flex-shrink:0}.kb-zoom-btn:hover{background:#fff;color:#0f172a}@media(max-width:759px){.kb-mobile-toolbar{display:flex}.kb-board{display:flex!important;flex-direction:row;grid-template-columns:none!important;align-items:stretch;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:12px;gap:12px}.kb-board::-webkit-scrollbar{display:none}.kb-col{scroll-snap-align:start;flex:0 0 calc((100vw - 36px - 12px * (var(--kb-zoom, 1) - 1)) / var(--kb-zoom, 1));min-width:0;max-width:none}.kb-card{touch-action:pan-x pan-y}.projects-root .page-head{padding:12px 14px;flex-direction:column;align-items:stretch;gap:8px}.projects-root .page-head h1{font-size:22px}.projects-root .page-head .actions{width:100%;display:flex;flex-wrap:nowrap;gap:8px;align-items:center}.projects-root .page-head .actions .btn,.projects-root .page-head .actions button{justify-content:center;white-space:nowrap}.projects-root .page-head .actions .pp-toggle{flex-shrink:0}.projects-root .pp-new-btn,.projects-root .page-head .actions>button.btn.primary{flex:1}.pl-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -14px;padding:0 14px}.pl-table{min-width:640px}}.pd-install-recap{margin-top:16px}.pd-veh-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.pd-veh-open{display:inline-flex;align-items:center;gap:4px;font-size:13px;font-weight:600;color:var(--accent, #FF6A2E);text-decoration:none;padding:4px 8px;border-radius:6px;transition:background .12s ease}.pd-veh-open:hover{background:#ff6a2e14}.pd-recap-body{display:flex;flex-direction:column;gap:18px;margin-top:14px}.pd-recap-status{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;background:#e6f4ea;border:1px solid #c8e6cc;border-radius:8px;font-size:13px;font-weight:600;color:#1f6b3a;align-self:flex-start}.pd-recap-times{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.pd-recap-time{background:var(--paper-2, #f5f3ee);border:1px solid var(--line, #e4e1d8);border-radius:10px;padding:10px 12px}.pd-recap-time-label{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3, #6e7090);font-weight:600}.pd-recap-time-val{font-size:18px;font-weight:700;margin-top:2px}.pd-recap-vin-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:4px}.pd-vin-match,.pd-vin-mismatch{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600}.pd-vin-match{background:#e6f4ea;color:#1f6b3a}.pd-vin-mismatch{background:#fdecea;color:#b3261e}.pd-recap-notes .pd-veh-notes-text{margin-top:4px;font-size:14px;color:var(--ink, #0f1024);white-space:pre-wrap}.pd-recap-photos{display:flex;flex-direction:column;gap:8px}.pd-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px}.pd-photo-thumb{position:relative;aspect-ratio:1;border:0;padding:0;border-radius:10px;overflow:hidden;cursor:pointer;background:var(--paper-2, #f5f3ee);transition:transform .12s ease,box-shadow .12s ease}.pd-photo-thumb:hover{transform:translateY(-1px);box-shadow:0 8px 20px #0f10241f}.pd-photo-thumb img{width:100%;height:100%;object-fit:cover;display:block}.pd-photo-skeleton{width:100%;height:100%;background:linear-gradient(90deg,#f0ede5,#faf8f3,#f0ede5);background-size:200% 100%;animation:pd-skel 1.4s ease-in-out infinite}@keyframes pd-skel{0%{background-position:200% 0}to{background-position:-200% 0}}.pd-photo-consent{position:absolute;top:6px;right:6px;background:var(--accent, #FF6A2E);color:#fff;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;line-height:1}.pd-photo-lightbox{position:fixed;inset:0;background:#0f1024eb;display:flex;align-items:center;justify-content:center;z-index:100;padding:20px;cursor:zoom-out}.pd-photo-lightbox img{max-width:100%;max-height:100%;border-radius:12px;box-shadow:0 24px 60px #00000080}@media(max-width:720px){.pd-recap-times{grid-template-columns:repeat(3,1fr);gap:6px}.pd-recap-time{padding:8px 10px}.pd-recap-time-val{font-size:16px}.pd-photo-grid{grid-template-columns:repeat(auto-fill,minmax(95px,1fr))}}.kb-move-backdrop{position:fixed;inset:0;z-index:1000;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;background:#0f111873;display:flex;align-items:flex-end;justify-content:center;animation:kb-move-fade .15s ease}@keyframes kb-move-fade{0%{opacity:0}to{opacity:1}}.kb-move-sheet{width:100%;max-width:480px;background:#fff;border-radius:18px 18px 0 0;padding:14px 14px calc(14px + env(safe-area-inset-bottom,0px));box-shadow:0 -10px 40px -12px #0f111866;animation:kb-move-up .2s ease}@keyframes kb-move-up{0%{transform:translateY(14px)}to{transform:translateY(0)}}@media(min-width:640px){.kb-move-backdrop{align-items:center}.kb-move-sheet{border-radius:16px}}.kb-move-head{padding:4px 8px 12px}.kb-move-title{font-size:16px;font-weight:700;letter-spacing:-.01em;color:var(--p-ink)}.kb-move-sub{font-size:12.5px;color:var(--p-ink-3);margin-top:2px}.kb-move-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.kb-move-row{appearance:none;width:100%;display:flex;align-items:center;gap:12px;padding:14px 12px;border:0;background:var(--p-surface-2);border-radius:12px;font:inherit;font-size:15px;font-weight:600;color:var(--p-ink);cursor:pointer;text-align:left}.kb-move-row:active{background:#eceef2}.kb-move-row.is-current{opacity:.5;cursor:default}.kb-move-dot{width:11px;height:11px;border-radius:50%;flex-shrink:0}.kb-move-label{flex:1}.kb-move-current{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--p-ink-3)}.kb-move-cancel{appearance:none;width:100%;margin-top:8px;padding:13px;border:1px solid var(--p-line);background:#fff;border-radius:12px;font:inherit;font-size:14px;font-weight:600;color:var(--p-ink-2);cursor:pointer}@media(max-width:759px){.kb-card{touch-action:pan-x pan-y}}.home-page{padding:22px 24px 60px;max-width:1200px;margin:0 auto}@media(max-width:560px){.home-page{padding:16px 14px 60px}}.home-header{margin-bottom:20px}.home-greeting{font-size:24px;font-weight:700;letter-spacing:-.015em;color:var(--p-ink);margin:0 0 4px}.home-date{font-size:13px;color:var(--p-ink-3)}@media(max-width:560px){.home-greeting{font-size:20px}}.home-stat-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:22px}@media(max-width:900px){.home-stat-row{grid-template-columns:repeat(2,minmax(0,1fr))}}.home-stat{position:relative;padding:16px 18px;background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-radius);box-shadow:var(--p-shadow-card);display:flex;flex-direction:column;gap:4px;min-width:0}.home-stat-label{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--p-ink-3)}.home-stat-value{font-size:28px;font-weight:700;letter-spacing:-.01em;color:var(--p-ink);line-height:1.1}.home-stat-sub{font-size:11.5px;color:var(--p-ink-3);display:flex;align-items:center;gap:6px}.home-stat-sub strong{color:var(--p-ink-2)}.home-stat-icon{position:absolute;top:14px;right:14px;color:var(--p-ink-4)}.home-stat.is-attention .home-stat-icon{color:#e6873a}.home-stat.is-attention{background:#e6873a0a;border-color:#e6873a40}.home-section{background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-radius);box-shadow:var(--p-shadow-card);margin-bottom:18px;overflow:hidden}.home-section-header{display:flex;align-items:center;gap:8px;padding:14px 18px;border-bottom:1px solid var(--p-line)}.home-section-title{flex:1;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--p-ink);margin:0}.home-section-link{font-size:12px;color:var(--p-ink-3);display:flex;align-items:center;gap:4px}.home-section-link:hover{color:var(--p-ink-2)}.home-section-body{padding:6px 8px}.home-section-empty{padding:24px 18px;text-align:center;font-size:13px;color:var(--p-ink-3)}.home-row{display:flex;align-items:center;gap:12px;padding:12px 10px;border-radius:var(--p-radius-sm);text-decoration:none;color:inherit;transition:background .12s}.home-row:hover{background:var(--p-surface-2)}.home-row-stripe{width:4px;height:36px;border-radius:4px;flex-shrink:0}.home-row-main{flex:1;min-width:0}.home-row-line1{display:flex;align-items:baseline;gap:8px;font-size:13.5px;font-weight:600;color:var(--p-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-row-job{font-size:11px;color:var(--p-ink-3);font-family:ui-monospace,SF Mono,Menlo,monospace;font-weight:500}.home-row-line2{font-size:11.5px;color:var(--p-ink-3);margin-top:2px}.home-row-aside{display:flex;flex-direction:column;align-items:flex-end;gap:2px;font-size:11px;color:var(--p-ink-3);flex-shrink:0}.home-row-aside-emph{font-size:13px;font-weight:700;color:var(--p-ink)}.home-row-arrow{color:var(--p-ink-4);flex-shrink:0}.home-stage-pill{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:3px 8px;border-radius:999px}.home-stage-pill[data-stage=onboarding]{background:#94a3b82e;color:#475569}.home-stage-pill[data-stage=design]{background:#7c5cff26;color:#6045d6}.home-stage-pill[data-stage=production]{background:#e6873a2e;color:#c5601a}.home-stage-pill[data-stage=install]{background:#1f8a5b2e;color:#1f8a5b}.home-stage-pill[data-stage=complete]{background:#0f111814;color:var(--p-ink-2)}.home-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:22px}@media(max-width:560px){.home-actions{grid-template-columns:1fr}}.home-action{display:flex;align-items:center;justify-content:center;gap:6px;padding:14px 18px;background:var(--p-surface);border:1.5px dashed var(--p-line-strong);border-radius:var(--p-radius-sm);font-size:13.5px;font-weight:600;color:var(--p-ink-2);text-decoration:none;transition:background .12s,color .12s,border-color .12s}.home-action:hover{background:var(--p-surface-2);color:var(--p-ink);border-color:var(--p-ink-3)}.home-loading{padding:40px;text-align:center;color:var(--p-ink-3)}.home-error{padding:12px 16px;background:#b91c1c14;border:1px solid rgba(185,28,28,.25);border-radius:var(--p-radius-sm);color:#b91c1c;font-size:13px;margin-bottom:16px}.tc-card{position:relative;padding:0;background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-radius);box-shadow:var(--p-shadow-card);overflow:hidden;box-sizing:border-box;max-width:100%}.tc-card *,.tc-card *:before,.tc-card *:after{box-sizing:border-box}.tc-header{display:flex;align-items:flex-start;gap:18px;padding:22px 24px 18px;background:linear-gradient(180deg,rgba(15,17,24,.02),transparent);border-bottom:1px solid var(--p-line);flex-wrap:wrap}.tc-header-main{flex:1 1 240px;min-width:0}@media(max-width:560px){.tc-header{padding:16px 14px 14px;gap:12px}.tc-header-meta{flex:1 1 100%;justify-content:flex-start}.tc-customer{font-size:18px}}.tc-header-tags{display:flex;align-items:center;gap:10px;margin-bottom:6px}.tc-wrap-pill{display:inline-block;font-size:9.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:999px;color:#fff;background:linear-gradient(135deg,#ff8a57,#ff5a8c)}.tc-job{font-size:11px;color:var(--p-ink-3);font-family:ui-monospace,SF Mono,Menlo,monospace;font-weight:600}.tc-customer{font-size:22px;font-weight:700;letter-spacing:-.01em;margin:0;color:var(--p-ink)}.tc-vehicle{font-size:12.5px;color:var(--p-ink-3);margin-top:2px}.tc-header-meta{display:flex;align-items:flex-start;gap:12px}.tc-due{display:flex;align-items:center;gap:10px;padding:10px 14px;background:linear-gradient(135deg,#ff8a571f,#ffa56e0a);border:1px solid rgba(255,138,87,.25);border-radius:var(--p-radius-sm)}.tc-due-text{display:flex;flex-direction:column}.tc-due-label{font-size:9.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--p-ink-3);font-weight:700}.tc-due-date{font-size:17px;font-weight:700;color:#c5601a;line-height:1.1}.tc-due-rel{font-size:11px;color:var(--p-ink-3)}.tc-status{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.tc-status-label{font-size:9.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--p-ink-3);font-weight:700}.tc-status-select{font-size:12px;font-weight:600;padding:6px 12px;border:1px solid var(--p-line-strong);border-radius:var(--p-radius-sm);background:var(--p-surface);color:var(--p-ink);cursor:pointer}.tc-close{width:32px;height:32px;display:grid;place-items:center;background:transparent;border:1px solid var(--p-line-strong);border-radius:var(--p-radius-sm);color:var(--p-ink-3);cursor:pointer}.tc-close:hover{color:var(--p-ink);background:var(--p-surface-2)}.tc-reprint-banner{padding:10px 24px;background:#ffb80014;border-bottom:1px solid rgba(255,184,0,.2);font-size:12.5px;color:#8a5a00;display:flex;align-items:center;gap:8px;cursor:pointer}.tc-reprint-banner:hover{background:#ffb8001f}.tc-reprint-chain{padding:10px 24px 14px;background:#ffb8000a;border-bottom:1px solid rgba(255,184,0,.15);font-size:12px;color:var(--p-ink-2)}.tc-reprint-chain-item{padding:4px 0}.tc-reprint-chain-item.is-current{font-weight:700;color:var(--p-ink)}.tc-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:26px;padding:22px 24px}@media(max-width:900px){.tc-body{grid-template-columns:1fr;gap:16px}}@media(max-width:560px){.tc-body{padding:16px 14px;gap:14px}.tc-field-pair{grid-template-columns:1fr;gap:10px}.tc-input,.tc-select,.tc-check-form-input,.tc-files-name,.tc-files-length-input{font-size:16px}}.tc-block{display:flex;flex-direction:column;gap:10px;margin-bottom:22px}.tc-block-label{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#c5601a}.tc-block-label-spacer{flex:1}.tc-block-label-aux{font-size:10.5px;color:var(--p-ink-3);font-weight:600;text-transform:none;letter-spacing:0}.tc-field{display:flex;flex-direction:column;gap:6px}.tc-field-label{font-size:11px;font-weight:600;color:var(--p-ink-2)}.tc-input,.tc-select{width:100%;font-size:13.5px;font-weight:500;padding:10px 12px;border:1px solid var(--p-line-strong);border-radius:var(--p-radius-sm);background:var(--p-surface);color:var(--p-ink);font-family:inherit}.tc-input:focus,.tc-select:focus{outline:2px solid rgba(230,135,58,.4);outline-offset:0;border-color:#e6873a}.tc-input.is-readonly{background:var(--p-surface-2);color:var(--p-ink-2);cursor:not-allowed}.tc-field-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tc-seg-group{display:flex;flex-wrap:wrap;gap:8px}.tc-seg-btn{flex:1 1 0;min-width:100px;font-size:13px;font-weight:600;padding:11px 12px;border:1.5px solid var(--p-line-strong);border-radius:var(--p-radius-sm);background:var(--p-surface);color:var(--p-ink-2);cursor:pointer;font-family:inherit;text-align:center;transition:background .12s,border-color .12s,color .12s;line-height:1.25;word-break:break-word}.tc-seg-btn:hover{background:var(--p-surface-2);color:var(--p-ink)}.tc-seg-btn.is-active{background:#e6873a26;border-color:#e6873a;color:#c5601a}.tc-seg-btn:disabled{opacity:.5;cursor:not-allowed}.tc-seg-empty{padding:10px 12px;font-size:12.5px;color:var(--p-ink-3);font-style:italic;background:var(--p-surface-2);border-radius:var(--p-radius-sm)}.tc-area-card{padding:14px 16px;background:var(--p-surface-2);border-radius:var(--p-radius-sm);display:flex;flex-direction:column;gap:8px}.tc-area-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:12.5px;color:var(--p-ink-2);flex-wrap:wrap}.tc-area-row>span:first-child{min-width:0}.tc-area-row strong{text-align:right;flex-shrink:0}.tc-area-row strong{color:var(--p-ink);font-weight:700}.tc-area-row.is-derived strong{color:#c5601a;font-size:14px}.tc-area-row-sublabel{font-size:10.5px;color:var(--p-ink-3);margin-left:4px;font-weight:500}.tc-check-row{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--p-line);border-radius:var(--p-radius-sm);background:var(--p-surface);cursor:pointer;transition:background .12s,border-color .12s}.tc-check-row:hover{background:var(--p-surface-2)}.tc-check-row.is-done{background:#1f8a5b0f;border-color:#1f8a5b59;cursor:default}.tc-check-row.is-done:hover{background:#1f8a5b14}.tc-check-box{width:22px;height:22px;border-radius:6px;border:1.5px solid var(--p-line-strong);background:var(--p-surface);display:grid;place-items:center;flex-shrink:0}.tc-check-row.is-done .tc-check-box{background:#1f8a5b;border-color:#1f8a5b;color:#fff}.tc-check-label{flex:1;font-size:13.5px;font-weight:600;color:var(--p-ink)}.tc-check-meta{font-size:11px;color:var(--p-ink-3);font-weight:500;margin-top:2px}.tc-check-pill{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:999px}.tc-check-pill.is-pending{background:#0f11180f;color:var(--p-ink-3)}.tc-check-pill.is-done{background:#1f8a5b2e;color:#1f8a5b}.tc-check-form{display:flex;gap:8px;align-items:center;padding:10px 14px;margin-top:-4px;background:#e6873a0f;border:1px solid rgba(230,135,58,.25);border-radius:var(--p-radius-sm)}.tc-check-form-input{width:90px;padding:6px 10px;font-size:13px;border:1px solid var(--p-line-strong);border-radius:6px}.tc-check-form-suffix{font-size:11.5px;color:var(--p-ink-3);font-weight:500}.tc-check-form-spacer{flex:1}.tc-btn-sm{font-size:12px;font-weight:600;padding:6px 12px;border-radius:6px;border:1px solid var(--p-line-strong);background:var(--p-surface);color:var(--p-ink-2);cursor:pointer}.tc-btn-sm:hover{background:var(--p-surface-2)}.tc-btn-sm.is-primary{background:#1f8a5b;border-color:#1f8a5b;color:#fff}.tc-btn-sm.is-primary:hover{background:#197048}.tc-files-table{display:flex;flex-direction:column;gap:4px}.tc-files-thead{display:grid;grid-template-columns:minmax(0,1fr) 110px 56px 32px;gap:10px;padding:0 10px 8px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--p-ink-3)}.tc-files-row{display:grid;grid-template-columns:minmax(0,1fr) 110px 56px 32px;gap:10px;align-items:center;padding:6px 10px;border-radius:var(--p-radius-sm);border:1px solid transparent}.tc-files-row:hover{background:var(--p-surface-2)}.tc-files-row.needs-cut{background:#e6873a0f;border-color:#e6873a40}.tc-files-name{font-size:13.5px;font-weight:500;color:var(--p-ink);padding:6px 8px;border:1px solid transparent;border-radius:6px;background:transparent;font-family:inherit}.tc-files-name:focus{outline:none;background:var(--p-surface);border-color:var(--p-line-strong)}.tc-files-length{display:flex;align-items:center;gap:4px}.tc-files-length-input{width:60px;font-size:13px;padding:6px 8px;border:1px solid var(--p-line-strong);border-radius:6px;text-align:right;background:var(--p-surface);color:var(--p-ink);font-family:inherit}.tc-files-length-suffix{font-size:11px;color:var(--p-ink-3);font-weight:500}.tc-files-cut{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;border:1px solid var(--p-line-strong);background:var(--p-surface);color:var(--p-ink-4);cursor:pointer}.tc-files-cut.is-active{background:#e6873a26;border-color:#e6873a80;color:#c5601a}.tc-files-del{display:grid;place-items:center;width:24px;height:24px;border-radius:6px;background:transparent;border:none;color:var(--p-ink-3);cursor:pointer}.tc-files-del:hover{color:#b91c1c;background:#b91c1c14}.tc-files-add{margin-top:8px;padding:14px;background:var(--p-surface);border:1.5px dashed var(--p-line-strong);border-radius:var(--p-radius-sm);color:var(--p-ink-3);font-size:13px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px}.tc-files-add:hover{color:var(--p-ink-2);border-color:var(--p-ink-3)}.tc-empty{padding:40px 24px;display:flex;flex-direction:column;align-items:center;gap:14px}.tc-empty p{color:var(--p-ink-2);font-size:13.5px;margin:0;text-align:center;max-width:380px}.tc-empty .tc-btn-primary{margin-top:4px}.tc-footer{display:flex;align-items:center;gap:12px;padding:14px 24px;background:var(--p-surface-2);border-top:1px solid var(--p-line);font-size:11.5px;color:var(--p-ink-3)}.tc-footer-meta{display:flex;align-items:center;gap:14px;flex:1;font-weight:500}.tc-footer-meta-item{display:flex;align-items:center;gap:4px}.tc-footer-actions{display:flex;align-items:center;gap:10px}.tc-btn{font-size:13.5px;font-weight:600;padding:9px 16px;border-radius:var(--p-radius-sm);cursor:pointer;display:flex;align-items:center;gap:6px;font-family:inherit;border:1px solid var(--p-line-strong);background:var(--p-surface);color:var(--p-ink)}.tc-btn:hover{background:var(--p-surface-2)}.tc-btn:disabled{opacity:.4;cursor:not-allowed}.tc-btn-primary{background:#1f8a5b;border-color:#1f8a5b;color:#fff}.tc-btn-primary:hover{background:#197048}.tc-btn-primary:disabled{background:#9ea6a2;border-color:#9ea6a2}.tc-btn-save{background:linear-gradient(135deg,#ff8a57,#ff5a8c);border-color:transparent;color:#fff}.tc-btn-save:hover{filter:brightness(1.05)}.tc-btn-save:disabled{background:var(--p-surface-2);color:var(--p-ink-3)}.tc-report-link{font-size:11.5px;color:var(--p-ink-3);background:transparent;border:none;cursor:pointer;display:flex;align-items:center;gap:4px;padding:4px 8px}.tc-report-link:hover{color:#b91c1c}.tc-report-form{padding:16px 24px;background:#b91c1c0a;border-top:1px solid rgba(185,28,28,.2)}.tc-report-form h4{margin:0 0 10px;font-size:13px;font-weight:700;color:#b91c1c}.tc-report-reasons{display:grid;grid-template-columns:repeat(3,1fr);gap:6px 12px;margin-bottom:10px}.tc-report-reason{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--p-ink-2);cursor:pointer}.tc-report-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:8px}.tc-combo-row{display:flex;align-items:center;gap:8px}.tc-combo-advanced-toggle{font-size:11px;color:var(--p-ink-3);background:transparent;border:none;cursor:pointer;text-decoration:underline;padding:4px 0}.tc-combo-advanced-toggle:hover{color:var(--p-ink-2)}.tc-loading{padding:24px;color:var(--p-ink-3);font-size:13px;text-align:center}.tc-error{padding:12px 16px;margin:16px 24px;background:#b91c1c14;border:1px solid rgba(185,28,28,.25);border-radius:var(--p-radius-sm);color:#b91c1c;font-size:12.5px}.pp-root{min-height:100vh;background:#f4f5f8;font-family:-apple-system,BlinkMacSystemFont,Inter Tight,Plus Jakarta Sans,system-ui,sans-serif;color:#0f172a}.pp-main{max-width:720px;margin:0 auto;padding:26px 18px 80px;display:flex;flex-direction:column;gap:18px}@media(min-width:640px){.pp-main{padding:38px 26px 80px;gap:22px}}.pp-loading{display:inline-flex;align-items:center;gap:10px;color:#6b7280;font-size:14px;padding:80px 0;justify-content:center}.pp-spin{animation:pp-spin 1s linear infinite}@keyframes pp-spin{to{transform:rotate(360deg)}}.pp-error{background:#fff;border:1px solid #ECEEF2;border-radius:14px;padding:28px;text-align:left}.pp-error h2{margin:0 0 8px;font-size:18px;font-weight:700}.pp-error p{font-size:13.5px;color:#6b7280;margin:0 0 10px;line-height:1.5}.pp-error-detail{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px;background:#f4f5f8;border-radius:6px;padding:8px 10px;color:#475569!important}.pp-error a{color:#ff7a45}.pp-hero{background:linear-gradient(135deg,#1a0f0a,#2a1a12 55%,#ff7a45 145%);color:#fff;border-radius:18px;padding:30px 28px;box-shadow:0 18px 40px -16px #0f172a59}@media(min-width:640px){.pp-hero{padding:40px 36px}}.pp-badge{display:inline-block;padding:4px 12px;background:#ffffff1f;border:1px solid rgba(255,255,255,.18);border-radius:999px;font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-bottom:14px}.pp-hero h1{margin:0 0 8px;font-size:28px;font-weight:700;letter-spacing:-.02em;line-height:1.1}@media(min-width:640px){.pp-hero h1{font-size:36px}}.pp-hero p{margin:0 0 22px;font-size:14.5px;color:#ffffffb8}.pp-meta{display:flex;gap:22px;flex-wrap:wrap}.pp-meta>div{display:flex;flex-direction:column;gap:2px}.pp-meta span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#ffffff8c;font-weight:600}.pp-meta b{font-size:13.5px;font-weight:600}.pp-banner{border-radius:12px;padding:14px 16px;font-size:13.5px;line-height:1.45;display:inline-flex;align-items:flex-start;gap:10px}.pp-banner-good{background:#ecfdf5;border:1px solid #BBF7D0;color:#15803d}.pp-banner-good svg{color:#15803d;flex-shrink:0;margin-top:2px}.pp-banner-warn{background:#fef3c7;border:1px solid #FCD34D;color:#92400e}.pp-invest{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:12px}@media(max-width:560px){.pp-invest{grid-template-columns:1fr}}.pp-card{background:#fff;border:1px solid #ECEEF2;border-radius:14px;padding:18px 20px;box-shadow:0 1px #0f172a0a}.pp-card.pp-total{background:linear-gradient(160deg,#1a0f0a,#2a1a12);color:#fff;border:0}.pp-card span{font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:#9ca3af}.pp-card.pp-total span{color:#fff9}.pp-val{font-size:28px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin-top:6px}.pp-lines{background:#fff;border:1px solid #ECEEF2;border-radius:16px;padding:24px;box-shadow:0 1px #0f172a0a}.pp-lines-h{display:flex;justify-content:space-between;font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#9ca3af;padding-bottom:12px;border-bottom:1.5px solid #ECEEF2}.pp-line{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid #F1F3F6}.pp-line:last-of-type{border-bottom:0}.pp-line b{display:block;font-size:14px;font-weight:600;color:#0f172a}.pp-line span{font-size:12px;color:#9ca3af}.pp-amt{font-size:14px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap;color:#0f172a}.pp-totals{margin-top:14px;display:flex;flex-direction:column;gap:2px}.pp-trow{display:flex;justify-content:space-between;font-size:13px;color:#6b7280;padding:2px 0}.pp-trow b{color:#0f172a;font-weight:600;font-variant-numeric:tabular-nums}.pp-grand{font-size:15px;padding-top:10px;margin-top:6px;border-top:1.5px solid #0F172A}.pp-grand b{font-size:22px}.pp-cta-card{background:#fff;border:1px solid #ECEEF2;border-radius:16px;padding:24px;box-shadow:0 1px #0f172a0a}.pp-cta-top h3{margin:0 0 6px;font-size:17px;font-weight:700}.pp-cta-top p{margin:0 0 18px;font-size:14px;color:#475569;line-height:1.5}.pp-cta-error{background:#fef2f2;border:1px solid #FECACA;color:#b91c1c;font-size:12.5px;padding:9px 12px;border-radius:9px;margin-bottom:12px}.pp-pay-btn{appearance:none;width:100%;background:linear-gradient(135deg,#ff7a45,#ff5c8a);color:#fff;border:0;font:inherit;font-weight:700;font-size:15px;padding:16px 18px;border-radius:12px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 12px 26px -10px #ff7a4599;transition:transform .12s ease,box-shadow .12s ease}.pp-pay-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 14px 30px -10px #ff7a45b3}.pp-pay-btn:disabled{opacity:.7;cursor:not-allowed}.pp-trust{margin-top:14px;font-size:11.5px;color:#9ca3af;display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%}.pp-cta-done{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:14px 0 8px;color:#15803d}.pp-cta-done svg{background:#d1fae5;padding:8px;border-radius:50%;width:44px;height:44px}.pp-cta-done h3{margin:0;font-size:18px;font-weight:700;color:#0f172a}.pp-cta-done p{margin:0;font-size:13.5px;color:#475569;max-width:380px;line-height:1.5}.pp-foot{margin-top:14px;font-size:12px;color:#9ca3af;text-align:center;line-height:1.7}.pp-foot a{color:#6b7280;text-decoration:none}.pp-foot a:hover{color:#ff7a45}.set-root{min-height:100vh;background:#f4f5f8;font-family:Inter Tight,-apple-system,BlinkMacSystemFont,Plus Jakarta Sans,system-ui,sans-serif;font-feature-settings:"cv11","ss01","ss03";font-size:13.5px;color:#0f1024;-webkit-font-smoothing:antialiased}.set-main{max-width:1280px;margin:0 auto;padding:20px 22px 60px}.set-head{display:flex;align-items:center;gap:12px;margin-bottom:4px}.set-title{font-size:26px;font-weight:700;letter-spacing:-.02em;margin:0}.set-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.01em;background:#0f11180f;color:#4b5563;border:1px solid rgba(15,17,24,.08)}.set-sub{color:#6b7280;font-size:13px;margin:0 0 18px}.set-denied{margin:80px auto 0;max-width:420px;text-align:center;padding:32px 28px;background:#fff;border:1px solid rgba(15,17,24,.08);border-radius:16px;box-shadow:0 1px 2px #0f11180a,0 2px 8px #0f11180d}.set-denied h2{margin:0 0 8px;font-size:18px}.set-denied p{margin:0;color:#6b7280;font-size:13px}.set-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:12px 14px;background:#fff;border:1px solid rgba(15,17,24,.08);border-radius:12px;margin-bottom:14px}.set-toolbar-label{font-size:12px;font-weight:600;color:#6b7280;margin-right:4px}.set-select,.set-input{border:1px solid rgba(15,17,24,.14);background:#fff;border-radius:8px;padding:6px 10px;font:inherit;font-size:12.5px;color:#0f1024;cursor:pointer}.set-input{cursor:text}.set-select:focus,.set-input:focus{outline:2px solid rgba(15,17,24,.4);outline-offset:1px}.set-chip{border:0;background:#0f11180d;font:inherit;font-size:12px;font-weight:600;color:#4b5563;padding:4px 10px;border-radius:6px;cursor:pointer;transition:background .1s ease,color .1s ease}.set-chip.is-on{background:#fff;color:#0f1024;box-shadow:0 1px 2px #0f11180f;border:1px solid rgba(15,17,24,.08)}.set-chip:hover{color:#0f1024}.set-reset{margin-left:auto;border:0;background:transparent;font:inherit;font-size:12px;font-weight:600;color:#6b7280;cursor:pointer;padding:4px 8px;border-radius:6px}.set-reset:hover{background:#0f11180d;color:#0f1024}.set-new-btn{margin-left:auto;border:0;background:#0f1024;color:#fff;font:inherit;font-size:13px;font-weight:600;padding:8px 14px;border-radius:9px;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.set-new-btn:hover{background:#1f2233}.set-error{background:#fef2f2;border:1px solid #FECACA;color:#b91c1c;padding:10px 14px;border-radius:10px;margin-bottom:12px;font-size:13px}.set-low-banner{background:#fff7ed;border:1px solid #FED7AA;color:#9a3412;padding:12px 16px;border-radius:12px;margin-bottom:14px;display:flex;gap:12px;align-items:flex-start}.set-low-banner-ico{flex-shrink:0;margin-top:1px}.set-low-banner-body{flex:1}.set-low-banner-title{font-weight:700;font-size:13px;margin:0 0 4px}.set-low-banner-list{margin:0;font-size:12.5px;color:#b45309}.set-low-banner-list li{padding:2px 0}.set-table-wrap{background:#fff;border:1px solid rgba(15,17,24,.08);border-radius:12px;overflow:hidden;box-shadow:0 1px 2px #0f11180a}.set-table{width:100%;border-collapse:collapse;font-size:13px}.set-table thead th{text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;background:#f9fafb;padding:10px 14px;border-bottom:1px solid rgba(15,17,24,.08);white-space:nowrap}.set-table tbody tr{cursor:pointer;transition:background .08s ease}.set-table tbody tr:hover{background:#f9fafb}.set-table tbody tr.is-low-row{background:#fffbeb}.set-table tbody tr.is-low-row:hover{background:#fef3c7}.set-table tbody td{padding:10px 14px;border-bottom:1px solid rgba(15,17,24,.05);vertical-align:top}.set-table tbody tr:last-child td{border-bottom:0}.set-name{font-weight:600}.set-meta{font-size:11.5px;color:#6b7280;margin-top:2px}.set-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,monospace;font-size:12px;color:#4b5563}.set-num{font-variant-numeric:tabular-nums}.set-empty{padding:60px 20px;text-align:center;color:#6b7280}.set-empty h3{margin:0 0 6px;font-size:16px;color:#0f1024}.status-pill{display:inline-flex;align-items:center;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.01em}.status-active{background:#22c55e1f;color:#15803d}.status-service{background:#3b82f61f;color:#1d4ed8}.status-retired,.status-discontinued{background:#0f111814;color:#4b5563}.status-low{background:#fed7aa;color:#9a3412}.set-type-pill{display:inline-flex;align-items:center;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:600;background:#0f11180f;color:#4b5563}.set-swatch{display:inline-block;width:12px;height:12px;border-radius:3px;border:1px solid rgba(15,17,24,.15);vertical-align:middle;margin-right:6px}.set-drawer-backdrop{position:fixed;inset:0;background:#0f111866;z-index:80;animation:set-fade .12s ease-out}.set-drawer{position:fixed;top:0;right:0;bottom:0;width:min(640px,100vw);background:#fff;z-index:81;display:flex;flex-direction:column;box-shadow:-10px 0 30px #0f111826;animation:set-slide-in .18s ease-out}@keyframes set-fade{0%{opacity:0}to{opacity:1}}@keyframes set-slide-in{0%{transform:translate(20px);opacity:0}to{transform:translate(0);opacity:1}}.set-drawer-head{padding:16px 20px;border-bottom:1px solid rgba(15,17,24,.08);display:flex;align-items:flex-start;gap:12px}.set-drawer-head-text{flex:1;min-width:0}.set-drawer-head-title{font-size:16px;font-weight:700;letter-spacing:-.01em;margin:0 0 4px}.set-drawer-head-sub{font-size:12.5px;color:#6b7280;margin:0}.set-drawer-close{border:0;background:transparent;color:#6b7280;cursor:pointer;padding:6px;border-radius:6px}.set-drawer-close:hover{background:#0f11180d;color:#0f1024}.set-drawer-body{flex:1;overflow:auto;padding:18px 20px;display:flex;flex-direction:column;gap:18px}.set-drawer-footer{padding:12px 20px;border-top:1px solid rgba(15,17,24,.08);display:flex;justify-content:flex-end;gap:8px;background:#fafafb}.set-btn{border:1px solid rgba(15,17,24,.14);background:#fff;font:inherit;font-size:13px;font-weight:600;color:#0f1024;padding:7px 14px;border-radius:9px;cursor:pointer}.set-btn:hover{background:#f9fafb}.set-btn.is-primary{background:#0f1024;color:#fff;border-color:#0f1024}.set-btn.is-primary:hover{background:#1f2233}.set-btn.is-danger{background:#fff;color:#b91c1c;border-color:#fecaca}.set-btn.is-danger:hover{background:#fef2f2}.set-btn:disabled{opacity:.5;cursor:not-allowed}.set-field{display:flex;flex-direction:column;gap:5px}.set-field-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#6b7280}.set-field-hint{font-size:11.5px;color:#9ca3af}.set-field-input,.set-field-select,.set-field-textarea{border:1px solid rgba(15,17,24,.14);background:#fff;border-radius:8px;padding:8px 11px;font:inherit;font-size:13px;color:#0f1024}.set-field-textarea{min-height:80px;resize:vertical}.set-field-input:focus,.set-field-select:focus,.set-field-textarea:focus{outline:2px solid rgba(15,17,24,.4);outline-offset:1px}.set-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.set-row-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.set-section{display:flex;flex-direction:column;gap:10px}.set-section-title{margin:0;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#6b7280}.set-cost-card{background:#fafafb;border:1px dashed rgba(15,17,24,.12);border-radius:10px;padding:12px 14px}.set-cost-card-hint{font-size:11px;color:#6b7280;margin:0 0 8px;font-style:italic}.set-svc-list{display:flex;flex-direction:column;gap:8px}.set-svc-entry{border:1px solid rgba(15,17,24,.08);background:#fff;border-radius:10px;padding:10px 12px}.set-svc-entry-head{display:flex;justify-content:space-between;gap:12px;font-size:12px;margin-bottom:4px}.set-svc-entry-date{font-weight:700;font-variant-numeric:tabular-nums;color:#0f1024}.set-svc-entry-tech{color:#6b7280}.set-svc-entry-note{font-size:13px;line-height:1.4}.set-svc-entry-cost{font-size:12px;color:#4b5563;margin-top:4px;font-variant-numeric:tabular-nums}.set-svc-form{background:#fafafb;border:1px solid rgba(15,17,24,.08);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:8px}.set-qty-adjuster{display:flex;align-items:center;gap:8px}.set-qty-input{width:110px}.set-qty-buttons{display:flex;gap:6px}.int-section-label{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;margin:6px 0 10px}.int-banner{display:flex;align-items:flex-start;gap:10px;padding:11px 14px;border-radius:11px;margin-bottom:14px;font-size:13px}.int-banner-ok{background:#22c55e1a;border:1px solid rgba(34,197,94,.3);color:#15803d}.int-banner-err{background:#fef2f2;border:1px solid #FECACA;color:#b91c1c}.int-banner-ico{flex-shrink:0;margin-top:1px}.int-banner-text{flex:1;line-height:1.4}.int-banner-dismiss{flex-shrink:0;border:0;background:transparent;color:inherit;opacity:.6;cursor:pointer;padding:2px;border-radius:5px}.int-banner-dismiss:hover{opacity:1;background:#0f11180f}.set-card{background:#fff;border:1px solid rgba(15,17,24,.08);border-radius:14px;padding:18px 20px;box-shadow:0 1px 2px #0f11180a,0 2px 8px #0f11180a}.int-card+.int-reconcile-cta{margin-top:14px}.int-card-head{display:flex;align-items:flex-start;gap:13px}.int-card-head-text{flex:1;min-width:0}.int-logo{flex-shrink:0;width:40px;height:40px;border-radius:11px;display:flex;align-items:center;justify-content:center}.int-logo-drive{background:#0f11180d;color:#0f1024;border:1px solid rgba(15,17,24,.08)}.int-card-title-row{display:flex;align-items:center;gap:9px}.int-card-title{font-size:16px;font-weight:700;letter-spacing:-.01em;margin:0}.int-card-sub{font-size:12.5px;color:#6b7280;line-height:1.45;margin:4px 0 0}.int-card-meta{font-size:11.5px;color:#9ca3af;margin:4px 0 0;font-variant-numeric:tabular-nums}.int-badge-ok{display:inline-flex;align-items:center;gap:4px;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:700;background:#22c55e1f;color:#15803d}.int-card-actions,.int-picker{margin-top:14px}.int-picker-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}.int-picker-crumbs{display:flex;align-items:center;flex-wrap:wrap;gap:1px;min-width:0}.int-picker-crumb-wrap{display:inline-flex;align-items:center}.int-picker-sep{color:#9ca3af;margin:0 1px;flex-shrink:0}.int-picker-crumb{background:none;border:0;padding:2px 5px;font:inherit;font-size:13px;font-weight:700;color:#6b7280;cursor:pointer;border-radius:6px}.int-picker-crumb:hover:not(:disabled){color:#0f1024;background:#0f11180d}.int-picker-crumb.is-current{color:#0f1024;cursor:default}.int-picker-crumb:disabled{cursor:default}.int-picker-use{white-space:nowrap}.int-picker-empty{font-size:12.5px;color:#9ca3af;padding:18px 4px;margin:0}.int-picker-list{list-style:none;margin:0;padding:0;border:1px solid rgba(15,17,24,.1);border-radius:11px;overflow:hidden auto;max-height:320px}.int-picker-row{display:flex;align-items:center;gap:8px;padding-right:10px}.int-picker-row+.int-picker-row{border-top:1px solid rgba(15,17,24,.06)}.int-picker-open{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:10px;padding:10px 12px;background:none;border:0;font:inherit;text-align:left;color:inherit;cursor:pointer}.int-picker-open:hover:not(:disabled){background:#0f11180a}.int-picker-ico{display:inline-flex;align-items:center;justify-content:center;color:#0f1024;flex-shrink:0}.int-picker-name{flex:1 1 auto;min-width:0;font-size:13px;font-weight:600;color:#0f1024;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.int-picker-chev{color:#9ca3af;flex-shrink:0}.int-picker-select{flex-shrink:0;padding:4px 12px;font:inherit;font-size:12px;font-weight:600;color:#0f1024;background:#fff;border:1px solid rgba(15,17,24,.18);border-radius:7px;cursor:pointer}.int-picker-select:hover:not(:disabled){background:#0f11180d}.int-picker-select:disabled{opacity:.55;cursor:default}.int-picker-hint{font-size:11.5px;color:#9ca3af;margin:9px 2px 0}.int-reconcile-cta{display:flex;align-items:center;gap:16px;margin-top:14px;padding:16px 20px;background:#fff;border:1px solid rgba(15,17,24,.08);border-radius:14px;box-shadow:0 1px 2px #0f11180a}.int-reconcile-cta-text{flex:1;min-width:0}.int-reconcile-cta-title{font-size:14px;font-weight:700;margin:0 0 3px}.int-reconcile-cta-sub{font-size:12.5px;color:#6b7280;line-height:1.45;margin:0}.int-wiz{margin-top:16px;background:#fff;border:1px solid rgba(15,17,24,.1);border-radius:16px;box-shadow:0 2px 6px #0f11180f,0 8px 28px #0f111814;overflow:hidden}.int-wiz-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 20px 14px;border-bottom:1px solid rgba(15,17,24,.07)}.int-wiz-title{font-size:17px;font-weight:700;letter-spacing:-.01em;margin:0 0 4px}.int-wiz-sub{font-size:12.5px;color:#6b7280;line-height:1.45;margin:0;max-width:560px}.int-wiz .int-banner,.int-wiz .set-error,.int-wiz .set-empty,.int-wiz-loading{margin:14px 20px 0}.int-wiz-loading{display:flex;align-items:center;gap:9px;padding:32px 20px;color:#6b7280;font-size:13px}.int-spin{animation:int-spin .9s linear infinite;color:#6b7280}@keyframes int-spin{to{transform:rotate(360deg)}}.int-bucket{padding:16px 20px 4px;border-top:1px solid rgba(15,17,24,.05)}.int-bucket:first-of-type{border-top:0}.int-bucket-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.int-bucket-title{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;margin:0;color:#0f1024}.int-bucket-ico{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:6px;font-size:12px;font-weight:700}.int-ico-ok{background:#22c55e24;color:#15803d}.int-ico-warn{background:#fef3c7;color:#92400e}.int-ico-neutral{background:#0f111812;color:#4b5563}.int-bucket-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:18px;padding:0 6px;border-radius:999px;background:#0f11180f;color:#4b5563;font-size:11px;font-weight:700;font-variant-numeric:tabular-nums}.int-table{width:100%;border-collapse:collapse;font-size:13px}.int-table tbody td{padding:9px 0;border-bottom:1px solid rgba(15,17,24,.05);vertical-align:middle}.int-table tbody tr:last-child td{border-bottom:0}.int-table tbody tr.is-decided{background:#22c55e0a}.int-folder-cell{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.int-folder-name{font-weight:600;color:#0f1024}.int-arrow{color:#9ca3af;font-weight:600}.int-client-name{color:#374151;font-weight:500}.int-muted{font-size:11.5px;color:#9ca3af;font-style:italic}.int-pick{min-width:200px;font-size:12.5px}.int-actions-cell{text-align:right;white-space:nowrap}.int-actions-cell>*+*{margin-left:8px}.int-btn-sm{padding:5px 11px;font-size:12px;display:inline-flex;align-items:center;gap:5px}.int-link-btn{border:0;background:transparent;font:inherit;font-size:12px;font-weight:600;color:#6b7280;cursor:pointer;padding:4px 6px;border-radius:6px}.int-link-btn:hover{background:#0f11180d;color:#0f1024}.int-decided-tag{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:700;color:#15803d}.int-skipped-tag{font-size:12px;font-weight:600;color:#9ca3af}.int-wiz-footer{display:flex;justify-content:flex-end;gap:8px;padding:14px 20px;border-top:1px solid rgba(15,17,24,.07);background:#fafafb;margin-top:12px}@media(max-width:640px){.int-table tbody tr{display:flex;flex-direction:column;gap:8px;padding:10px 0}.int-table tbody td{padding:0;border-bottom:0}.int-table tbody tr:not(:last-child){border-bottom:1px solid rgba(15,17,24,.05)}.int-actions-cell{text-align:left}.int-actions-cell>*+*{margin-left:0;margin-right:8px}.int-reconcile-cta{flex-direction:column;align-items:flex-start}}.mat-supplier-pill{display:inline-flex;align-items:center;padding:1px 7px;border-radius:4px;font-size:11px;font-weight:600;background:#0f11180d;color:#4b5563}.mat-color{display:inline-flex;align-items:center}.mat-color-name{font-size:12.5px}.mat-no-color{color:#9ca3af;font-style:italic;font-size:12px}.mat-qty-cell{font-variant-numeric:tabular-nums}.mat-qty-rolls{font-size:11px;color:#6b7280;margin-top:2px}:root{--font-sans: "Inter Tight", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-tabular: "Inter Tight", ui-monospace, SFMono-Regular, monospace;--font-feature-settings: "cv11", "ss01", "ss03";--text-base: 13.5px;--text-sm: 12px;--text-xs: 11px;--text-md: 15px;--text-lg: 18px;--text-xl: 22px;--text-2xl: 26px;--text-3xl: 36px;--radius-card: 16px;--radius-btn: 12px;--radius-pill: 999px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-8: 48px}html[data-theme=light],html:not([data-theme]){--bg: #f7f7f8;--bg-elev: #ffffff;--surface-2: #f5f5f6;--line: rgba(0, 0, 0, .07);--line-strong: rgba(0, 0, 0, .12);--text: #0f1024;--text-dim: #4b5563;--text-mute: #9ca3af;--primary: #0f1024;--primary-fg: #ffffff;--shadow-card: 0 1px 2px rgba(15, 17, 24, .03), 0 2px 8px rgba(15, 17, 24, .04);--shadow-lift: 0 2px 4px rgba(15, 17, 24, .06), 0 8px 24px rgba(15, 17, 24, .08);--stuck-border: rgba(220, 38, 38, .35);--stuck-shadow: 0 0 0 3px rgba(220, 38, 38, .08), 0 4px 14px rgba(220, 38, 38, .1)}html[data-theme=dark]{--bg: #0f1024;--bg-elev: #1a1b2e;--surface-2: #16172a;--line: rgba(255, 255, 255, .08);--line-strong: rgba(255, 255, 255, .14);--text: #f7f7f8;--text-dim: #b8bcc9;--text-mute: #6b7081;--primary: #f7f7f8;--primary-fg: #0f1024;--shadow-card: 0 1px 2px rgba(0, 0, 0, .3), 0 2px 8px rgba(0, 0, 0, .4);--shadow-lift: 0 4px 12px rgba(0, 0, 0, .5)}[data-accent=full]{--accent-bg: #ffe2d1;--accent-border: #f59a6c;--accent-text: #9a4413;--accent-solid: #ee7a47;--accent-grad: linear-gradient(135deg, #ffb588 0%, #ed5e8e 100%)}[data-accent=three-q]{--accent-bg: #fdedc8;--accent-border: #e9b964;--accent-text: #8a5a0a;--accent-solid: #d89a2a;--accent-grad: linear-gradient(135deg, #f8d27a 0%, #e9a23a 100%)}[data-accent=half]{--accent-bg: #dceeff;--accent-border: #7eb4ee;--accent-text: #1a4a85;--accent-solid: #3b86dc;--accent-grad: linear-gradient(135deg, #a8cdf7 0%, #5a9ae6 100%)}[data-accent=quarter]{--accent-bg: #def7f4;--accent-border: #5fc9bc;--accent-text: #145a52;--accent-solid: #0fb5a8;--accent-grad: linear-gradient(135deg, #9be0d6 0%, #2bbfae 100%)}[data-accent=decal]{--accent-bg: #e9e0fa;--accent-border: #b39bea;--accent-text: #4a2f8a;--accent-solid: #7c5cff;--accent-grad: linear-gradient(135deg, #c4b3f5 0%, #8d6fea 100%)}[data-accent=removal]{--accent-bg: #d8efde;--accent-border: #7dbf95;--accent-text: #1f6a3e;--accent-solid: #33a160;--accent-grad: linear-gradient(135deg, #a8dfba 0%, #5fb285 100%)}[data-accent=color-change]{--accent-bg: #ffd7e3;--accent-border: #ea83a8;--accent-text: #8a1c4a;--accent-solid: #d94f8e;--accent-grad: linear-gradient(135deg, #f5a9c4 0%, #ea6594 100%)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--text-base);font-feature-settings:var(--font-feature-settings);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}button{font-family:inherit;font-size:inherit;cursor:pointer}a{color:inherit;text-decoration:none}@media(max-width:560px){input,select,textarea{font-size:16px}}.tabular{font-variant-numeric:tabular-nums}
