:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--brand:#6366f1;--brand-2:#8b5cf6;--brand-strong:#4f46e5;--grad:linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);--grad-soft:linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);--brand-soft:#6366f11a;--brand-soft-2:#8b5cf614;--on-brand:#fff;--bg:#f5f6fa;--bg-glow:radial-gradient(1100px 420px at 15% -10%, #6366f11a, transparent 60%), radial-gradient(900px 400px at 100% -10%, #8b5cf614, transparent 55%);--surface:#fff;--surface-2:#f3f4f8;--surface-3:#eceef4;--surface-hover:#f8f9fc;--border:#eceef3;--border-strong:#d9dce6;--border-focus:#a5a8e8;--text:#171a26;--text-2:#4b5568;--text-3:#8b93a7;--text-4:#b5bcc9;--ok:#10b981;--ok-soft:#10b9811f;--warn:#f59e0b;--warn-soft:#f59e0b21;--danger:#ef4444;--danger-soft:#ef44441f;--info:#3b82f6;--info-soft:#3b82f61f;--shadow-xs:0 1px 2px #171a260a;--shadow-sm:0 1px 3px #171a260d, 0 1px 2px #171a260a;--shadow-md:0 6px 20px #171a2614, 0 2px 6px #171a260d;--shadow-lg:0 24px 60px #171a2629, 0 8px 24px #171a2614;--shadow-brand:0 8px 20px #6366f152;--r-sm:8px;--r:12px;--r-lg:16px;--r-xl:20px;--sidebar-w:236px;--font:-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--mono:ui-monospace, "SFMono-Regular", "Cascadia Code", Consolas, monospace}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--brand:#6366f1;--brand-2:#8b5cf6;--brand-strong:#818cf8;--grad:linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);--brand-soft:#818cf829;--brand-soft-2:#8b5cf61f;--on-brand:#fff;--bg:#0b0d13;--bg-glow:radial-gradient(1100px 420px at 15% -10%, #6366f11f, transparent 60%), radial-gradient(900px 400px at 100% -10%, #8b5cf61a, transparent 55%);--surface:#12151d;--surface-2:#1a1e28;--surface-3:#232836;--surface-hover:#171b25;--border:#ffffff14;--border-strong:#ffffff24;--border-focus:#818cf899;--text:#eef1f7;--text-2:#a7b0c2;--text-3:#6b7488;--text-4:#4a5264;--ok:#34d399;--ok-soft:#34d39924;--warn:#fbbf24;--warn-soft:#fbbf2424;--danger:#f87171;--danger-soft:#f8717124;--info:#60a5fa;--info-soft:#60a5fa24;--shadow-xs:0 1px 2px #0006;--shadow-sm:0 1px 3px #00000080, 0 1px 2px #0006;--shadow-md:0 6px 20px #00000080, 0 2px 6px #0006;--shadow-lg:0 24px 60px #0009, 0 8px 24px #0006;--shadow-brand:0 8px 20px #6366f166}}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{font-family:var(--font);background:var(--bg);background-image:var(--bg-glow);color:var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background-attachment:fixed;font-size:14px;line-height:1.55}::selection{background:#6366f138}a{color:var(--brand-strong);text-decoration:none}a:hover{text-decoration:underline}.app{min-height:100vh;display:flex}.sidebar-nav{height:100vh;width:var(--sidebar-w);background:var(--surface);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;padding:18px 14px 16px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:11px;padding:4px 8px 20px;display:flex}.brand-mark{background:var(--grad);width:34px;height:34px;color:var(--on-brand);letter-spacing:.2px;box-shadow:var(--shadow-brand);border-radius:10px;justify-content:center;align-items:center;font-size:11px;font-weight:800;display:inline-flex}.brand-text{flex-direction:column;line-height:1.25;display:flex}.brand-name{letter-spacing:-.01em;font-size:15px;font-weight:700}.brand-sub{color:var(--text-3);letter-spacing:.02em;font-size:11px;font-weight:500}.nav-section{letter-spacing:.06em;text-transform:uppercase;color:var(--text-4);padding:0 8px 6px;font-size:11px;font-weight:600}.nav-list{flex-direction:column;flex:1;gap:3px;display:flex}.nav-item{color:var(--text-2);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:9px;align-items:center;gap:11px;width:100%;padding:9px 11px;font-size:14px;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:flex;position:relative}.nav-item svg{color:var(--text-3);flex-shrink:0;transition:color .15s}.nav-item:hover{background:var(--surface-2);color:var(--text)}.nav-item:hover svg{color:var(--text-2)}.nav-item.active{background:var(--brand-soft);color:var(--brand-strong);font-weight:600}.nav-item.active svg{color:var(--brand-strong)}.nav-item.active:before{content:"";background:var(--brand);border-radius:0 3px 3px 0;width:3px;height:20px;position:absolute;top:50%;left:-14px;transform:translateY(-50%)}.nav-item .badge{background:var(--surface-3);color:var(--text-2);border-radius:999px;margin-left:auto;padding:1px 7px;font-size:11px;font-weight:600}.nav-footer{border-top:1px solid var(--border);flex-direction:column;gap:2px;margin-top:8px;padding-top:12px;display:flex}.user-chip{border-radius:9px;align-items:center;gap:10px;margin-bottom:4px;padding:7px 9px;display:flex}.avatar{background:var(--grad);width:30px;height:30px;color:var(--on-brand);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:inline-flex}.user-card{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;align-items:center;gap:10px;padding:8px 9px;display:flex}.user-meta{flex-direction:column;flex:1;min-width:0;line-height:1.3;display:flex}.chip-name{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.chip-role{color:var(--text-3);font-size:11px;font-weight:500}.user-card .logout{padding:6px}.logout{color:var(--text-3)}.logout:hover{color:var(--danger);background:var(--danger-soft)}.logout:hover svg{color:var(--danger)}.content{flex:1;min-width:0;padding:30px 36px 48px}.page-head{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;display:flex}.page-head-text{align-items:flex-start;gap:14px;display:flex}.page-head-icon{background:var(--brand-soft);width:44px;height:44px;color:var(--brand-strong);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.page-head h1{letter-spacing:-.02em;margin:0;font-size:23px;font-weight:700;line-height:1.2}.page-head p{color:var(--text-3);margin:5px 0 0;font-size:13.5px}.page-head-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}button{cursor:pointer;border:1px solid var(--border-strong);background:var(--surface);color:var(--text);border-radius:var(--r-sm);white-space:nowrap;align-items:center;gap:7px;padding:8px 15px;font-family:inherit;font-size:13.5px;font-weight:500;transition:all .15s;display:inline-flex}button:hover{background:var(--surface-2);border-color:#c9cdd9}button:active{transform:translateY(.5px)}button:disabled{opacity:.55;cursor:not-allowed;transform:none}button:focus-visible{box-shadow:0 0 0 3px var(--brand-soft);outline:none}button.primary{background:var(--grad);color:var(--on-brand);box-shadow:var(--shadow-brand);border:none}button.primary:hover{filter:brightness(1.06);background:var(--grad)}button.primary:active{box-shadow:0 4px 12px #6366f14d}button.ghost{background:var(--surface-2);border-color:#0000}button.ghost:hover{background:var(--surface-3)}button.subtle{color:var(--text-2);background:0 0;border-color:#0000}button.subtle:hover{background:var(--surface-2);color:var(--text)}button.danger{border-color:var(--border-strong);color:var(--danger)}button.danger:hover{border-color:var(--danger);background:var(--danger-soft)}button.success{border-color:var(--border-strong);color:var(--ok)}button.success:hover{border-color:var(--ok);background:var(--ok-soft)}button.link{color:var(--brand-strong);background:0 0;border:none;padding:4px 8px}button.link:hover{background:var(--brand-soft);text-decoration:none}.icon-btn{padding:8px}.page-actions{align-items:center;gap:8px;display:flex}.page-actions button{white-space:nowrap}.modal-head-actions{align-items:center;gap:4px;display:flex}.field{flex-direction:column;gap:6px;display:flex}.field>span{color:var(--text-2);letter-spacing:.01em;font-size:12.5px;font-weight:600}input,select,textarea{color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-sm);width:100%;padding:9px 12px;font-family:inherit;font-size:14px;transition:border-color .15s,box-shadow .15s}input::placeholder,textarea::placeholder{color:var(--text-4)}input:hover,select:hover,textarea:hover{border-color:#c2c6d4}input:focus,select:focus,textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft);outline:none}textarea{resize:vertical;min-height:96px;line-height:1.55}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238b93a7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 11px center;background-repeat:no-repeat;padding-right:32px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.pane{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);overflow:hidden}.pane-head{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.pane-head h2{letter-spacing:-.01em;margin:0;font-size:16px;font-weight:650}.pane-body{padding:20px}.tag{background:var(--surface-2);color:var(--text-2);border-radius:999px;align-items:center;gap:5px;padding:2px 9px;font-size:12px;font-weight:600;line-height:1.6;display:inline-flex}.tag.dot{padding-left:8px}.dot{border-radius:50%;flex-shrink:0;width:7px;height:7px;display:inline-block}.badge{background:var(--surface-2);color:var(--text-2);border-radius:999px;align-items:center;gap:5px;padding:2px 8px;font-size:11.5px;font-weight:600;display:inline-flex}.tag-chip{background:var(--surface-2);color:var(--text-2);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:2px 9px;font-size:11.5px;font-weight:600;line-height:1.65;display:inline-flex}.tag-chip.act-create{background:var(--ok-soft);color:var(--ok)}.tag-chip.act-update{background:var(--info-soft);color:var(--info)}.tag-chip.act-rollback{background:var(--warn-soft);color:var(--warn)}.muted{color:var(--text-3);font-size:12.5px}.login-page{background:var(--bg);background-image:var(--bg-glow);justify-content:center;align-items:center;min-height:100vh;padding:40px 24px;display:flex;position:relative;overflow:hidden}.login-glow{pointer-events:none;background:radial-gradient(900px 500px at 20% 0,#6366f11f,#0000 60%),radial-gradient(700px 420px at 90% 100%,#8b5cf61a,#0000 55%);position:absolute;inset:0}.login-shell{grid-template-columns:1fr 1fr;align-items:center;gap:48px;width:100%;max-width:920px;display:grid;position:relative}.login-shell-main{max-width:380px}.login-brand{align-items:center;gap:13px;margin-bottom:40px;display:flex}.login-brand .brand-mark{border-radius:13px;width:46px;height:46px;font-size:15px}.login-brand h2{letter-spacing:-.02em;margin:0;font-size:19px;font-weight:700}.login-brand p{color:var(--text-3);letter-spacing:.02em;margin:3px 0 0;font-size:12.5px}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-lg);padding:30px 28px}.login-head{margin-bottom:22px}.login-head h3{letter-spacing:-.02em;margin:0;font-size:21px;font-weight:700}.login-head p{color:var(--text-3);margin:6px 0 0;font-size:13.5px}.login-card form{flex-direction:column;gap:14px;display:flex}.login-submit{justify-content:center;width:100%;margin-top:4px;padding:11px;font-size:14px;font-weight:600}.login-card .switch{color:var(--text-3);text-align:center;margin-top:18px;font-size:13px}.login-card .switch a{color:var(--brand-strong);cursor:pointer;font-weight:600}.login-card .switch-note{color:var(--text-3);font-size:12.5px}.error{color:var(--danger);background:var(--danger-soft);border-radius:var(--r-sm);align-items:center;gap:7px;padding:9px 12px;font-size:13px;font-weight:500;display:flex}.login-features{flex-direction:column;gap:28px;display:flex}.login-feature-block h4{letter-spacing:-.01em;margin:0 0 18px;font-size:15px;font-weight:700}.login-feature-block ul{flex-direction:column;gap:16px;margin:0;padding:0;list-style:none;display:flex}.login-feature-block li{align-items:flex-start;gap:14px;display:flex}.feat-icon{background:var(--brand-soft);width:38px;height:38px;color:var(--brand-strong);border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.login-feature-block li div{flex-direction:column;gap:2px;display:flex}.login-feature-block li b{font-size:14px;font-weight:600}.login-feature-block li div span{color:var(--text-3);font-size:13px}.login-security{color:var(--text-3);border:1px solid var(--border);border-radius:var(--r);background:var(--surface);align-items:center;gap:8px;padding:12px 14px;font-size:12.5px;display:flex}.login-security svg{color:var(--ok)}.two-pane{grid-template-columns:302px 1fr;align-items:start;gap:18px;display:grid}.sidebar-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);overflow:hidden}.panel-search{border-bottom:1px solid var(--border);padding:12px 14px;position:relative}.panel-search svg{color:var(--text-4);pointer-events:none;position:absolute;top:50%;left:27px;transform:translateY(-50%)}.panel-search input{background:var(--surface-2);border-color:#0000;padding-left:34px}.panel-search input:hover,.panel-search input:focus{background:var(--surface)}.tabs{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:4px;padding:8px 10px;display:flex}.tabs button{color:var(--text-2);border-radius:var(--r-sm);background:0 0;border:none;justify-content:center;padding:6px 10px;font-size:12.5px;font-weight:600}.tabs button:hover{background:var(--surface-2);color:var(--text)}.tabs button.active{background:var(--brand-soft);color:var(--brand-strong)}.tab-wrap{align-items:center;display:inline-flex;position:relative}.tab-del{color:var(--text-4);opacity:0;background:0 0;border:none;border-radius:6px;margin-left:-4px;padding:4px;transition:opacity .15s,background .15s,color .15s}.tab-del:hover{background:var(--danger-soft);color:var(--danger);opacity:1}.tab-wrap:hover .tab-del{opacity:1}.tabs-empty{color:var(--text-4);padding:6px 4px;font-size:12.5px}.zone-add{border-bottom:1px solid var(--border);background:var(--surface-hover);align-items:center;gap:6px;padding:10px 14px;display:flex}.zone-add input{flex:1;min-width:0;padding:7px 10px;font-size:13px}.zone-add button{flex-shrink:0;padding:7px 12px;font-size:13px}.zone-err{border-radius:var(--r-sm);background:var(--danger-soft);color:var(--danger);margin:8px 14px 0;padding:8px 10px;font-size:12.5px}.panel-title{text-transform:uppercase;letter-spacing:.06em;color:var(--text-4);justify-content:space-between;align-items:center;padding:14px 16px 8px;font-size:11.5px;font-weight:700;display:flex}.panel-title .count{background:var(--surface-2);border:1px solid var(--border);color:var(--text-3);font-variant-numeric:tabular-nums;border-radius:999px;padding:0 7px;font-size:11px;font-weight:700}.doclist{margin:0;padding:0 8px 12px;list-style:none}.doclist li{margin-bottom:2px}.doclist button{text-align:left;width:100%;color:var(--text);border-radius:var(--r-sm);background:0 0;border:none;align-items:center;gap:10px;padding:9px 10px;font-size:13.5px;font-weight:500;display:flex}.doclist button svg{color:var(--text-3);flex-shrink:0}.doclist button .dl-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.doclist button .dl-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.doclist button .dl-summary{color:var(--text-3);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:11.5px;font-weight:400;overflow:hidden}.doclist button .meta{color:var(--text-4);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:11px}.doclist button:hover{background:var(--surface-hover)}.doclist button.active{background:var(--brand-soft);color:var(--brand-strong);font-weight:600}.doclist button.active svg{color:var(--brand-strong)}.doclist .empty{color:var(--text-3);text-align:center;padding:18px 12px;font-size:13px}.doc-reader{padding:28px 32px}.doc-title{letter-spacing:-.02em;margin:0 0 6px;font-size:21px;font-weight:700;line-height:1.3}.doc-meta-line{color:var(--text-3);align-items:center;gap:8px;margin-bottom:20px;font-size:12.5px;display:flex}.doc-meta-line .sep{color:var(--text-4)}.doc-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.doc-body{white-space:pre-wrap;word-break:break-word;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r);font-family:var(--mono);color:var(--text);margin:0;padding:20px 22px;font-size:13px;line-height:1.7}.doc-summary{background:var(--brand-soft);border-left:3px solid var(--brand);border-radius:0 var(--r-sm) var(--r-sm) 0;color:var(--text-2);margin:0 0 16px;padding:10px 14px;font-size:13.5px;line-height:1.6}.doc-markdown{max-width:none;margin:0;padding:0;font-size:14.5px}.doc-markdown pre{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);overflow-x:auto}.placeholder{min-height:360px;color:var(--text-3);flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex}.placeholder .ph-icon{background:var(--surface-2);width:56px;height:56px;color:var(--text-3);border-radius:16px;justify-content:center;align-items:center;display:flex}.placeholder b{color:var(--text-2);font-size:15px}.placeholder span{font-size:13px}.app-loading{min-height:100vh;color:var(--text-3);flex-direction:column;justify-content:center;align-items:center;gap:14px;font-size:14px;display:flex}.spinner{border:3px solid var(--surface-3);border-top-color:var(--brand);border-radius:50%;width:26px;height:26px;animation:.8s linear infinite app-spin}@keyframes app-spin{to{transform:rotate(360deg)}}.guide-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-md);overflow:hidden}.guide-loading,.guide-error{text-align:center;color:var(--text-3);padding:48px 24px;font-size:14px}.guide-error{color:var(--danger)}.guide{max-width:860px;color:var(--text);margin:0 auto;padding:40px 52px 64px;font-size:15px;line-height:1.75}.guide>:first-child{margin-top:0}.guide h1{letter-spacing:-.02em;border-bottom:1px solid var(--border);margin:0 0 8px;padding-bottom:16px;font-size:28px;font-weight:800}.guide h2{letter-spacing:-.01em;border-bottom:1px solid var(--border);margin:36px 0 12px;padding-bottom:8px;font-size:20px;font-weight:700}.guide h2:before{content:"";background:var(--grad);vertical-align:-2px;border-radius:3px;width:4px;height:18px;margin-right:10px;display:inline-block}.guide h3{margin:26px 0 10px;font-size:16px;font-weight:700}.guide p{margin:12px 0}.guide blockquote{border-left:3px solid var(--brand);border-radius:0 var(--r-sm) var(--r-sm) 0;background:var(--brand-soft);color:var(--text-2);margin:16px 0;padding:12px 16px;font-size:14px}.guide blockquote p{margin:0}.guide ul,.guide ol{margin:12px 0;padding-left:24px}.guide li{margin:5px 0}.guide code{font-family:var(--mono);background:var(--surface-3);border:1px solid var(--border);color:var(--brand-strong);border-radius:5px;padding:1.5px 6px;font-size:.88em}.guide pre{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r);margin:16px 0;padding:16px 18px;line-height:1.6;overflow-x:auto}.guide pre code{color:var(--text);background:0 0;border:none;padding:0;font-size:13px;display:block}.guide a{color:var(--brand-strong);font-weight:500}.guide table{border-collapse:collapse;border:1px solid var(--border);border-radius:var(--r);width:100%;margin:16px 0;font-size:13.5px;overflow:hidden}.guide th,.guide td{text-align:left;border-bottom:1px solid var(--border);padding:10px 14px}.guide th{background:var(--surface-2);color:var(--text-2);white-space:nowrap;font-weight:700}.guide tr:last-child td{border-bottom:none}.guide tbody tr:hover{background:var(--surface-hover)}.guide hr{border:none;border-top:1px solid var(--border);margin:24px 0}@media (width<=720px){.guide{padding:24px 20px 40px}}.stats{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px;display:grid}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);align-items:center;gap:14px;padding:16px 18px;display:flex}.stat-icon{border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.stat-icon.blue{background:var(--info-soft);color:var(--info)}.stat-icon.amber{background:var(--warn-soft);color:var(--warn)}.stat-icon.violet{background:var(--brand-soft);color:var(--brand-strong)}.stat-icon.green{background:var(--ok-soft);color:var(--ok)}.stat-num{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:22px;font-weight:700;line-height:1.1}.stat-label{color:var(--text-3);font-size:12px;font-weight:500}.create-box{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);margin-bottom:20px;padding:18px}.create-box .cb-head{align-items:center;gap:9px;margin-bottom:15px;display:flex}.create-box .cb-head b{font-size:14.5px;font-weight:650}.create-box .cb-head span{color:var(--text-3);font-size:12.5px}.cb-badge{background:var(--brand-soft);width:26px;height:26px;color:var(--brand-strong);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.create-box .row{gap:10px;margin-bottom:10px;display:flex}.create-box .row .field{flex-shrink:0;width:132px}.create-box .field.grow{flex:1;width:auto}.create-box .create-btn button{justify-content:center;width:100%;height:38px}.create-box .row input{flex:1}.tickets-page{flex-direction:column;height:calc(100vh - 140px);min-height:0;display:flex}.kanban{flex:1;grid-template-columns:repeat(6,1fr);gap:12px;min-height:0;display:grid}.col{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r);flex-direction:column;min-width:0;min-height:240px;padding:10px;display:flex;overflow:hidden}.col-head{color:var(--text-2);flex-shrink:0;align-items:center;gap:7px;padding:4px 6px 10px;font-size:12.5px;font-weight:650;display:flex}.col-body{scrollbar-width:thin;flex:1;min-height:0;padding-right:2px;overflow-y:auto}.col-head .count{background:var(--surface);border:1px solid var(--border);color:var(--text-3);font-variant-numeric:tabular-nums;border-radius:999px;margin-left:auto;padding:0 7px;font-size:11.5px;font-weight:700}.ticket{text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);width:100%;box-shadow:var(--shadow-xs);flex-direction:column;gap:9px;margin-bottom:8px;padding:11px 12px;transition:box-shadow .15s,transform .15s,border-color .15s;display:flex}.ticket:hover{border-color:var(--brand);box-shadow:var(--shadow-md);transform:translateY(-1px)}.ticket b{font-size:13px;font-weight:600;line-height:1.4}.ticket .ticket-foot{color:var(--text-4);justify-content:space-between;align-items:center;font-size:11px;display:flex}.ticket .ticket-id{color:var(--text-3);font-variant-numeric:tabular-nums;font-weight:600}.status-submitted{background:var(--text-4)}.status-accepted{background:var(--info)}.status-in_progress{background:var(--warn)}.status-replied{background:#a855f7}.status-confirmed{background:var(--ok)}.status-rejected{background:var(--danger)}.state-chip{border-radius:999px;align-items:center;gap:6px;padding:4px 12px;font-size:12.5px;font-weight:600;display:inline-flex}.state-chip .dot{width:6px;height:6px}.chip-submitted{background:var(--surface-3);color:var(--text-3)}.chip-accepted{background:var(--info-soft);color:var(--info)}.chip-in_progress{background:var(--warn-soft);color:var(--warn)}.chip-replied{color:#a855f7;background:#a855f724}.chip-confirmed{background:var(--ok-soft);color:var(--ok)}.chip-rejected{background:var(--danger-soft);color:var(--danger)}.modal{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:40;background:#10121c80;justify-content:center;align-items:center;padding:24px;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.modal-inner{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-lg);width:600px;max-width:100%;max-height:86vh;animation:.18s popIn;overflow:auto}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes popIn{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:none}}.modal-head{border-bottom:1px solid var(--border);background:var(--surface);z-index:1;justify-content:space-between;align-items:center;gap:12px;padding:18px 22px;display:flex;position:sticky;top:0}.modal-title{align-items:center;gap:10px;min-width:0;display:flex}.modal-title h3{letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:16px;font-weight:650;overflow:hidden}.ticket-no{background:var(--brand-soft);color:var(--brand-strong);font-variant-numeric:tabular-nums;flex-shrink:0}.modal-status{align-items:center;gap:8px;display:flex}.modal-body{padding:20px 22px}.modal-body h4{text-transform:uppercase;letter-spacing:.06em;color:var(--text-4);margin:22px 0 10px;font-size:11.5px;font-weight:700}.modal-body h4:first-child{margin-top:0}.close{color:var(--text-3);background:0 0;border:none;border-radius:8px;padding:6px;line-height:1}.close:hover{background:var(--surface-2);color:var(--text)}.events,.replies,.versions{margin:0;padding:0;list-style:none}.events li,.replies li,.versions li{border-bottom:1px dashed var(--border);flex-wrap:wrap;align-items:center;gap:9px;padding:8px 0;font-size:13.5px;display:flex}.events li:last-child,.replies li:last-child,.versions li:last-child{border-bottom:none}.events .when,.replies .when,.versions .when{color:var(--text-4);font-variant-numeric:tabular-nums;margin-left:auto;font-size:12px}.reply-body{min-width:0;color:var(--text);flex:1}.v-no{color:var(--brand-strong);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:13px;font-weight:700}.v-msg{min-width:0;color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.actions{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.diff-controls{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}.diff-controls .field{width:92px}.diff-pair{align-items:flex-end;gap:8px;margin-right:4px;display:flex}.diff-pair svg{color:var(--text-4);margin-bottom:11px}.diff{font-family:var(--mono);border:1px solid var(--border);border-radius:var(--r);margin-top:16px;font-size:12.5px;line-height:1.6;overflow:auto}.dl{white-space:pre;padding:1px 14px}.dl.add{background:var(--ok-soft);color:var(--ok)}.dl.del{background:var(--danger-soft);color:var(--danger)}.dl.ctx{color:var(--text-3)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border-strong);background-clip:content-box;border:3px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--text-3);background-clip:content-box}@media (width<=1280px){.kanban{grid-template-columns:repeat(3,1fr)}}@media (width<=1100px){.stats{grid-template-columns:repeat(2,1fr)}}@media (width<=900px){.sidebar-nav{width:66px;padding:16px 8px}.brand{justify-content:center;padding:4px 0 20px}.brand-text,.brand-sub,.nav-item span,.user-meta,.chip-name,.chip-role,.nav-section{display:none}.nav-item{justify-content:center;padding:11px}.user-card{justify-content:center;padding:6px}.user-card .logout{display:none}.content{padding:18px 16px 32px}.two-pane{grid-template-columns:1fr}}@media (width<=860px){.login-shell{grid-template-columns:1fr;gap:32px;max-width:420px}.login-features{display:none}.create-box .row{flex-wrap:wrap}.create-box .row .field{width:100%}.create-box .create-btn button{height:38px}}.accounts-table{border-collapse:collapse;width:100%;font-size:13.5px}.accounts-table th{text-align:left;color:var(--text-4);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border);background:var(--surface-2);padding:10px 16px;font-size:11.5px;font-weight:700}.accounts-table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:12px 16px}.accounts-table tbody tr:last-child td{border-bottom:none}.accounts-table tbody tr:hover{background:var(--surface-2)}.acc-id{align-items:center;gap:10px;display:flex}.avatar.sm{width:28px;height:28px;font-size:12px}.acc-meta{flex-direction:column;min-width:0;line-height:1.35;display:flex}.acc-name{color:var(--text);font-weight:600}.acc-user{color:var(--text-3);font-size:12px}.role-chip{border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-flex}.role-chip.admin{background:var(--brand-soft);color:var(--brand-strong)}.role-chip.member{background:var(--surface-2);color:var(--text-2)}.all-zones{color:var(--brand-strong);font-weight:600}.zone-tags{flex-wrap:wrap;gap:4px;display:flex}.muted.sm{font-size:11.5px}.th-actions,.td-actions{text-align:right;white-space:nowrap;width:96px}.accounts-table .td-actions{text-align:right}.accounts-table .row-actions{align-items:center;gap:6px;display:inline-flex}.muted.sm{color:var(--text-4)}.icon-btn.danger{color:var(--text-3)}.icon-btn.danger:hover{color:var(--danger);background:var(--danger-soft)}.acc-form{grid-template-columns:1fr 1fr;gap:14px;display:grid}.btn{border:1px solid var(--border);cursor:pointer;background:var(--surface-1);color:var(--text-2);border-radius:8px;align-items:center;gap:5px;padding:6px 12px;font-size:13px;font-weight:600;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.btn.sm{border-radius:7px;padding:4px 10px;font-size:12px}button.btn:disabled{opacity:.55;cursor:not-allowed}.pw-cell{color:var(--text-2);word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px}.mcp-token-hint{flex-direction:column;gap:4px;margin-bottom:14px;display:flex}.mcp-token-hint b{color:var(--danger);font-size:13px}.mcp-token-hint span{color:var(--text-3);font-size:12.5px}.mcp-token-box{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;align-items:center;gap:10px;padding:12px 14px;display:flex}.mcp-token-box code{word-break:break-all;min-width:0;color:var(--text);flex:1;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px}.mcp-token-cell{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.mcp-config-box{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.mcp-config-box pre{flex:1;min-width:0;margin:0;overflow:auto}.mcp-config-box pre code{color:var(--text);white-space:pre;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;line-height:1.55}.mcp-config-placeholder{color:var(--danger);background:var(--danger-soft);border-radius:5px;padding:1px 5px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}.zone-create-panel{border-color:var(--border-strong);box-shadow:var(--shadow-md);margin-bottom:16px;overflow:hidden}.zone-create-panel .zone-create-head{border-bottom:1px solid var(--border);background:var(--surface-2);justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.zone-create-panel .zone-create-title{flex-direction:column;gap:2px;display:flex}.zone-create-panel .zone-create-title b{letter-spacing:-.01em;font-size:14px;font-weight:650}.zone-create-panel .zone-create-title span{color:var(--text-3);font-size:12px}.zone-create-panel .zone-create-form{align-items:flex-end;gap:14px;padding:18px;display:flex}.zone-create-panel .zone-create-form .grow{flex:1;min-width:0}.zone-create-panel .zone-create-actions{flex-shrink:0;gap:10px;display:flex}.zone-create-panel .zone-create-actions button{padding:10px 18px}@media (width<=560px){.zone-create-panel .zone-create-form{flex-direction:column;align-items:stretch}.zone-create-panel .zone-create-actions{justify-content:flex-end}}.zone-picker{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;margin-top:4px;display:grid}.zone-opt{border:1px solid var(--border);border-radius:var(--r-sm);cursor:pointer;color:var(--text-2);align-items:center;gap:8px;padding:9px 12px;font-size:13px;transition:border-color .15s,background .15s;display:flex}.zone-opt input{width:auto;accent-color:var(--brand)}.zone-opt.on{border-color:var(--brand);background:var(--brand-soft);color:var(--text);font-weight:600}.hint{color:var(--text-3);margin:6px 0 0;font-size:12.5px}.modal-actions{border-top:1px solid var(--border);justify-content:flex-end;gap:10px;margin-top:20px;padding-top:16px;display:flex}.confirm-dialog{width:420px}.confirm-dialog .confirm-message{color:var(--text-2);word-break:break-word;margin:4px 0 0;font-size:14px;line-height:1.6}.doc-form{width:760px;max-width:92vw}.doc-form-fields{grid-template-columns:1fr 1fr;gap:0 16px;display:grid}.doc-form-fields .field:first-child{grid-column:1/-1}.field-hint{color:var(--text-4);margin-top:4px;font-size:11.5px;display:block}.field-hint.warn{color:var(--danger);font-weight:600}.editor-wrap{border:1px solid var(--border);border-radius:var(--r);margin-top:14px;overflow:hidden}.editor-tabs{border-bottom:1px solid var(--border);background:var(--surface-2);gap:4px;padding:6px 8px;display:flex}.editor-tabs button{color:var(--text-3);border-radius:var(--r-sm);cursor:pointer;background:0 0;border:none;padding:5px 14px;font-size:12.5px}.editor-tabs button.active{background:var(--surface-hover);color:var(--text);font-weight:600}.editor-area{background:var(--surface);width:100%;min-height:300px;font-family:var(--mono);resize:vertical;border:none;border-radius:0;font-size:13px;line-height:1.7}.editor-preview{min-height:300px;max-height:420px;padding:16px 20px;overflow-y:auto}.editor-empty{color:var(--text-4);text-align:center;padding:20px 0;font-size:13px}.form-error{border-radius:var(--r-sm);background:var(--danger-soft,#dc354514);color:var(--danger);margin-top:12px;padding:9px 12px;font-size:13px}.modal-inner .versions li{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.modal-inner .versions li .v-msg{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}@media (width<=640px){.acc-form{grid-template-columns:1fr}.accounts-table{display:block;overflow-x:auto}}.home-page{background:var(--bg);background-image:var(--bg-glow);min-height:100vh;position:relative;overflow-x:hidden}.home-glow{pointer-events:none;background:radial-gradient(1000px 560px at 15% -8%,#6366f124,#0000 60%),radial-gradient(800px 480px at 95% 20%,#8b5cf61f,#0000 55%);position:absolute;inset:0}.home-nav{z-index:20;background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:saturate(160%)blur(14px);backdrop-filter:saturate(160%)blur(14px);border-bottom:1px solid var(--border);position:sticky;top:0}.home-nav-inner{justify-content:space-between;align-items:center;gap:24px;max-width:1120px;height:64px;margin:0 auto;padding:0 24px;display:flex}.home-nav-brand{align-items:center;gap:11px;text-decoration:none;display:flex}.home-nav-brand-text{flex-direction:column;line-height:1.25;display:flex}.home-nav-name{letter-spacing:-.01em;color:var(--text);font-size:15px;font-weight:700}.home-nav-sub{color:var(--text-3);letter-spacing:.02em;font-size:11px;font-weight:500}.home-nav-links{align-items:center;gap:26px;display:flex}.home-nav-links a{color:var(--text-2);font-size:14px;font-weight:500;text-decoration:none;transition:color .15s}.home-nav-links a:hover{color:var(--text);text-decoration:none}.home-nav-actions{align-items:center;gap:10px;display:flex}.home-btn{cursor:pointer;color:var(--text);border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:9px 18px;font-size:14px;font-weight:600;text-decoration:none;transition:all .15s;display:inline-flex}.home-btn.primary{background:var(--grad);color:var(--on-brand);box-shadow:var(--shadow-brand)}.home-btn.primary:hover{filter:brightness(1.06);text-decoration:none}.home-btn.ghost{border-color:var(--border-strong);background:var(--surface);color:var(--text-2)}.home-btn.ghost:hover{background:var(--surface-2);color:var(--text);border-color:#c2c6d4;text-decoration:none}.home-btn.lg{border-radius:12px;padding:13px 26px;font-size:15px}.home-hero{text-align:center;padding:96px 24px 72px;position:relative}.home-hero-inner{max-width:760px;margin:0 auto}.home-hero-badge,.home-sec-badge{background:var(--brand-soft);color:var(--brand-strong);border-radius:999px;align-items:center;gap:7px;margin-bottom:22px;padding:6px 13px;font-size:13px;font-weight:600;display:inline-flex}.home-hero h1{letter-spacing:-.03em;background:linear-gradient(135deg, var(--text) 20%, var(--brand-strong) 90%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(38px,6vw,58px);font-weight:800;line-height:1.12}.home-hero-sub{max-width:560px;color:var(--text-2);margin:24px auto 0;font-size:16.5px;line-height:1.7}.home-hero-cta{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;margin-top:34px;display:flex}.home-section{padding:72px 24px;position:relative}.home-section-alt{background:var(--surface);border-block:1px solid var(--border)}.home-section-inner{max-width:1120px;margin:0 auto}.home-section-head{text-align:center;margin-bottom:44px}.home-section-head h2,.home-security-text h2,.home-cta h2{letter-spacing:-.02em;margin:0;font-size:30px;font-weight:800}.home-section-head p,.home-security-text p,.home-cta p{color:var(--text-3);max-width:520px;margin:10px auto 0;font-size:15px}.home-features{grid-template-columns:repeat(4,1fr);gap:18px;display:grid}.home-feature{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:26px 22px;transition:transform .18s,box-shadow .18s,border-color .18s}.home-feature:hover{box-shadow:var(--shadow-md);border-color:var(--border-strong);transform:translateY(-3px)}.home-feature-icon{background:var(--brand-soft);width:44px;height:44px;color:var(--brand-strong);border-radius:12px;justify-content:center;align-items:center;margin-bottom:16px;display:inline-flex}.home-feature h3{margin:0 0 8px;font-size:16px;font-weight:700}.home-feature p{color:var(--text-3);margin:0;font-size:13.5px;line-height:1.65}.home-collab{grid-template-columns:1fr auto 1fr;align-items:stretch;gap:18px;display:grid}.home-role-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);flex-direction:column;align-items:flex-start;padding:28px 26px;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex}.home-role-card:hover{box-shadow:var(--shadow-md);border-color:var(--border-strong);transform:translateY(-3px)}.home-role-icon{border-radius:12px;justify-content:center;align-items:center;width:46px;height:46px;margin-bottom:14px;display:inline-flex}.home-role-icon.ai{background:color-mix(in srgb, var(--brand-strong) 14%, transparent);color:var(--brand-strong)}.home-role-icon.human{color:#0fa968;background:#10b98124}.home-role-tag{background:var(--brand-soft);color:var(--brand-strong);border-radius:999px;align-items:center;margin-bottom:12px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.home-role-card h3{margin:0 0 8px;font-size:17px;font-weight:700}.home-role-card>p{color:var(--text-3);margin:0 0 16px;font-size:13.5px;line-height:1.65}.home-role-list{flex-direction:column;gap:8px;margin:auto 0 0;padding:0;list-style:none;display:flex}.home-role-list li{color:var(--text-2);align-items:center;gap:8px;font-size:13px;display:flex}.home-role-list li:before{content:"";background:var(--brand-strong);border-radius:50%;flex-shrink:0;width:5px;height:5px}.home-collab-flow{color:var(--text-4);justify-content:center;align-self:center;align-items:center;display:flex}.home-security{grid-template-columns:1fr 1.1fr;align-items:center;gap:56px;display:grid}.home-sec-card{flex-direction:column;gap:12px;display:flex}.home-sec-row{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow-xs);align-items:flex-start;gap:16px;padding:18px 20px;display:flex}.home-sec-row svg{color:var(--brand-strong);flex-shrink:0;margin-top:2px}.home-sec-row div{flex-direction:column;gap:2px;display:flex}.home-sec-row b{font-size:14.5px;font-weight:600}.home-sec-row span{color:var(--text-3);font-size:13px}.home-cta{text-align:center}.home-footer{border-top:1px solid var(--border);background:var(--surface)}.home-footer .home-nav-inner{height:auto;padding-top:22px;padding-bottom:22px}.home-footer-note{color:var(--text-4);font-size:13px}@media (width<=900px){.home-features{grid-template-columns:repeat(2,1fr)}.home-collab{grid-template-columns:1fr}.home-collab-flow{transform:rotate(90deg)}.home-security{grid-template-columns:1fr;gap:32px}}@media (width<=640px){.home-nav-links{display:none}.home-features{grid-template-columns:1fr}.home-hero{padding:60px 20px 48px}.home-section{padding:52px 20px}}
