.credential-panel[data-v-511f3383]{border-top:1px solid var(--line);color:var(--ink);margin:16px 0;padding:16px 0;font-size:13px}.credential-panel h3[data-v-511f3383]{margin:0 0 8px;font-size:15px}.form-grid[data-v-511f3383]{border-bottom:1px solid var(--line);grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:12px;margin:16px 0;padding-bottom:16px;display:grid}.credential-panel label[data-v-511f3383]{color:#475569;flex-direction:column;gap:6px;min-width:0;font-size:12.5px;display:flex}.credential-panel input[data-v-511f3383],.credential-panel select[data-v-511f3383]{background:#fff;border:1px solid #cbd5e1;border-radius:8px;width:100%;min-width:0;max-width:100%;padding:10px}.credential-panel button[data-v-511f3383]{place-self:end start;min-height:38px}.credential-versions[data-v-511f3383]{margin:14px 0 0;padding:0;list-style:none}.credential-versions li[data-v-511f3383]{border-bottom:1px solid var(--line);padding:12px 0}.credential-versions span[data-v-511f3383]{color:var(--muted);margin:5px 0;font-size:12px;display:block}.credential-panel p[data-v-511f3383]{overflow-wrap:anywhere;line-height:1.65}.credential-panel input[type=file][data-v-511f3383]{padding:8px;font-size:12px}@media (width<=480px){.credential-panel[data-v-511f3383]{padding:12px 0}.form-grid[data-v-511f3383]{grid-template-columns:minmax(0,1fr)}}.brand-color-picker[data-v-71a90912]{min-width:0}.brand-color-options[data-v-71a90912]{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;display:grid}.brand-color-option[data-v-71a90912]{border:1px solid var(--line);color:#475569;white-space:nowrap;background:#fff;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:42px;padding:9px 8px;font-size:13px;display:flex}.brand-color-option[data-v-71a90912]:hover{border-color:#b7c4d4}.brand-color-option.selected[data-v-71a90912]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:600}.brand-color-dot[data-v-71a90912]{border-radius:50%;flex:none;width:18px;height:18px;box-shadow:inset 0 0 0 1px #0f172a1f}.brand-custom-color[data-v-71a90912]{color:#475569;cursor:pointer;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;font-size:13px;display:flex}.brand-custom-color input[data-v-71a90912]{cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;flex:none;width:42px;height:36px;padding:3px}.brand-custom-color small[data-v-71a90912]{color:var(--muted);font-size:12px;font-weight:400}.brand-color-advanced[data-v-71a90912]{color:var(--muted);margin-top:10px;font-size:12px}.brand-color-advanced summary[data-v-71a90912]{cursor:pointer;padding:3px 0}.brand-color-advanced label[data-v-71a90912]{margin:10px 0 5px;display:block}.brand-color-advanced input[data-v-71a90912]{max-width:180px}:root{color:#1e293b;font-synthesis:none;--ui-accent:#3d5bd9;--ui-accent-hover:#2f49bf;--ui-accent-bg:#eef1fc;--ui-accent-rgb:61, 91, 217;--accent:var(--ui-accent);--accent-soft:var(--ui-accent-bg);--ink:#0f172a;--muted:#64748b;--line:#e2e8f0;--warn:#b45309;--warn-soft:#fef3c7;--danger:#b91c1c;--danger-soft:#fee2e2;--info:#1d4ed8;--info-soft:#dbeafe;--ok:#15803d;--ok-soft:#dcfce7;background:#f4f6f8;font-family:PingFang SC,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{background:#f4f6f8;margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.primary,.outline,.ghost,.link-button{white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:9px 16px;font-size:13px;font-weight:600;transition:all .16s;display:inline-flex}.primary{background:var(--accent);color:#fff;border:1px solid #0000}.primary:hover:not(:disabled){background:var(--ui-accent-hover);opacity:1}.outline{color:#334155;background:#fff;border:1px solid #cbd5e1}.outline:hover:not(:disabled){background:#f8fafc;border-color:#94a3b8}.ghost{border:1px solid var(--line);color:#475569;background:#fff}.ghost:hover:not(:disabled){color:var(--ink);background:#f1f5f9}.link-button{color:var(--accent);text-underline-offset:3px;background:0 0;border:0;padding:4px 2px;text-decoration:underline}.link-button:hover:not(:disabled){color:var(--ui-accent-hover)}.danger-button{color:var(--danger);background:#fff;border:1px solid #fecaca;border-radius:10px;padding:9px 16px;font-size:13px;font-weight:700}.danger-button:hover:not(:disabled){background:var(--danger-soft)}.boot{color:var(--muted);padding:48px;font-size:14px}.boot strong{color:var(--ink);margin-bottom:6px;font-size:16px;display:block}.state-panel{border:1px dashed var(--line);text-align:center;color:var(--muted);background:#fff;border-radius:14px;padding:26px}.state-panel strong{color:var(--ink);margin-bottom:6px;font-size:15px;display:block}.state-panel .state-actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:14px;display:flex}.state-panel.is-error{background:#fff7f7;border-style:solid;border-color:#fecaca}.loading-inline{color:var(--muted);align-items:center;gap:10px;font-size:13px;display:flex}.spinner{border:2px solid #cbd5e1;border-top-color:var(--accent);border-radius:50%;width:16px;height:16px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.shell{background:#f4f6f8;grid-template-columns:258px minmax(0,1fr);max-width:1680px;min-height:100vh;margin:auto;display:grid}.sidebar{border-right:1px solid var(--line);background:#fff;flex-direction:column;padding:22px 16px 18px;display:flex}.side-brand{border-bottom:1px solid #f1f5f9;align-items:center;gap:12px;padding:0 4px 18px;display:flex}.side-brand strong{color:var(--ink);font-size:15.5px;font-weight:800;display:block}.side-brand small{color:#94a3b8;margin-top:3px;font-size:11px;font-weight:600;display:block}.brand-emblem{background:var(--accent);border-radius:12px;justify-content:center;align-items:center;gap:2px;width:38px;height:38px;display:inline-flex}.brand-emblem i{background:#fff;border-radius:2px;width:4px;display:block}.brand-emblem i:first-child{height:12px}.brand-emblem i:nth-child(2){height:20px}.brand-emblem i:nth-child(3){height:15px}.side-label{color:#94a3b8;letter-spacing:1.1px;margin:20px 10px 8px;font-size:11px;font-weight:800}.sidebar nav{gap:4px;display:grid}.sidebar nav button{text-align:left;color:#475569;background:0 0;border:0;border-radius:10px;align-items:center;gap:11px;min-height:42px;padding:0 13px;font-size:13.5px;font-weight:650;transition:all .15s;display:flex}.sidebar nav button span:first-child{text-align:center;width:18px;font-size:15px}.sidebar nav button:hover{color:var(--ink);background:#f1f5f9}.sidebar nav button.active{background:var(--accent-soft);color:var(--accent);font-weight:800}.sidebar nav button .nav-count{background:var(--warn-soft);color:var(--warn);border-radius:999px;margin-left:auto;padding:1px 7px;font-size:11px;font-weight:800}.sidebar nav button.active .nav-count{background:#fff}.demo-card{border-top:1px solid var(--line);background:#fff;margin-top:auto;padding:14px 4px 0}.demo-card strong{color:var(--muted);font-size:12px;font-weight:600;display:block}.demo-card p{color:var(--muted);margin:6px 0 10px;font-size:12px;line-height:1.65}.demo-card .demo-actions{flex-wrap:wrap;gap:6px;display:flex}.demo-card button{padding:6px 10px;font-size:11.5px}.side-foot{color:#94a3b8;border-top:1px solid #f1f5f9;justify-content:space-between;align-items:center;margin-top:12px;padding-top:12px;font-size:11.5px;display:flex}.main{min-width:0;padding:26px 30px 60px}.top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px;display:flex}.top h1{color:var(--ink);letter-spacing:-.3px;margin:6px 0;font-size:24px}.top p{color:var(--muted);max-width:780px;margin:0;font-size:13px;line-height:1.6}.top-actions{flex-wrap:wrap;gap:8px;display:flex}.eyebrow{color:var(--muted);letter-spacing:.2px;font-size:11.5px;font-weight:600;display:inline-block}.notice{border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 14px;padding:11px 14px;font-size:13px;display:flex}.notice.success{background:var(--ok-soft);color:#14532d;border:1px solid #bbf7d0}.notice.error{color:var(--danger);background:#fff7f7;border:1px solid #fecaca}.notice.demo{color:#92400e;background:#fffbeb;border:1px solid #fde68a}.notice button{margin-left:auto}.card{border:1px solid var(--line);background:#fff;border-radius:14px;padding:20px}.card+.card{margin-top:16px}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;display:flex}.card-head h2{color:var(--ink);margin:5px 0 4px;font-size:17px}.card-head h3{color:var(--ink);margin:5px 0 4px;font-size:15px}.card-head p{color:var(--muted);max-width:620px;margin:0;font-size:12.5px;line-height:1.55}.card-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.stats{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin-bottom:16px;display:grid}.stats>div{border:1px solid var(--line);background:#fff;border-radius:14px;padding:15px 16px}.stats span{color:var(--muted);font-size:12px;font-weight:700}.stats strong{color:var(--ink);letter-spacing:-.5px;margin:6px 0 3px;font-size:26px;display:block}.stats small{color:#94a3b8;font-size:11.5px}.buckets{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:14px;display:grid}.bucket{border:1px solid var(--line);background:#fff;border-radius:14px;flex-direction:column;padding:16px;display:flex}.bucket header{align-items:baseline;gap:8px;margin-bottom:4px;display:flex}.bucket header h3{color:var(--ink);margin:0;font-size:14.5px}.bucket header .count{color:#475569;background:#f1f5f9;border-radius:999px;margin-left:auto;padding:2px 9px;font-size:12px;font-weight:800}.bucket[data-tone=warn] header .count{background:var(--warn-soft);color:var(--warn)}.bucket[data-tone=danger] header .count{background:var(--danger-soft);color:var(--danger)}.bucket[data-tone=info] header .count{background:var(--info-soft);color:var(--info)}.bucket[data-tone=ok] header .count{background:var(--ok-soft);color:var(--ok)}.bucket>p{color:var(--muted);margin:0 0 12px;font-size:12px;line-height:1.5}.bucket ul{grid-template-columns:minmax(0,1fr);gap:6px;margin:0;padding:0;list-style:none;display:grid}.bucket-empty{color:#94a3b8;border:1px dashed var(--line);text-align:center;border-radius:10px;padding:14px;font-size:12.5px}.bucket-all-clear{border-top:1px solid var(--line);padding:18px 0 2px}.all-clear-badge{color:#fff;background:#22c55e;border-radius:999px;margin-bottom:8px;padding:2px 10px;font-size:11px;font-weight:800;display:inline-block}.bucket-all-clear strong{color:var(--ink);margin-bottom:4px;font-size:15px;display:block}.bucket-all-clear p{color:var(--muted);margin:0;font-size:12.5px;line-height:1.6}.follow-up .card-head,.node-status .card-head{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:7px 14px;margin-bottom:16px;display:grid}.follow-up .card-head>div:first-child,.node-status .card-head>div:first-child{display:contents}.follow-up .card-head h2,.node-status .card-head h2{grid-area:1/1;margin:0}.follow-up .card-head p,.node-status .card-head p{grid-area:2/1/auto/-1}.follow-up .card-actions,.node-status .card-actions{flex-wrap:nowrap;grid-area:1/2;justify-content:flex-end}.empty-buckets-details{border-top:1px dashed var(--line);margin-top:14px;padding-top:12px}.empty-buckets-summary{color:var(--muted);cursor:pointer;-webkit-user-select:none;user-select:none;font-size:12px;font-weight:600}.empty-buckets-summary:hover{color:var(--ink)}.empty-buckets-details .strip-tags{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.strip-tag{color:#475569;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;padding:4px 9px;font-size:11.5px;font-weight:600}.customer-groups{gap:14px;display:grid}.customer-group-item{border:1px solid var(--line);background:#fafbfc;border-radius:12px;padding:14px 16px;transition:border-color .15s}.customer-group-item:hover{border-color:#cbd5e1}.customer-group-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.customer-group-main{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.customer-name{color:var(--ink);font-size:15px;font-weight:750}.customer-meta{color:var(--muted);font-size:12px}.customer-note{color:var(--muted);margin:6px 0 10px;font-size:12px;line-height:1.5}.mini-button{border-radius:8px;padding:4px 10px;font-size:12px}.customer-project-list{grid-template-columns:minmax(0,1fr);gap:6px;margin:0;padding:0;list-style:none;display:grid}.project-row{border:1px solid var(--line);text-align:left;background:#fff;border-radius:11px;align-items:center;gap:12px;width:100%;padding:10px 12px;transition:all .15s;display:flex}.project-row:hover{background:#f8fafc;border-color:#bfdbfe}.project-row .row-main{flex:1;min-width:0}.project-row strong{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:13px;display:block;overflow:hidden}.project-row small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font-size:11.5px;display:block;overflow:hidden}.project-row .row-tail{text-align:right;color:var(--muted);font-size:11.5px}.badge{white-space:nowrap;border:1px solid #0000;border-radius:7px;align-items:center;gap:4px;padding:2px 8px;font-size:11.5px;font-weight:600;display:inline-flex}.badge.tone-neutral{color:#475569;background:#f1f5f9;border-color:#e2e8f0}.badge.tone-info{background:var(--info-soft);color:var(--info);border-color:#bfdbfe}.badge.tone-warn{background:var(--warn-soft);color:var(--warn);border-color:#fde68a}.badge.tone-danger{background:var(--danger-soft);color:var(--danger);border-color:#fecaca}.badge.tone-ok{background:var(--ok-soft);color:var(--ok);border-color:#bbf7d0}.badge.tone-accent{background:var(--accent-soft);color:var(--accent);border-color:#cbd3f5}.badge.tier{background:#fff;border-color:currentColor}.status-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;display:grid}.status-block{border:1px solid var(--line);background:#fcfdfe;border-radius:12px;padding:12px 14px}.status-block span{color:var(--muted);letter-spacing:.6px;font-size:11px;font-weight:800}.status-block strong{color:var(--ink);margin:6px 0 4px;font-size:14px;display:block}.status-block small{color:var(--muted);font-size:11.5px;line-height:1.5;display:block}.table{border-collapse:collapse;width:100%;font-size:13px}.table th{text-align:left;letter-spacing:.8px;color:#94a3b8;border-bottom:1px solid var(--line);white-space:nowrap;padding:8px 10px;font-size:11px;font-weight:800}.table td{vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:11px 10px}.table tr:last-child td{border-bottom:0}.table tr.is-void td{color:#94a3b8;text-decoration:line-through}.table .num{text-align:right;font-variant-numeric:tabular-nums}.table-wrap{overflow-x:auto}@media (width<=820px){.table-wrap .table-cards{display:block}.table-wrap .table-cards thead{display:none}.table-wrap .table-cards tbody{display:block}.table-wrap .table-cards tr{border:1px solid var(--line);background:#fff;border-radius:12px;margin-bottom:10px;padding:12px 14px;display:block}.table-wrap .table-cards td{text-align:left;border:0;grid-template-columns:74px minmax(0,1fr);align-items:center;gap:10px;padding:5px 0;display:grid}.table-wrap .table-cards td:before{content:attr(data-label);color:var(--muted);letter-spacing:.2px;font-size:11.5px;font-weight:700}.table-wrap .table-cards td[data-label=""]{padding-bottom:8px;display:block}.table-wrap .table-cards td[data-label=""]:before,.table-wrap .table-cards td.cell-action:before{content:none}.table-wrap .table-cards td.cell-title small{margin-top:4px;line-height:1.5;display:block}.table-wrap .table-cards td>.cell-value{gap:2px;display:grid}.table-wrap .table-cards td.cell-title{font-weight:700}.table-wrap .table-cards .tone-danger-text{color:var(--danger);margin-top:2px;font-weight:600;display:block}.table-wrap .table-cards td .badge{justify-self:start}.table-wrap .table-cards td.cell-action{padding-top:6px;display:block}.table-wrap .table-cards td.cell-action button{width:100%}.table-wrap .table-cards .num{text-align:left}}.toolbar{flex-wrap:wrap;align-items:flex-end;gap:10px;margin-bottom:14px;display:flex}.field{flex-direction:column;gap:5px;min-width:0;display:flex}.field>span,.field>label{color:#475569;letter-spacing:.3px;font-size:11.5px;font-weight:800}.field input,.field select,.field textarea,input[type=text],input[type=date],input[type=search],select,textarea{color:var(--ink);background:#fff;border:1px solid #cbd5e1;border-radius:9px;width:100%;padding:9px 11px;font-size:13px}.field textarea{resize:vertical;min-height:68px;line-height:1.55}.field input:disabled,.field select:disabled{color:#64748b;background:#f1f5f9}.field .field-error{color:var(--danger);font-size:11.5px;font-weight:700}.field .field-hint{color:#94a3b8;font-size:11.5px;line-height:1.5}.form-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;display:grid}.form-grid .span-2{grid-column:1/-1}fieldset{border:1px solid var(--line);border-radius:12px;margin:0 0 14px;padding:14px 16px 16px}legend{color:var(--accent);padding:0 6px;font-size:12px;font-weight:800}.radio-row{flex-wrap:wrap;gap:10px;display:flex}.radio-card{cursor:pointer;border:1px solid #cbd5e1;border-radius:10px;align-items:flex-start;gap:8px;max-width:340px;padding:10px 12px;font-size:12.5px;display:flex}.radio-card.selected{border-color:var(--accent);background:var(--accent-soft)}.radio-card input{margin-top:2px}.radio-card small{color:var(--muted);margin-top:3px;line-height:1.5;display:block}.showroom{grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr));gap:16px;display:grid}.template-card{border:1px solid var(--line);background:#fff;border-radius:16px;flex-direction:column;gap:12px;padding:18px;display:flex}.template-card .tpl-head{align-items:center;gap:12px;display:flex}.tpl-emblem{color:#fff;border-radius:13px;justify-content:center;align-items:center;width:44px;height:44px;font-size:20px;display:inline-flex}.template-card h3{color:var(--ink);margin:0;font-size:16.5px}.template-card .tpl-sub{color:var(--muted);margin-top:3px;font-size:12px}.tpl-tags{flex-wrap:wrap;gap:6px;display:flex}.tpl-scene{color:#475569;margin:0;font-size:12.5px;line-height:1.6}.tpl-meta{color:var(--muted);grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;font-size:12px;display:grid}.tpl-meta b{color:var(--ink);font-weight:700}.tpl-thumbs{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px;display:grid}.tpl-thumbs button{border:1px solid var(--line);background:#f8fafc;border-radius:10px;padding:0;overflow:hidden}.tpl-thumbs button:hover{border-color:var(--accent)}.tpl-thumbs img{object-fit:cover;object-position:top center;width:100%;height:116px;display:block}.tpl-thumbs small{color:var(--muted);text-align:center;padding:4px 5px;font-size:10.5px;display:block}.tpl-actions{flex-wrap:wrap;gap:8px;margin-top:auto;display:flex}.entry-list{gap:8px;display:grid}.entry{border:1px solid var(--line);border-radius:11px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.entry .entry-body{flex:1;min-width:0}.entry strong{color:var(--ink);font-size:12.5px;display:block}.id-chip{color:#334155;cursor:pointer;word-break:break-all;text-align:left;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;padding:1px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11.5px;line-height:1.5}.id-chip:hover{color:#0f172a;background:#e8edf3;border-color:#cbd5e1}code{color:#334155;word-break:break-all;background:#f1f5f9;border-radius:6px;padding:1px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11.5px}.entry code{color:#334155;word-break:break-all;background:#f1f5f9;border-radius:6px;margin-top:4px;padding:2px 6px;font-size:11.5px;display:inline-block}.entry small{color:var(--muted);margin-top:5px;font-size:11.5px;line-height:1.5;display:block}.entry.is-unconfigured{background:#fffdf5;border-color:#fde68a}.preview-strip{border:1px solid var(--line);background:#f8fafc;border-radius:12px;padding:14px}.preview-strip h4{color:var(--ink);margin:0 0 4px;font-size:13px}.preview-strip p{color:var(--muted);margin:0 0 10px;font-size:11.5px}.preview-strip .frames{gap:10px;padding-bottom:4px;display:flex;overflow-x:auto}.preview-strip img{border:1px solid var(--line);background:#fff;border-radius:10px;width:auto;height:330px}.checklist{gap:6px;display:grid}.check-item{border:1px solid var(--line);border-radius:10px;align-items:flex-start;gap:10px;padding:9px 11px;font-size:12.5px;display:flex}.check-item.done{background:#f7fdfa;border-color:#bbf7d0}.check-item input{margin-top:2px}.check-item .check-body{flex:1}.check-item .check-body strong{color:var(--ink);font-weight:600}.check-item.done .check-body strong{color:#64748b;text-decoration:line-through}.check-item .check-cat{color:var(--muted);background:#f1f5f9;border-radius:999px;margin-left:6px;padding:1px 8px;font-size:10.5px;font-weight:800}.check-group+.check-group{margin-top:14px}.modal-wrap{z-index:40;background:#0f172a73;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.drawer,.dialog{background:#fff;border-radius:16px;flex-direction:column;width:100%;max-height:92vh;display:flex;box-shadow:0 24px 60px #0f172a40}.drawer{max-width:940px}.dialog{max-width:620px}.dialog.dialog-wide{max-width:860px}.drawer header,.dialog header{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:flex-start;gap:14px;padding:18px 22px 14px;display:flex}.drawer header h2,.dialog header h2{color:var(--ink);margin:6px 0 3px;font-size:18px}.drawer header p,.dialog header p{color:var(--muted);margin:0;font-size:12.5px}.drawer .close,.dialog .close{color:#475569;background:#f1f5f9;border:0;border-radius:9px;flex:0 0 32px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:19px;line-height:1;display:inline-flex}.drawer .close:hover,.dialog .close:hover{background:#e2e8f0}.drawer-body,.dialog-body{padding:18px 22px;overflow-y:auto}.drawer footer,.dialog footer{border-top:1px solid #f1f5f9;flex-wrap:wrap;justify-content:flex-end;gap:10px;padding:14px 22px;display:flex}.drawer footer .left,.dialog footer .left{color:var(--muted);align-items:center;gap:10px;margin-right:auto;font-size:12px;display:flex}.steps{flex-wrap:wrap;gap:6px;margin-bottom:18px;display:flex}.steps li{color:#94a3b8;border:1px solid var(--line);border-radius:999px;align-items:center;gap:7px;padding:5px 12px;font-size:12px;font-weight:700;list-style:none;display:flex}.steps li .step-index{color:#64748b;background:#f1f5f9;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:10.5px;display:inline-flex}.steps li.active{color:var(--accent);background:var(--accent-soft);border-color:#bfdbfe}.steps li.active .step-index{background:var(--accent);color:#fff}.steps li.done{color:#475569}.steps li.done .step-index{background:var(--ok-soft);color:var(--ok)}.review-list{gap:8px;font-size:13px;display:grid}.review-list div{border-bottom:1px dashed var(--line);gap:12px;padding-bottom:8px;display:flex}.review-list dt{color:var(--muted);min-width:120px;font-size:12px}.review-list dd{color:var(--ink);margin:0;font-weight:600}.detail-grid{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);align-items:start;gap:20px;display:grid}.kv{grid-template-columns:118px minmax(0,1fr);gap:7px 12px;font-size:12.5px;display:grid}.kv dt{color:var(--muted)}.kv dd{color:var(--ink);word-break:break-word;margin:0}.timeline{gap:10px;margin:0;padding:0;list-style:none;display:grid}.timeline li{border-left:2px solid var(--line);color:#475569;padding:0 0 0 12px;font-size:12.5px}.timeline li strong{color:var(--ink);font-size:12.5px;display:block}.timeline li small{color:#94a3b8;font-size:11px}.brand-preview{border:1px solid var(--line);background:#fbfcfd;border-radius:12px;padding:18px}.brand-preview .bp-top{color:var(--ink);align-items:center;gap:12px;display:flex}.brand-preview .bp-top>div{overflow-wrap:anywhere;min-width:0}.brand-preview .bp-swatch{background:var(--store-accent);border-radius:12px;flex:none;width:44px;height:44px;box-shadow:inset 0 0 0 1px #0f172a14}.brand-preview .bp-top strong{font-size:17px;font-weight:650;line-height:1.45;display:block}.brand-preview .bp-top small{color:var(--muted);margin-top:3px;font-size:12.5px;line-height:1.5;display:block}.brand-preview .bp-body{border-top:1px solid var(--line);color:var(--muted);overflow-wrap:anywhere;margin-top:14px;padding-top:12px;font-size:12px}.project-detail .detail-grid .card-head .eyebrow{display:none}.project-detail .detail-grid .card-head h3{margin:0 0 7px;font-size:16px}.project-detail .entry-list{gap:0}.project-detail .entry{border:0;border-bottom:1px solid var(--line);border-radius:0;padding:16px 0}.project-detail .entry:first-child{padding-top:0}.project-detail .entry:last-child{border-bottom:0;padding-bottom:0}.project-detail .entry strong{font-size:13.5px;font-weight:600}.project-detail .entry small{font-size:12px;line-height:1.6}.project-detail .entry a{max-width:100%;color:var(--accent);overflow-wrap:anywhere;text-underline-offset:3px;margin-top:5px;font-size:13px;line-height:1.6;display:inline-block}.project-detail .field>label{letter-spacing:0;font-size:12px;font-weight:600}.project-detail .field .field-hint{color:var(--muted);font-size:12px;font-weight:400}.warn-box{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:11px;padding:11px 13px;font-size:12px;line-height:1.55}.warn-box strong{margin-bottom:3px;display:block}.info-box{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe;border-radius:11px;padding:11px 13px;font-size:12px;line-height:1.55}.info-box strong{margin-bottom:3px;display:block}.section-gap{margin-top:16px}@media (width<=1180px){.detail-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=900px){.shell{grid-template-columns:minmax(0,1fr)}.sidebar{border-right:0;border-bottom:1px solid var(--line);flex-direction:column;padding:14px 14px 12px}.side-brand{border-bottom:none;padding:0 0 10px}.side-label{margin:10px 4px 6px}.sidebar nav{-webkit-overflow-scrolling:touch;grid-auto-columns:max-content;grid-auto-flow:column;gap:6px;padding-bottom:4px;overflow-x:auto}.sidebar nav button{white-space:nowrap;min-height:38px;padding:0 12px}.demo-card,.side-foot{margin-top:10px}.main{padding:18px 14px 48px}.top{gap:12px}.top h1{font-size:20px}.top-actions{justify-content:flex-start;width:100%}.stats{grid-template-columns:repeat(2,1fr);gap:10px}.buckets{grid-template-columns:1fr}.modal-wrap{padding:10px 8px}.drawer,.dialog{max-height:96vh}.drawer-body,.dialog-body,.drawer header,.dialog header{padding:14px}.drawer footer,.dialog footer{padding:12px 14px}.form-grid{grid-template-columns:1fr}.form-grid .span-2{grid-column:span 1}.status-grid{grid-template-columns:1fr}.blocker-header{flex-direction:column;align-items:flex-start;gap:6px}.blocker-actions{width:100%}}.login-wrap{background:linear-gradient(135deg,#eef2ff,#f4f6f8 55%);justify-content:center;align-items:center;min-height:100vh;padding:32px 20px;display:flex}.login-frame{border:1px solid var(--line);background:#fff;border-radius:20px;grid-template-columns:1.05fr .95fr;width:min(980px,100%);display:grid;overflow:hidden;box-shadow:0 24px 60px #0f172a1a}.login-intro{color:#f1f5f9;background:radial-gradient(circle at 18% 12%,#1e293b,#0f172a 75%);flex-direction:column;gap:28px;padding:40px 36px;display:flex}.login-brand{align-items:center;gap:12px;display:flex}.login-brand .brand-emblem{background:var(--ui-accent)}.login-brand strong{color:#fff;font-size:16px;display:block}.login-brand small{color:#94a3b8;font-size:12px}.login-story{margin-top:auto}.login-kicker{letter-spacing:1.4px;color:#93c5fd;text-transform:uppercase;font-size:11px;font-weight:800;display:inline-block}.login-story h1{color:#fff;margin:12px 0 10px;font-size:26px;line-height:1.3}.login-story p{color:#cbd5e1;font-size:13px;line-height:1.75}.login-panel{flex-direction:column;justify-content:center;padding:40px 36px;display:flex}.login-panel-kicker{letter-spacing:1.2px;color:var(--accent);text-transform:uppercase;font-size:11px;font-weight:800}.login-panel h2{color:var(--ink);margin:8px 0 6px;font-size:22px}.login-description{color:var(--muted);margin:0 0 18px;font-size:12.5px;line-height:1.7}.login-panel form{flex-direction:column;gap:6px;display:flex}.login-panel label{color:#334155;margin-top:8px;font-size:12px;font-weight:700}.login-panel input{border:1px solid #cbd5e1;border-radius:10px;padding:11px 13px;font-size:14px}.login-error{background:#fff7f7;border:1px solid #fecaca;border-radius:10px;align-items:flex-start;gap:8px;margin-top:10px;padding:10px 12px;display:flex}.login-error span{background:var(--danger);color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:18px;height:18px;font-size:12px;font-weight:800;display:inline-flex}.login-error p{color:var(--danger);margin:0;font-size:12.5px}.login-submit{background:var(--accent);color:#fff;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;margin-top:16px;padding:12px 16px;font-size:14px;font-weight:800;display:flex}.login-submit:disabled{opacity:.5}.login-help{color:var(--muted);margin-top:18px;font-size:12.5px}.notice.demo-live{color:var(--ui-accent);background:#eff6ff;border:1px solid #bfdbfe}.demo-card.is-live strong{color:var(--muted)}.button-like{text-decoration:none}a.outline{color:#334155;background:#fff;border:1px solid #cbd5e1;border-radius:10px;justify-content:center;align-items:center;padding:9px 16px;font-size:13px;font-weight:700;display:inline-flex}a.outline:hover{background:#f8fafc;border-color:#94a3b8}.preview-page{background:#eef1f4;min-height:100vh}.preview-bar{z-index:5;color:#e2e8f0;background:#0f172a;flex-wrap:wrap;align-items:center;gap:12px;padding:12px 20px;font-size:13px;display:flex;position:sticky;top:0}.preview-badge{color:#422006;letter-spacing:.5px;background:#facc15;border-radius:8px;padding:3px 9px;font-size:11.5px;font-weight:800}.preview-title{font-weight:700}.preview-note{color:#94a3b8;margin-left:auto;font-size:12px}.preview-note code{color:#cbd5e1}.preview-state{text-align:center;max-width:640px;color:var(--muted);background:#fff;border-radius:14px;margin:60px auto;padding:34px;font-size:14px}.preview-state.is-error{color:var(--danger);border:1px solid #fecaca;justify-items:center;gap:10px;display:grid}.preview-frame{max-width:460px;margin:26px auto 48px;padding:0 16px}.phone{border:1px solid var(--line);background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 18px 44px #0f172a1f}.phone-hero{color:#fff;padding:26px 22px}.phone-eyebrow{letter-spacing:1.2px;text-transform:uppercase;opacity:.85;font-size:11px;font-weight:800}.phone-hero h1{margin:10px 0 8px;font-size:23px;line-height:1.3}.phone-hero p{opacity:.92;margin:0 0 14px;font-size:13px}.phone-button{color:#111;background:#ffffffeb;border-radius:999px;padding:8px 18px;font-size:13px;font-weight:800;display:inline-block}.phone-notice{color:#92400e;background:#fffbeb;border-bottom:1px solid #fde68a;margin:0;padding:11px 20px;font-size:12.5px}.phone-section{border-top:1px solid var(--line);padding:18px 20px}.phone-section h2{color:var(--ink);margin:0 0 10px;font-size:14px}.phone-section>p{color:#475569;margin:0 0 10px;font-size:13px;line-height:1.7}.phone-kv{gap:8px;margin:0;display:grid}.phone-kv div{justify-content:space-between;gap:12px;font-size:12.5px;display:flex}.phone-kv dt{color:var(--muted)}.phone-kv dd{color:var(--ink);text-align:right;margin:0}.phone-empty{color:var(--muted);font-size:13px}.phone-items{gap:10px;display:grid}.phone-item{border:1px solid var(--line);border-radius:12px;align-items:center;gap:12px;padding:10px;display:flex}.phone-item img{object-fit:cover;background:#f1f5f9;border-radius:10px;flex:none;width:56px;height:56px}.phone-item div{gap:2px;min-width:0;display:grid}.phone-item strong{color:var(--ink);font-size:13.5px}.phone-item small{color:var(--muted);font-size:12px}.phone-price{color:var(--accent);font-size:13px;font-weight:800}.preview-disclaimer{max-width:460px;color:var(--muted);text-align:center;margin:16px auto 0;font-size:11.5px;line-height:1.7}@media (width<=820px){.login-frame{grid-template-columns:minmax(0,1fr)}.login-intro,.login-panel{padding:28px 24px}.preview-note{width:100%;margin-left:0}}.facet-nav{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:8px;padding-bottom:12px;display:flex}.facet-tab{border:1px solid var(--line);color:#475569;background:#fff;border-radius:999px;padding:6px 14px;font-size:13px;font-weight:700;transition:all .15s}.facet-tab:hover{background:#f8fafc;border-color:#cbd5e1}.facet-tab.active{background:var(--accent);color:#fff;border-color:var(--accent)}.blocker-banner{background:#fffbeb;border:1px solid #fde68a;border-radius:14px;gap:12px;padding:16px 18px;display:grid}.blocker-banner.is-all-done{border-color:var(--line);background:#f8fafc;flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.blocker-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.blocker-title-wrap{align-items:center;gap:8px;display:flex}.blocker-badge{color:#fff;background:#f59e0b;border-radius:999px;padding:2px 9px;font-size:11px;font-weight:800}.blocker-badge.tone-ok{color:#42624d;background:#e5efe9}.blocker-title-wrap strong{color:#92400e;font-size:14px}.blocker-banner.is-all-done .blocker-title-wrap strong{color:#475569;font-weight:600}.blocker-stage{color:#a16207;font-size:12px;font-weight:600}.blocker-banner.is-all-done .blocker-stage{color:var(--muted)}.blocker-items{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.blocker-item-tag{color:#78350f;background:#fff;border:1px solid #fde047;border-radius:8px;align-items:center;gap:6px;padding:5px 11px;font-family:inherit;font-size:12px;display:inline-flex}.blocker-item-tag.is-clickable{cursor:pointer;transition:all .15s;box-shadow:0 1px 2px #b453090f}.blocker-item-tag.is-clickable:hover{background:#fefce8;border-color:#eab308;transform:translateY(-1px);box-shadow:0 2px 8px #b4530926}.blocker-item-tag.is-clickable:active{transform:translateY(0)}.blocker-item-tag small{color:#854d0e;background:#fef9c3;border-radius:4px;padding:1px 5px;font-size:10.5px;font-weight:800}.blocker-action-hint{color:#b45309;margin-left:2px;font-size:11px;font-weight:700}.blocker-expand-toggle{color:#92400e;cursor:pointer;background:#fff;border:1px dashed #d97706;border-radius:8px;padding:5px 12px;font-family:inherit;font-size:11.5px;font-weight:700;transition:all .15s}.blocker-expand-toggle:hover{background:#fef3c7;border-color:#b45309}.blocker-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.check-category-accordion{background:#f8fafc;border:1px solid #f1f5f9;border-radius:12px;margin-bottom:10px;padding:10px 14px;transition:border-color .15s,background .15s}.check-category-accordion[open]{background:#fff;border-color:#e2e8f0;box-shadow:0 1px 4px #0f172a0a}.check-category-head{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--ink);justify-content:space-between;align-items:center;font-size:13px;font-weight:700;list-style:none;display:flex}.check-category-head::-webkit-details-marker{display:none}.check-category-head .eyebrow{color:#475569;letter-spacing:1px;margin:0;font-size:11.5px}.check-category-stat{color:var(--muted);align-items:center;gap:6px;font-size:11.5px;font-weight:600;display:flex}.check-category-stat .tag-done{color:#15803d;background:#dcfce7;border-radius:4px;padding:1px 6px;font-size:10.5px;font-weight:800}.check-category-stat .tag-pending{color:#92400e;background:#fef3c7;border-radius:4px;padding:1px 6px;font-size:10.5px;font-weight:800}.build-logs-details{margin-top:8px}.build-logs-details summary{color:var(--accent);cursor:pointer;padding:2px 0;font-size:11.5px;font-weight:600}.build-logs-content{border:1px solid var(--line);white-space:pre-wrap;color:#334155;background:#f8fafc;border-radius:8px;max-height:180px;margin-top:6px;padding:10px;font-family:monospace;font-size:11px;overflow-y:auto}.mobile-projects{display:none}.workbench-summary{color:var(--muted);flex-wrap:wrap;gap:10px 24px;padding:0 2px 16px;font-size:12.5px;display:flex}.workbench-summary span{align-items:baseline;gap:8px;display:inline-flex}.workbench-summary strong{color:var(--ink);font-size:16px;font-weight:600}.node-status-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:8px 0;display:grid}.node-status-grid>div{flex-direction:column;align-items:flex-start;gap:8px;min-width:0;display:flex}.node-status-grid>div>span{color:var(--muted);font-size:12px}.node-status-grid strong{white-space:normal;max-width:100%}.node-status-grid small{color:var(--muted);font-size:12px;line-height:1.55}.node-status .warn-box{margin:0 0 14px}.node-status-details{border-top:1px solid var(--line);color:var(--muted);margin-top:12px;padding-top:12px;font-size:12px}.node-status-details summary{cursor:pointer}.node-status-details p{overflow-wrap:anywhere;line-height:1.6}.project-title{color:var(--ink);overflow-wrap:anywhere;margin:5px 0;font-size:22px;font-weight:650;line-height:1.45}.build-jobs{border-bottom:1px solid var(--line);margin:0 0 18px;padding-bottom:14px;font-size:12.5px}.build-worker-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.build-worker-row small,.build-task-list small{color:var(--muted);margin-top:6px;line-height:1.6;display:block}.build-task-list{margin:12px 0 0;padding:0;list-style:none}.build-task-list li{border-top:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 0;display:flex}.build-task-list li>div{min-width:0}.build-task-list .field-error{overflow-wrap:anywhere}.build-empty{margin:12px 0 0}.build-restore{color:var(--muted);margin-top:14px}.build-restore summary{cursor:pointer}.build-restore .toolbar{margin:12px 0}.card-head>div{min-width:0}.toolbar .field,.table-wrap{max-width:100%}.timeline small,.entry small{overflow-wrap:anywhere}.facet-tab{font-weight:600}.blocker-title-wrap{flex-wrap:wrap;min-width:0}.blocker-item-tag{text-align:left;max-width:100%}.blocker-item-tag>span:not(.blocker-action-hint){overflow-wrap:anywhere}@media (width<=1100px){.node-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.sidebar{grid-template-columns:minmax(0,1fr) auto;gap:8px 10px;padding:12px 14px 8px;display:grid}.side-brand{grid-area:1/1;gap:9px;min-width:0;padding:0}.side-brand strong{font-size:14px;font-weight:650}.side-brand small{font-size:10px}.brand-emblem{border-radius:10px;flex:0 0 32px;width:32px;height:32px}.sidebar>.side-label,.desktop-projects,.sidebar .demo-card{display:none}.sidebar>nav{grid-area:2/1/auto/-1}.sidebar nav button{min-height:38px;padding:0 10px;font-size:12.5px;font-weight:600}.side-foot{border:0;grid-area:1/2;margin:0;padding:0}.side-foot>span{display:none}.side-foot .link-button{font-size:12px;text-decoration:none}.mobile-projects{color:var(--muted);grid-column:1/-1;font-size:12px;display:block}.mobile-projects summary{cursor:pointer;padding:3px 0 5px}.mobile-projects summary span{margin-left:5px}.mobile-projects nav{margin-top:4px}.main{padding-top:16px}.top{align-items:center;gap:10px}.top h1{margin:0 0 4px}.top p{font-size:12.5px}.top-actions{width:auto}.card{padding:16px}.workbench-summary{gap:8px 16px;padding-bottom:14px}.node-status-grid{gap:18px 12px}.project-overview .status-grid{border:1px solid var(--line);background:#fbfcfd;border-radius:12px;gap:0;overflow:hidden}.project-overview .status-block{background:0 0;border:0;border-radius:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 12px;padding:13px 14px;display:grid}.project-overview .status-block+.status-block{border-top:1px solid var(--line)}.project-overview .status-block>span{letter-spacing:0;font-size:12px;font-weight:600}.project-overview .status-block strong{grid-area:1/2;margin:0}.project-overview .status-block small{grid-column:1/-1;font-size:12px;line-height:1.6}.project-title{font-size:20px}.facet-nav{gap:6px}.facet-tab{padding:7px 10px;font-size:12px}.blocker-banner{padding:14px}.blocker-banner.is-all-done .blocker-header{align-items:flex-start;width:100%}.blocker-banner.is-all-done .blocker-title-wrap{width:100%}.blocker-banner.is-all-done .blocker-title-wrap strong{flex:1;line-height:1.6}}@media (width<=480px){.sidebar,.main{padding-inline:12px}.top-actions{width:100%}.top-actions .primary{min-height:38px}.workbench-top{grid-template-columns:minmax(0,1fr) auto;gap:8px 10px;display:grid}.workbench-top>div:first-child{display:contents}.workbench-top h1{grid-area:1/1;margin:0;font-size:22px}.workbench-top p{grid-area:2/1/auto/-1}.workbench-top .top-actions{grid-area:1/2;width:auto}.card{padding:14px}.card-head{gap:10px}.card-head h2{margin-top:0;font-size:16px}.node-status-grid{font-size:12px}.node-status .card-actions{width:auto}.follow-up.card{padding:16px}.project-row{flex-direction:column;align-items:stretch;gap:8px;padding:10px}.project-row .tpl-tags,.project-row .row-tail{text-align:left;justify-content:flex-start}.project-row .row-tail{flex-shrink:0}.toolbar{align-items:stretch}.toolbar>.field{width:100%;flex:1 0 100%!important;min-width:0!important}.drawer,.dialog{max-height:calc(100dvh - 20px)}.drawer footer,.dialog footer{padding-bottom:max(12px,env(safe-area-inset-bottom))}.drawer footer .left,.dialog footer .left{width:100%;font-size:11.5px}.review-list div{flex-wrap:wrap;gap:6px}.review-list dt{min-width:0}.build-worker-row .card-actions{width:100%}.blocker-items{gap:6px}.blocker-action-hint{white-space:nowrap}}
