.cc-root{--cc-bg:#121614;--cc-bg-2:#171d1a;--cc-panel:#1c2420;--cc-panel-2:#26302b;--cc-border:#39463e;--cc-text:#f5f3ec;--cc-text-dim:#adb8b0;--cc-emerald:#287a55;--cc-emerald-2:#6bc48e;--cc-brass:#c9a45a;--cc-brass-2:#e5c77f;--cc-red:#d16555;--cc-amber:#e1a84a;--cc-radius:10px;min-height:100vh;background:radial-gradient(1000px 560px at 88% -12%,#27352d 0,var(--cc-bg) 58%);color:var(--cc-text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.cc-root *{box-sizing:border-box}.cc-app{display:flex;min-height:100vh}.cc-sidebar{width:248px;flex-shrink:0;background:#151b18;border-right:1px solid var(--cc-border);padding:20px 14px;display:flex;flex-direction:column;gap:4px;position:sticky;top:0;height:100vh;overflow:hidden}.cc-nav-scroll{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:4px;margin:0 -4px;padding:0 4px}.cc-nav-scroll::-webkit-scrollbar{width:6px}.cc-nav-scroll::-webkit-scrollbar-thumb{background:var(--cc-border);border-radius:3px}.cc-nav-scroll{scrollbar-width:thin;scrollbar-color:var(--cc-border) transparent}.cc-brand{display:flex;align-items:center;gap:10px;padding:4px 8px 18px}.cc-brand-badge{width:38px;height:38px;border-radius:9px;display:grid;place-items:center;font-size:20px;background:linear-gradient(135deg,var(--cc-brass) 0,#8a6d2c 100%);box-shadow:0 2px 10px rgba(201,162,75,.3)}.cc-brand-name{font-weight:800;letter-spacing:.3px;font-size:15px;line-height:1.1}.cc-brand-sub{font-size:10.5px;color:var(--cc-text-dim);text-transform:uppercase;letter-spacing:1.5px}.cc-nav-btn{display:flex;align-items:center;gap:11px;width:100%;text-align:left;background:transparent;border:0;color:var(--cc-text-dim);cursor:pointer;padding:10px 12px;border-radius:9px;font-size:14px;font-weight:600;transition:background .12s,color .12s}.cc-nav-btn:hover{background:var(--cc-panel);color:var(--cc-text)}.cc-nav-btn.active{background:rgba(107,196,142,.12);color:var(--cc-emerald-2);box-shadow:inset 3px 0 0 var(--cc-emerald-2)}.cc-nav-btn .ico{font-size:17px;width:20px;text-align:center}.cc-main{flex:1;min-width:0;display:flex;flex-direction:column}.cc-topbar{display:flex;align-items:center;justify-content:space-between;padding:calc(17px + env(safe-area-inset-top, 0px)) 30px 17px;border-bottom:1px solid var(--cc-border);position:sticky;top:0;background:rgba(18,22,20,.9);backdrop-filter:blur(16px);z-index:10}.cc-topbar h1{margin:0;font-size:19px;font-weight:750}.cc-topbar .sub{font-size:12.5px;color:var(--cc-text-dim);margin-top:2px}.cc-content{padding:26px 28px 60px;max-width:1200px;width:100%}.cc-card{background:linear-gradient(145deg,rgba(34,43,38,.98),var(--cc-panel));border:1px solid var(--cc-border);border-radius:var(--cc-radius);padding:18px;box-shadow:0 1px 1px rgba(0,0,0,.18),0 8px 24px rgba(0,0,0,.09)}.cc-grid{display:grid;gap:16px}.cc-kpi{background:linear-gradient(145deg,rgba(38,48,43,.98),var(--cc-panel));border:1px solid var(--cc-border);border-radius:var(--cc-radius);padding:16px 18px;box-shadow:0 1px 1px rgba(0,0,0,.18)}.cc-kpi .label{font-size:11.5px;text-transform:uppercase;letter-spacing:.8px;color:var(--cc-text-dim)}.cc-kpi .value{font-size:26px;font-weight:800;margin-top:6px}.cc-kpi .value.green{color:var(--cc-emerald-2)}.cc-kpi .value.amber{color:var(--cc-amber)}.cc-kpi .value.red{color:var(--cc-red)}.cc-btn{display:inline-flex;align-items:center;gap:7px;cursor:pointer;border-radius:8px;padding:9px 15px;font-size:13px;font-weight:700;border:1px solid var(--cc-border);background:var(--cc-panel-2);color:var(--cc-text);transition:filter .12s,background .12s,transform .12s}.cc-btn:hover{filter:brightness(1.12);transform:translateY(-1px)}.cc-btn.primary{background:linear-gradient(135deg,var(--cc-emerald) 0,#2f7d47 100%);border-color:transparent;color:#fff}.cc-btn.brass{background:linear-gradient(135deg,var(--cc-brass) 0,#9c7a2f 100%);border-color:transparent;color:#1a160a}.cc-btn.ghost{background:transparent}.cc-btn.danger{color:var(--cc-red);border-color:#5a2f28}.cc-btn:disabled{opacity:.5;cursor:not-allowed}.cc-btn:disabled:hover{transform:none}.cc-table{width:100%;border-collapse:collapse;font-size:13.5px}.cc-table th{text-align:left;padding:10px 12px;color:var(--cc-text-dim);font-weight:600;font-size:11.5px;text-transform:uppercase;letter-spacing:.6px}.cc-table td,.cc-table th{border-bottom:1px solid var(--cc-border)}.cc-table td{padding:11px 12px}.cc-table tr:hover td{background:var(--cc-bg-2)}.cc-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:20px;font-size:11.5px;font-weight:650;border:1px solid var(--cc-border)}.cc-badge.green{background:rgba(63,155,91,.16);color:var(--cc-emerald-2);border-color:rgba(63,155,91,.4)}.cc-badge.red{background:rgba(196,83,63,.16);color:#e08066;border-color:rgba(196,83,63,.4)}.cc-badge.amber{background:rgba(216,146,58,.16);color:var(--cc-amber);border-color:rgba(216,146,58,.4)}.cc-badge.gray{background:var(--cc-panel-2);color:var(--cc-text-dim)}.cc-input,.cc-select,.cc-textarea{width:100%;background:var(--cc-bg-2);border:1px solid var(--cc-border);color:var(--cc-text);border-radius:9px;padding:10px 12px;font-size:13.5px;font-family:inherit}.cc-input:focus,.cc-select:focus,.cc-textarea:focus{outline:none;border-color:var(--cc-emerald)}.cc-label{font-size:12px;color:var(--cc-text-dim);font-weight:600;margin-bottom:5px;display:block}.cc-field{margin-bottom:14px}.cc-modal-bg{position:fixed;inset:0;background:rgba(0,0,0,.6);display:grid;place-items:center;z-index:50;padding:20px}.cc-modal{background:var(--cc-panel);border:1px solid var(--cc-border);border-radius:16px;padding:24px;width:100%;max-width:540px;max-height:88vh;overflow:auto}.cc-modal h2{margin:0 0 16px;font-size:18px}.cc-login-wrap{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:calc(24px + env(safe-area-inset-top, 0px)) 24px calc(24px + env(safe-area-inset-bottom, 0px))}.cc-login-card{width:100%;max-width:400px;background:var(--cc-panel);border:1px solid var(--cc-border);border-radius:18px;padding:32px}.cc-muted{color:var(--cc-text-dim)}.cc-row{display:flex;gap:10px;align-items:center}.cc-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:20px;flex-wrap:wrap}.cc-page-title{font-size:22px;font-weight:800;letter-spacing:.2px;margin:0;display:flex;align-items:center;gap:10px}.cc-page-sub{font-size:12.5px;color:var(--cc-text-dim);margin-top:5px}.cc-live{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:650;color:var(--cc-emerald-2);background:rgba(63,155,91,.12);border:1px solid rgba(63,155,91,.32);padding:6px 12px;border-radius:20px}.cc-live .dot{width:7px;height:7px;border-radius:50%;background:var(--cc-emerald-2);animation:cc-pulse 2.2s infinite}@keyframes cc-pulse{0%{box-shadow:0 0 0 0 rgba(84,192,116,.55)}70%{box-shadow:0 0 0 6px rgba(84,192,116,0)}to{box-shadow:0 0 0 0 rgba(84,192,116,0)}}.cc-section{font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:1.2px;color:var(--cc-text-dim);margin:4px 2px -2px;display:flex;align-items:center;gap:12px}.cc-section:after{content:"";flex:1;height:1px;background:var(--cc-border)}.cc-inv .cc-card{transition:border-color .15s,box-shadow .15s}.cc-inv .cc-card:hover{border-color:#454b36;box-shadow:0 8px 26px rgba(0,0,0,.3)}.cc-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;background:var(--cc-panel);border:1px solid var(--cc-border);border-radius:var(--cc-radius);padding:12px 14px;margin-bottom:14px}.cc-search{position:relative;flex:1;min-width:200px;max-width:340px}.cc-search input{padding-left:34px}.cc-search .ico{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-size:13px;opacity:.55;pointer-events:none}.cc-toolbar .spacer{flex:1}.cc-num{font-variant-numeric:tabular-nums}.cc-table.cc-sticky thead th{position:sticky;top:0;z-index:1;background:var(--cc-panel-2)}.cc-table.cc-zebra tbody tr:nth-child(2n) td{background:rgba(255,255,255,.014)}.cc-table.cc-sticky tbody tr{transition:background .1s}.cc-meter{display:inline-flex;align-items:center;gap:8px;justify-content:flex-end}.cc-meter .bar{width:44px;height:5px;border-radius:20px;background:var(--cc-bg-2);overflow:hidden;flex-shrink:0}.cc-meter .bar>i{display:block;height:100%;border-radius:20px}.cc-reorder-row{display:grid;grid-template-columns:1fr 58px 46px 48px;gap:8px;align-items:center;padding:7px 0;border-bottom:1px solid var(--cc-border)}.cc-reorder-row .nm{font-size:12.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cc-reorder-row>span{text-align:right;font-size:12.5px;font-weight:700}.cc-reorder-head{border-bottom:1px solid var(--cc-border);padding-bottom:6px}.cc-reorder-head>*{font-size:9.5px!important;font-weight:750!important;text-transform:uppercase;letter-spacing:.5px;color:var(--cc-text-dim)}.cc-reorder-row .pos{color:var(--cc-emerald-2)}.cc-reorder-row .neg{color:#e08066}.cc-reorder-row .dim{color:var(--cc-text-dim)}.cc-skel{background:linear-gradient(90deg,var(--cc-panel) 25%,var(--cc-panel-2) 37%,var(--cc-panel) 63%);background-size:400% 100%;animation:cc-shimmer 1.4s ease infinite;border-radius:10px}@keyframes cc-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.cc-eg{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;align-items:stretch}.cc-eg>[data-span="1"]{grid-column:span 1}.cc-eg>[data-span="2"]{grid-column:span 2}.cc-eg>[data-span="3"]{grid-column:span 3}.cc-eg>[data-span="4"]{grid-column:span 4}.cc-eg>[data-span="5"]{grid-column:span 5}.cc-eg>[data-span="6"]{grid-column:span 6}@media (max-width:1200px){.cc-eg>[data-span="1"]{grid-column:span 2}.cc-eg>[data-span="2"]{grid-column:span 3}}@media (max-width:900px){.cc-eg{grid-template-columns:1fr}.cc-eg>*{grid-column:1/-1!important}}.cc-eg-item.editing{position:relative;outline:1px dashed #4a5138;outline-offset:4px;border-radius:var(--cc-radius)}.cc-eg-item.editing>.cc-card{cursor:grab}.cc-eg-item.editing.dragging{opacity:.45}.cc-eg-item.editing.over{outline-color:var(--cc-emerald);outline-style:solid}.cc-eg-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px;padding:0 2px}.cc-eg-grip{font-size:11px;color:var(--cc-text-dim);font-weight:700;letter-spacing:.3px;user-select:none}.cc-eg-sizes{display:inline-flex;gap:4px}.cc-eg-sz{font-size:11px;font-weight:700;padding:2px 8px;border-radius:7px;border:1px solid var(--cc-border);background:var(--cc-panel);color:var(--cc-text-dim);cursor:pointer;transition:all .12s}.cc-eg-sz:hover{color:var(--cc-text)}.cc-eg-sz.on{background:var(--cc-panel-2);color:var(--cc-emerald-2);border-color:rgba(63,155,91,.4)}.cc-edit-banner{display:flex;align-items:center;gap:10px;background:rgba(201,162,75,.1);border:1px solid rgba(201,162,75,.3);color:var(--cc-brass-2);border-radius:10px;padding:9px 14px;font-size:12.5px;margin-bottom:14px}.cc-eg-item{display:flex;flex-direction:column;min-width:0}.cc-eg-item>.cc-card{flex:1 1 auto;min-height:0}.cc-eg-item.sized>.cc-card{overflow:auto}.cc-rz{position:absolute;z-index:4;touch-action:none}.cc-rz-e{top:8%;right:-4px;width:11px;height:84%;cursor:ew-resize;border-radius:6px}.cc-rz-s{left:8%;bottom:-4px;height:11px;width:84%;cursor:ns-resize;border-radius:6px}.cc-rz-se{right:-5px;bottom:-5px;width:20px;height:20px;cursor:nwse-resize}.cc-rz-e:hover,.cc-rz-s:hover{background:rgba(84,192,116,.35)}.cc-rz-se:after{content:"";position:absolute;right:3px;bottom:3px;width:10px;height:10px;border-right:2px solid var(--cc-text-dim);border-bottom:2px solid var(--cc-text-dim);border-bottom-right-radius:3px}.cc-rz-se:hover:after{border-color:var(--cc-emerald-2)}.cc-spread{display:flex;align-items:center;justify-content:space-between;gap:12px}.cc-spin{width:30px;height:30px;border:3px solid var(--cc-border);border-top-color:var(--cc-emerald);border-radius:50%;animation:cc-rot .8s linear infinite}@keyframes cc-rot{to{transform:rotate(1turn)}}.cc-empty{text-align:center;padding:50px 20px;color:var(--cc-text-dim)}a.cc-link{color:var(--cc-emerald-2);text-decoration:none}a.cc-link:hover{text-decoration:underline}.cc-top-help{width:28px;height:28px;padding:0;justify-content:center;border-radius:50%;font-size:15px;color:var(--cc-brass-2)}.cc-hamburger{display:none;background:transparent;border:1px solid var(--cc-border);color:var(--cc-text);border-radius:8px;font-size:18px;line-height:1;padding:6px 11px;cursor:pointer;flex-shrink:0}.cc-hamburger:hover{background:var(--cc-panel)}.cc-nav-overlay{display:none}@media (max-width:820px){.cc-hamburger{display:inline-flex;align-items:center}.cc-sidebar{position:fixed;top:0;left:0;height:100vh;height:100dvh;width:270px;max-width:84vw;z-index:60;transform:translateX(-100%);transition:transform .22s ease;box-shadow:2px 0 28px rgba(0,0,0,.45);padding-top:calc(20px + env(safe-area-inset-top, 0px));padding-bottom:calc(14px + env(safe-area-inset-bottom, 0px))}.cc-sidebar.open{transform:translateX(0)}.cc-nav-overlay{display:block;position:fixed;inset:0;background:rgba(0,0,0,.55);opacity:0;pointer-events:none;transition:opacity .2s;z-index:55}.cc-nav-overlay.show{opacity:1;pointer-events:auto}.cc-main{width:100%;min-width:0}.cc-content{padding:16px calc(13px + env(safe-area-inset-right, 0px)) calc(56px + env(safe-area-inset-bottom, 0px)) calc(13px + env(safe-area-inset-left, 0px))}.cc-topbar{padding:calc(11px + env(safe-area-inset-top, 0px)) 13px 11px;position:sticky;top:0}.cc-topbar h1{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cc-page-title{font-size:19px}.cc-card{padding:14px;overflow-x:auto;-webkit-overflow-scrolling:touch}table.cc-table{min-width:560px}.cc-input,.cc-select,.cc-textarea{font-size:16px}.cc-kpi .value{font-size:22px}.cc-modal{padding:18px;max-height:84dvh}}@media (max-width:480px){.cc-content{padding:13px calc(10px + env(safe-area-inset-right, 0px)) calc(48px + env(safe-area-inset-bottom, 0px)) calc(10px + env(safe-area-inset-left, 0px))}.cc-search{max-width:none}.cc-page-head{margin-bottom:14px}.cc-toolbar{padding:10px 11px}.cc-mastersheet{display:none}}.cc-install-hint{position:fixed;left:12px;right:12px;z-index:54;bottom:calc(12px + env(safe-area-inset-bottom, 0px));display:flex;align-items:center;gap:10px;background:linear-gradient(145deg,rgba(38,48,43,.98),var(--cc-panel));border:1px solid rgba(201,162,75,.45);border-radius:12px;padding:11px 13px;font-size:13px;line-height:1.4;color:var(--cc-text);box-shadow:0 10px 34px rgba(0,0,0,.45)}.cc-install-hint .txt{flex:1}.cc-install-hint b{color:var(--cc-brass-2)}.cc-install-hint .x{background:transparent;border:0;color:var(--cc-text-dim);font-size:15px;padding:4px 6px;cursor:pointer;flex-shrink:0}.cc-tasks{display:grid;gap:14px}.cc-kb-modal .cc-btn.sm,.cc-tasks .cc-btn.sm{padding:6px 11px;font-size:12.5px}.cc-tasks-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.cc-seg{display:inline-flex;gap:4px;background:var(--cc-bg-2);border:1px solid var(--cc-border);border-radius:11px;padding:4px;flex-wrap:wrap}.cc-seg button{display:inline-flex;align-items:center;gap:7px;border:0;background:transparent;color:var(--cc-text-dim);padding:7px 13px;border-radius:8px;font-size:13px;font-weight:650;cursor:pointer;transition:background .12s,color .12s}.cc-seg button:hover{color:var(--cc-text)}.cc-seg button.active{background:var(--cc-panel-2);color:#fff}.cc-seg button .dot{width:8px;height:8px;border-radius:50%}.cc-kanban{display:grid;grid-template-columns:repeat(4,minmax(220px,1fr));gap:12px;align-items:start}.cc-kb-col{background:var(--cc-bg-2);border:1px solid var(--cc-border);border-radius:var(--cc-radius);padding:10px;display:flex;flex-direction:column;gap:8px;min-height:220px;transition:border-color .12s,background .12s}.cc-kb-col.drag-over{border-color:var(--cc-emerald-2);background:#16211b}.cc-kb-colhead{display:flex;align-items:center;justify-content:space-between;padding:2px 4px 4px;font-size:11.5px;font-weight:750;text-transform:uppercase;letter-spacing:1px;color:var(--cc-text-dim)}.cc-kb-colhead .count{background:var(--cc-panel-2);border-radius:10px;padding:1px 8px;font-size:11px;font-variant-numeric:tabular-nums}.cc-kb-cards{display:flex;flex-direction:column;gap:8px;min-height:40px}.cc-kb-card{background:var(--cc-panel);border-left:1px solid var(--cc-border);border:1px solid var(--cc-border);border-left-width:3px;border-radius:10px;padding:10px 11px;cursor:grab;transition:filter .12s,opacity .12s}.cc-kb-card:hover{filter:brightness(1.12)}.cc-kb-card.dragging{opacity:.45;cursor:grabbing}.cc-kb-card.is-done .cc-kb-title{text-decoration:line-through;opacity:.6}.cc-kb-chips{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:6px}.cc-kb-chip{display:inline-flex;align-items:center;border:1px solid;border-radius:20px;padding:1px 8px;font-size:10.5px;font-weight:700;letter-spacing:.3px}.cc-kb-title{font-size:13px;font-weight:680;line-height:1.35}.cc-kb-notes{font-size:11.5px;color:var(--cc-text-dim);margin-top:4px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-line}.cc-kb-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px;font-size:11px}.cc-kb-owner{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:10.5px;font-weight:800}.cc-kb-empty{border:1px dashed var(--cc-border);border-radius:10px;padding:14px;text-align:center;font-size:11.5px}.cc-kb-add,.cc-kb-empty{color:var(--cc-text-dim)}.cc-kb-add{border:0;background:transparent;font-size:12px;font-weight:650;padding:6px;border-radius:8px;cursor:pointer;text-align:left}.cc-kb-add:hover{background:var(--cc-panel);color:var(--cc-text)}.cc-kb-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:50;display:grid;place-items:center;padding:20px}.cc-kb-modal{width:100%;max-width:480px;background:var(--cc-panel);border:1px solid var(--cc-border);border-radius:16px;padding:22px;max-height:90vh;overflow-y:auto}.cc-mig-row{display:flex;align-items:flex-start;gap:10px;padding:9px 10px;border:1px solid var(--cc-border);border-radius:10px;cursor:pointer;transition:border-color .12s,background .12s}.cc-mig-row:hover{border-color:var(--cc-emerald)}.cc-mig-row.sel{border-color:var(--cc-emerald-2);background:rgba(107,196,142,.08)}.cc-mig-row input{margin-top:3px;flex-shrink:0}@media (max-width:1100px){.cc-kanban{grid-template-columns:repeat(2,minmax(200px,1fr))}}@media (max-width:620px){.cc-kanban{grid-template-columns:1fr}}