.twlv2{--brand:#791127;--brand2:#a11835;--accent:#d0576e;--accent-soft:#d0576e24;--gold:#d9a648;--gold-soft:#d9a64824;--bg:#0f090b;--bg2:#150d10;--panel:#1a1013;--panel2:#22151a;--panel3:#2c1b21;--line:color-mix(in srgb, var(--text) 7%, transparent);--line2:color-mix(in srgb, var(--text) 11%, transparent);--text:#f4eaeb;--muted:#b39aa0;--muted2:#82696f;--green:#46c08a;--amber:#e0a83e;--danger:#ff6f61;--blue:#6f97da;--purple:#b183d6;--shadow:0 12px 34px #00000073;--motion-fast:.1s;--motion-normal:.16s;--motion-panel:.2s;--motion-slow:.24s;--motion-ease:cubic-bezier(.16, 1, .3, 1);font-family:var(--font-inter), system-ui, sans-serif;color:var(--text);-webkit-font-smoothing:antialiased;min-height:100vh;transition:background-color var(--motion-slow) var(--motion-ease), color var(--motion-slow) var(--motion-ease);background:radial-gradient(1200px 700px at 82% -10%, #a118351a, transparent 60%), radial-gradient(900px 600px at 5% 110%, #d9a6480d, transparent 55%), var(--bg);font-size:13px;line-height:1.45}.twlv2[data-mode=light]{--line:#14141817;--line2:#14141824;--text:#17171a;--muted:#5b5b64;--muted2:#86868f;--shadow:0 12px 28px #1414181a;background:var(--bg)}.twlv2[data-mode=light] .nav a.active{background:linear-gradient(135deg, var(--brand2), var(--accent));color:#fff;-webkit-backdrop-filter:none;box-shadow:inset 0 0 0 1px #79112740}.twlv2[data-mode=light] .nav a.active .ico{color:#fff}.twlv2 *{box-sizing:border-box}.twlv2 button{cursor:pointer;color:inherit;font-family:inherit}.twlv2 .serif{font-family:var(--font-fraunces), serif}.twlv2 .mono{font-family:var(--font-space-grotesk), sans-serif}.twlv2 .app{z-index:1;grid-template-columns:238px 1fr;min-height:100vh;display:grid;position:relative}.twlv2 .sidebar{background:linear-gradient(180deg, color-mix(in srgb, var(--panel) 86%, transparent), color-mix(in srgb, var(--bg) 90%, transparent));border-right:1px solid var(--line);-webkit-backdrop-filter:blur(20px)saturate(1.2);flex-direction:column;height:100vh;padding:18px 14px;display:flex;position:sticky;top:0;overflow-y:auto}.twlv2 .nav a{transition:background var(--motion-fast) var(--motion-ease), color var(--motion-fast) var(--motion-ease), transform var(--motion-fast) var(--motion-ease)}.twlv2 .nav a:hover{transform:translate(2px)}.twlv2 .brand{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:4px 6px 16px;display:flex}.twlv2 .brand .mark{background:linear-gradient(135deg, var(--brand), var(--accent));color:#fff;width:48px;height:48px;font-family:var(--font-fraunces), serif;border-radius:9px;flex-shrink:0;place-items:center;font-size:18px;font-weight:700;display:grid;box-shadow:0 6px 18px #79112780}.twlv2 .brand .mark:has(img){box-shadow:none;background:0 0}.twlv2 .brand h1{letter-spacing:1px;white-space:nowrap;text-overflow:ellipsis;font-size:18px;font-weight:800;overflow:hidden}.twlv2 .brand .sub{letter-spacing:2px;color:var(--gold);margin-top:1px;font-size:8px;font-weight:700}.twlv2 .nav{flex-direction:column;gap:3px;margin-top:12px;display:flex}.twlv2 .nav a{color:var(--muted);transition:var(--motion-fast) var(--motion-ease);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:12px;align-items:center;gap:11px;width:100%;padding:9px 12px;font-size:12.5px;font-weight:500;text-decoration:none;display:flex;position:relative}.twlv2 .nav a .ico{opacity:.9;flex-shrink:0;width:17px;height:17px}.twlv2 .nav a:hover{background:color-mix(in srgb, var(--text) 4.5%, transparent);color:var(--text)}.twlv2 .nav a.active{color:#ffdfe4;-webkit-backdrop-filter:blur(8px);background:linear-gradient(135deg,#a1183552,#d0576e29);box-shadow:inset 0 0 0 1px #d0576e4d}.twlv2 .nav a.active .ico{opacity:1;color:var(--accent)}.twlv2 .nav .badge{background:var(--accent);color:#2a0910;border-radius:20px;margin-left:auto;padding:1px 7px;font-size:9.5px;font-weight:800}.twlv2 .nav .sec{letter-spacing:1.5px;color:var(--muted2);padding:11px 12px 3px;font-size:8.5px;font-weight:700}.twlv2 .side-profile{border-top:1px solid var(--line);align-items:center;gap:11px;margin-top:12px;padding:12px;display:flex}.twlv2 .side-profile .av{background:linear-gradient(135deg, var(--brand), var(--accent));color:#fff;border-radius:12px;flex-shrink:0;place-items:center;width:42px;height:42px;font-weight:700;display:grid}.twlv2 .side-profile .nm{font-size:13px;font-weight:700}.twlv2 .side-profile .rl{color:var(--muted);font-size:11px}.twlv2 .side-profile .on{color:var(--green);align-items:center;gap:5px;margin-top:2px;font-size:10px;display:flex}.twlv2 .dot{background:var(--green);width:6px;height:6px;box-shadow:0 0 6px var(--green);border-radius:50%}.twlv2 .quote{text-align:center;margin-top:auto;padding:14px 10px 4px}.twlv2 .quote p{color:var(--muted);font-size:11.5px;line-height:1.9;font-family:var(--font-fraunces), serif;font-style:italic}.twlv2 .quote .sig{font-family:var(--font-fraunces), serif;color:var(--gold);margin-top:4px;font-size:22px;font-style:italic;transform:rotate(-4deg)}.twlv2 .main{flex-direction:column;min-width:0;display:flex}.twlv2 .appbar{z-index:20;background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:13px 24px;display:flex;position:sticky;top:0}.twlv2 .appbar-menu.iconbtn{flex-shrink:0;display:none}.twlv2 .appbar .crumb{color:var(--muted2);letter-spacing:1px;font-size:10.5px;font-weight:600}.twlv2 .appbar h2{font-family:var(--font-fraunces), serif;font-size:21px;font-weight:700}.twlv2 .appbar .spacer{flex:1}.twlv2 .appbar .clock{font-family:var(--font-space-grotesk), sans-serif;flex-direction:column;align-items:flex-end;line-height:1.25;display:flex}.twlv2 .appbar .clock .clock-date{color:var(--muted);letter-spacing:.02em;font-size:10.5px}.twlv2 .appbar .clock .clock-time{color:var(--gold);font-size:13px}.twlv2 .kbtn{background:var(--panel2);border:1px solid var(--line2);color:var(--muted);border-radius:11px;align-items:center;gap:7px;padding:7px 12px;font-size:11.5px;display:flex}.twlv2 .kbtn:hover{color:var(--text);border-color:var(--accent)}.twlv2 .kbtn kbd{font-family:var(--font-space-grotesk), sans-serif;background:color-mix(in srgb, var(--text) 9%, transparent);border-radius:5px;padding:1px 6px;font-size:10px}.twlv2 .iconbtn{background:var(--panel2);border:1px solid var(--line2);border-radius:11px;place-items:center;width:36px;height:36px;display:grid;position:relative}.twlv2 .iconbtn:hover{border-color:var(--accent)}.twlv2 .iconbtn svg{width:17px;height:17px;color:var(--muted)}.twlv2 .iconbtn .ncount{background:var(--danger);color:#fff;border-radius:9px;place-items:center;min-width:16px;height:16px;padding:0 4px;font-size:9px;font-weight:800;display:grid;position:absolute;top:-5px;right:-5px}.twlv2 .roledd{position:relative}.twlv2 .rolebtn{background:var(--gold-soft);color:var(--gold);border:1px solid #d9a6484d;border-radius:11px;align-items:center;gap:8px;padding:7px 12px;font-size:11.5px;font-weight:600;display:flex}.twlv2 .rolebtn svg{width:12px;height:12px}.twlv2 .ddmenu{background:var(--panel3);border:1px solid var(--line2);box-shadow:var(--shadow);z-index:60;border-radius:13px;min-width:210px;padding:7px;position:absolute;top:calc(100% + 8px);right:0}.twlv2 .ddmenu button{text-align:left;width:100%;color:var(--muted);border-radius:9px;padding:9px 11px;font-size:12px;display:block}.twlv2 .ddmenu button:hover{background:color-mix(in srgb, var(--text) 6%, transparent);color:var(--text)}.twlv2 .ddmenu button.sel{color:var(--gold)}.twlv2 .ddmenu .dh{letter-spacing:1px;color:var(--muted2);padding:6px 11px;font-size:9px;font-weight:700}.twlv2 .feeditem{border-radius:9px;gap:9px;padding:9px 11px;font-size:11.5px;display:flex}.twlv2 .feeditem:hover{background:color-mix(in srgb, var(--text) 4%, transparent)}.twlv2 .feeditem .fdot{background:var(--accent);border-radius:50%;flex-shrink:0;width:6px;height:6px;margin-top:5px}.twlv2 .feeditem .ft{color:var(--muted2);white-space:nowrap;margin-left:auto;font-size:9.5px}.twlv2 .view{flex-direction:column;gap:18px;padding:22px 24px 44px;display:flex}.twlv2:not(.reduce-motion) .view{animation:twlv2fade var(--motion-slow) var(--motion-ease)}@keyframes twlv2fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.twlv2 .tab-fade{flex-direction:column;gap:18px;display:flex}.twlv2:not(.reduce-motion) .view>.tab-fade{animation:twlv2tabfade var(--motion-normal) var(--motion-ease)}@keyframes twlv2tabfade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.twlv2:not(.reduce-motion) .view>*{animation:twlv2viewitem var(--motion-slow) var(--motion-ease) both}.twlv2:not(.reduce-motion) .view>:first-child{animation-delay:20ms}.twlv2:not(.reduce-motion) .view>:nth-child(2){animation-delay:70ms}.twlv2:not(.reduce-motion) .view>:nth-child(3){animation-delay:.12s}.twlv2:not(.reduce-motion) .view>:nth-child(4){animation-delay:.17s}.twlv2:not(.reduce-motion) .view>:nth-child(5){animation-delay:.22s}.twlv2:not(.reduce-motion) .view>:nth-child(6){animation-delay:.27s}.twlv2:not(.reduce-motion) .view>:nth-child(n+7){animation-delay:.32s}@keyframes twlv2viewitem{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.twlv2 .panel{background:linear-gradient(180deg, color-mix(in srgb, var(--panel3) 55%, transparent), color-mix(in srgb, var(--panel) 55%, transparent));border:1px solid var(--line);-webkit-backdrop-filter:blur(18px)saturate(1.15);transition:border-color var(--motion-panel) var(--motion-ease), transform var(--motion-panel) var(--motion-ease);border-radius:18px;min-width:0;padding:18px 20px}.twlv2 .p-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:15px;display:flex}.twlv2 .p-head h3{align-items:center;gap:9px;font-size:14px;font-weight:700;display:flex}.twlv2 .p-head h3 .ico{width:17px;height:17px;color:var(--accent)}.twlv2 .link{color:var(--gold);cursor:pointer;background:0 0;border:none;font-size:11px;font-weight:600}.twlv2 .link:hover{text-decoration:underline}.twlv2 .grid2{gap:16px;display:grid}.twlv2 .pill{white-space:nowrap;transition:background var(--motion-fast) var(--motion-ease), color var(--motion-fast) var(--motion-ease), border-color var(--motion-fast) var(--motion-ease);border-radius:20px;align-items:center;gap:5px;padding:3px 10px;font-size:10.5px;font-weight:600;display:inline-flex}.twlv2 .bar{background:color-mix(in srgb, var(--text) 9%, transparent);border-radius:6px;height:6px;overflow:hidden}.twlv2 .bar i{height:100%;transition:width var(--motion-slow) var(--motion-ease);border-radius:6px;display:block}.twlv2 .kpis{grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:14px;display:grid}.twlv2 .kpi{background:var(--panel);border:1px solid var(--line);cursor:pointer;-webkit-backdrop-filter:blur(14px)saturate(1.15);transition:transform var(--motion-fast) var(--motion-ease), border-color var(--motion-fast) var(--motion-ease), box-shadow var(--motion-fast) var(--motion-ease);border-radius:16px;padding:16px 17px;position:relative;overflow:hidden}.twlv2 .kpi:hover{border-color:var(--line2);transform:translateY(-3px);box-shadow:0 12px 28px #00000059}.twlv2 .kpi:before{content:"";background:var(--c);width:3px;position:absolute;top:0;bottom:0;left:0}.twlv2 .kpi .lab{letter-spacing:1.2px;color:var(--muted);justify-content:space-between;align-items:center;font-size:9.5px;font-weight:700;display:flex}.twlv2 .kpi .lab .ico{width:18px;height:18px;color:var(--c)}.twlv2 .kpi .num{font-family:var(--font-space-grotesk), sans-serif;margin:7px 0 3px;font-size:28px;font-weight:700}.twlv2 .kpi .meta{color:var(--muted);font-size:11px}.twlv2 .kpi .meta.up{color:var(--green)}.twlv2 .kpi .meta.warn{color:var(--danger)}@media (max-width:640px){.twlv2 .kpis{grid-template-columns:repeat(2,1fr);gap:8px}.twlv2 .kpi{padding:12px 13px}.twlv2 .kpi .num{font-size:20px}.twlv2 .kpi .lab .ico{width:14px;height:14px}}.twlv2 table.tbl{border-collapse:collapse;width:100%;font-size:12.5px}.twlv2 .tbl th{text-align:left;letter-spacing:1px;color:var(--muted2);border-bottom:1px solid var(--line2);padding:9px 12px;font-size:10px;font-weight:700}.twlv2 .tbl td{border-bottom:1px solid var(--line);padding:11px 12px}.twlv2 .tbl tr:last-child td{border-bottom:none}.twlv2 .tbl tbody tr:hover{background:color-mix(in srgb, var(--text) 2.5%, transparent)}.twlv2 .row-click{cursor:pointer}.twlv2 .row-active{background:var(--accent-soft)}.twlv2 .subtabs{flex-wrap:wrap;gap:8px;margin-bottom:2px;display:flex}.twlv2 .subtab{color:var(--muted);background:var(--panel2);border:1px solid var(--line);transition:background var(--motion-normal) var(--motion-ease), color var(--motion-normal) var(--motion-ease);border-radius:22px;padding:8px 16px;font-size:12px;font-weight:600}.twlv2 .subtab:hover{color:var(--text)}.twlv2 .subtab.on{background:linear-gradient(135deg, var(--brand2), var(--accent));color:#fff;border-color:#0000;box-shadow:0 4px 12px #a1183559}.twlv2 .chip-btn{background:var(--accent-soft);color:var(--accent);transition:var(--motion-fast) var(--motion-ease);border:none;border-radius:11px;padding:8px 15px;font-size:12px;font-weight:600}.twlv2 .chip-btn:hover{background:#d0576e3d}.twlv2 .mini{color:var(--muted);font-size:11px}.twlv2 .two{grid-template-columns:1fr 1fr;gap:16px;display:grid}.twlv2 .three{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.twlv2 .card-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;display:grid}.twlv2 .mini-card{background:var(--panel);border:1px solid var(--line);transition:transform var(--motion-fast) var(--motion-ease), border-color var(--motion-fast) var(--motion-ease), box-shadow var(--motion-fast) var(--motion-ease);cursor:pointer;-webkit-backdrop-filter:blur(14px)saturate(1.15);border-radius:15px;padding:15px}.twlv2 .mini-card:hover{border-color:var(--line2);transform:translateY(-2px);box-shadow:0 10px 24px #0000004d}.twlv2 .stat-line{border-bottom:1px solid var(--line);justify-content:space-between;padding:7px 0;font-size:12.5px;display:flex}.twlv2 .stat-line:last-child{border-bottom:none}.twlv2 .stat-line b{font-family:var(--font-space-grotesk), sans-serif}.twlv2 .badge-num{background:color-mix(in srgb, var(--text) 9%, transparent);border-radius:20px;padding:1px 9px;font-size:10px;font-weight:800}.twlv2 .avatar{background:linear-gradient(135deg, var(--brand), var(--accent));color:#fff;border-radius:10px;flex-shrink:0;place-items:center;width:32px;height:32px;font-size:11px;font-weight:700;display:grid}.twlv2 .num-in{background:var(--panel2);border:1px solid var(--line2);width:110px;color:var(--text);font-family:var(--font-space-grotesk), sans-serif;text-align:right;border-radius:9px;padding:8px 10px;font-size:12.5px}.twlv2 .dept-tile{background:var(--panel);border:1px solid var(--line);cursor:pointer;transition:transform var(--motion-fast) var(--motion-ease), border-color var(--motion-fast) var(--motion-ease), box-shadow var(--motion-fast) var(--motion-ease);-webkit-backdrop-filter:blur(14px)saturate(1.15);border-radius:16px;flex-direction:column;gap:10px;padding:16px;display:flex}.twlv2 .dept-tile:hover{border-color:var(--accent);transform:translateY(-3px);box-shadow:0 10px 24px #0000004d}.twlv2 .dept-tile .dt-ico{width:40px;height:40px;color:var(--k);background:color-mix(in srgb, var(--k) 15%, transparent);border-radius:12px;place-items:center;display:grid}.twlv2 .dept-tile .dt-ico svg{width:20px;height:20px}.twlv2 .empty{text-align:center;color:var(--muted2);padding:24px 0;font-size:12px}.twlv2 .sched .item{cursor:pointer;border-radius:10px;grid-template-columns:56px 1fr;align-items:center;gap:12px;padding:9px 6px;display:grid}.twlv2 .sched .item:hover{background:color-mix(in srgb, var(--text) 3%, transparent)}.twlv2 .sched .t{font-family:var(--font-space-grotesk), sans-serif;color:var(--muted);padding-left:14px;font-size:11px;position:relative}.twlv2 .sched .t:before{content:"";background:var(--k);width:7px;height:7px;box-shadow:0 0 8px var(--k);border-radius:50%;position:absolute;top:50%;left:0;transform:translateY(-50%)}.twlv2 .sched .ti{font-size:12.5px;font-weight:600}.twlv2 .sched .ds{color:var(--muted);font-size:10.5px}.twlv2 .pipe .row{background:color-mix(in srgb, var(--text) 2%, transparent);border:1px solid var(--line);cursor:pointer;transition:var(--motion-fast) var(--motion-ease);border-radius:12px;grid-template-columns:1fr auto;align-items:center;gap:12px;margin-bottom:9px;padding:11px;display:grid}.twlv2 .pipe .row:hover{border-color:var(--accent)}.twlv2 .pipe .pn{font-size:12.5px;font-weight:700}.twlv2 .pipe .ps{color:var(--muted);font-size:10.5px}.twlv2 .pct{font-family:var(--font-space-grotesk), sans-serif;color:var(--accent);font-size:18px;font-weight:700}.twlv2 .pct.zero{color:var(--muted2)}.twlv2 .alert{border-bottom:1px solid var(--line);gap:11px;padding:10px 2px;display:flex;position:relative}.twlv2 .alert:last-child{border-bottom:none}.twlv2 .alert .ic{border-radius:9px;flex-shrink:0;place-items:center;width:30px;height:30px;display:grid}.twlv2 .alert .ic svg{width:15px;height:15px}.twlv2 .alert .at{font-size:12px;font-weight:600}.twlv2 .alert .ad{color:var(--muted);margin-top:2px;font-size:10.5px}.twlv2 .alert .ag{color:var(--muted2);margin-left:auto;font-size:9.5px}.twlv2 .chart-wrap{height:150px;margin-top:4px}.twlv2 .chart-wrap svg{width:100%;height:100%;overflow:visible}.twlv2 .xlab{color:var(--muted2);justify-content:space-between;margin-top:4px;font-size:9.5px;display:flex}.twlv2 .deptstrip{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;display:grid}.twlv2 .ds-card{background:var(--panel);border:1px solid var(--line);cursor:pointer;transition:transform var(--motion-fast) var(--motion-ease), border-color var(--motion-fast) var(--motion-ease), box-shadow var(--motion-fast) var(--motion-ease);-webkit-backdrop-filter:blur(14px)saturate(1.15);border-radius:14px;padding:13px 15px}.twlv2 .ds-card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 10px 22px #00000047}.twlv2 .ds-card .dn{color:var(--muted);align-items:center;gap:7px;font-size:11px;font-weight:600;display:flex}.twlv2 .ds-card .dn .ico{width:15px;height:15px;color:var(--accent)}.twlv2 .ds-card .dv{font-family:var(--font-space-grotesk), sans-serif;margin-top:5px;font-size:20px;font-weight:700}.twlv2 .ds-card .ds-load{border-radius:20px;margin-top:8px;padding:2px 8px;font-size:9.5px;font-weight:700;display:inline-block}.twlv2 .ds-card .dm{color:var(--muted2);margin-top:1px;font-size:10px}.twlv2 .kanban{grid-template-columns:repeat(6,1fr);gap:12px;display:grid}@media (max-width:900px){.twlv2 .kanban{grid-template-columns:none;grid-auto-columns:220px;grid-auto-flow:column;padding-bottom:6px;overflow-x:auto}}.twlv2 .kcol{background:color-mix(in srgb, var(--text) 2%, transparent);border:1px solid var(--line);min-height:120px;transition:var(--motion-fast) var(--motion-ease);-webkit-backdrop-filter:blur(12px)saturate(1.1);border-radius:15px;padding:12px}.twlv2 .kcol.dragover{border-color:var(--accent);background:var(--accent-soft)}.twlv2 .kcol .kh{border-bottom:2px solid var(--kc);justify-content:space-between;align-items:center;margin-bottom:11px;padding-bottom:9px;display:flex}.twlv2 .kcol .knm{letter-spacing:.8px;color:var(--kc);font-size:10.5px;font-weight:800}.twlv2 .kcol .kct{background:color-mix(in srgb, var(--text) 8%, transparent);border-radius:20px;padding:1px 8px;font-size:10px;font-weight:700}.twlv2 .kcards{flex-direction:column;gap:9px;min-height:28px;display:flex}.twlv2 .kcard{background:color-mix(in srgb, var(--panel2) 70%, transparent);border:1px solid var(--line2);border-left:3px solid var(--kc);cursor:grab;transition:transform var(--motion-fast) var(--motion-ease), box-shadow var(--motion-fast) var(--motion-ease), border-color var(--motion-fast) var(--motion-ease);-webkit-backdrop-filter:blur(12px)saturate(1.1);border-radius:11px;padding:11px}.twlv2 .kcard:hover{border-color:var(--kc);transform:translateY(-1px);box-shadow:0 10px 20px #0000002e}.twlv2 .kcard.dragging{opacity:.4}.twlv2 .kcard .ct{font-size:12px;font-weight:600}.twlv2 .kcard .cs{color:var(--muted);margin-top:3px;font-size:10.5px}.twlv2 .kcard .cd{color:var(--muted2);margin-top:5px;font-size:10px}.twlv2 .kcard .cd b{font-weight:600}.twlv2 .kcard .cd.due b{color:var(--danger)}.twlv2 .kcard .prog{background:color-mix(in srgb, var(--text) 8%, transparent);border-radius:4px;height:4px;margin-top:7px;overflow:hidden}.twlv2 .kcard .prog i{background:var(--amber);height:100%;display:block}.twlv2 .addtask{text-align:center;width:100%;color:var(--muted);border-top:1px dashed var(--line2);background:0 0;border-bottom:none;border-left:none;border-right:none;margin-top:9px;padding:8px;font-size:11px}.twlv2 .addtask:hover{color:var(--accent)}.twlv2 .kcard .ctop{justify-content:space-between;align-items:center;gap:6px;margin-bottom:6px;display:flex}.twlv2 .kcard .cprio{letter-spacing:.4px;text-transform:uppercase;border-radius:20px;padding:2px 7px;font-size:9px;font-weight:800}.twlv2 .ctags{flex-wrap:wrap;gap:5px;margin-top:7px;display:flex}.twlv2 .ctag{background:color-mix(in srgb, var(--text) 7%, transparent);color:var(--muted);border-radius:20px;padding:2px 8px;font-size:9.5px;font-weight:700}.twlv2 .kcard .cfoot{justify-content:space-between;align-items:center;gap:8px;margin-top:9px;display:flex}.twlv2 .kcard .cav{background:linear-gradient(135deg, var(--brand), var(--accent));color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:20px;height:20px;font-size:8.5px;font-weight:800;display:grid}.twlv2 .kcard .cproj{color:var(--muted);align-items:center;gap:4px;font-size:9.5px;display:flex}.twlv2 .filterbar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.twlv2 .filterbar input[type=search]{background:var(--panel2);border:1px solid var(--line2);color:var(--text);border-radius:9px;min-width:200px;padding:8px 12px;font-size:12.5px}.twlv2 .filterbar select{background:var(--panel2);border:1px solid var(--line2);color:var(--text);border-radius:9px;padding:8px 10px;font-size:12.5px}.twlv2 .trip-map{border:1px solid var(--line);border-radius:10px;width:100%;height:260px;margin:10px 0;overflow:hidden}.twlv2 .gantt{overflow-x:auto}.twlv2 .gantt .grow{grid-template-columns:180px 1fr;align-items:center;gap:12px;padding:7px 0;display:grid}.twlv2 .gantt .glabel{font-size:12px;font-weight:600}.twlv2 .gantt .gs{color:var(--muted);font-size:10px}.twlv2 .gantt .gtrack{background:color-mix(in srgb, var(--text) 3%, transparent);border:1px solid var(--line);border-radius:8px;min-width:480px;height:26px;position:relative}.twlv2 .gantt .gbar{color:#fff;border-radius:7px;align-items:center;padding:0 8px;font-size:10px;font-weight:600;display:flex;position:absolute;top:3px;bottom:3px;overflow:hidden;box-shadow:0 2px 8px #0000004d}.twlv2 .gantt .ghead{grid-template-columns:180px 1fr;gap:12px;margin-bottom:6px;display:grid}.twlv2 .gantt .gweeks{min-width:480px;display:flex}.twlv2 .gantt .gweeks span{color:var(--muted2);text-align:center;border-left:1px solid var(--line);flex:1;font-size:9px}.twlv2 .overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background:#0a0507b8;place-items:center;display:grid;position:fixed;inset:0}body:has(.overlay){overflow:hidden}.twlv2 .modal{background:color-mix(in srgb, var(--panel) 92%, transparent);border:1px solid var(--line2);width:560px;max-width:92vw;box-shadow:var(--shadow);animation:twlv2pop var(--motion-panel) var(--motion-ease);-webkit-backdrop-filter:blur(24px)saturate(1.2);border-radius:18px;flex-direction:column;max-height:88vh;display:flex;overflow:hidden}.twlv2 .overlay{-webkit-backdrop-filter:blur(6px);animation:twlv2fadein var(--motion-panel) var(--motion-ease)}.qe-field-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.qe-line-head{grid-template-columns:2fr 2fr 60px 70px 90px 90px 28px;gap:6px;display:grid}.qe-line-row{grid-template-columns:2fr 2fr 60px 70px 90px 90px 28px;align-items:center;gap:6px;display:grid}@media (max-width:640px){.qe-field-grid{grid-template-columns:repeat(2,1fr)}.qe-line-head{display:none}.qe-line-row{border-bottom:1px solid var(--line);grid-template-columns:1fr;gap:6px;margin-bottom:10px;padding-bottom:10px}.qe-line-row .qe-remove{justify-self:end}}@keyframes twlv2fadein{0%{opacity:0}to{opacity:1}}@keyframes twlv2pop{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@keyframes twlv2popout{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.94)}}@keyframes twlv2fadeout{0%{opacity:1}to{opacity:0}}.twlv2 .palette-ov.closing{animation:twlv2fadeout var(--motion-panel) var(--motion-ease) forwards}.twlv2 .palette.closing{animation:twlv2popout var(--motion-panel) var(--motion-ease) forwards}.twlv2 .modal .mh{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.twlv2 .modal .mh h3{font-size:15px;font-weight:700;font-family:var(--font-fraunces), serif}.twlv2 .modal .mh .close{color:var(--muted);background:0 0;border:none;font-size:20px}.twlv2 .modal .mb{padding:18px 20px;overflow-y:auto}.twlv2 .modal label,.twlv2 form label{color:var(--muted);margin:13px 0 6px;font-size:11px;font-weight:600;display:block}.twlv2 .modal label:first-child,.twlv2 form label:first-child{margin-top:0}.twlv2 .modal input,.twlv2 .modal select,.twlv2 .modal textarea,.twlv2 form input,.twlv2 form select,.twlv2 form textarea{background:var(--panel2);border:1px solid var(--line2);width:100%;color:var(--text);border-radius:10px;padding:10px 12px;font-family:inherit;font-size:13px}.twlv2 .modal textarea,.twlv2 form textarea{resize:vertical;min-height:64px}.twlv2 input[type=date]::-webkit-calendar-picker-indicator{filter:invert()brightness(1.6);cursor:pointer}.twlv2 input[type=date],.twlv2 select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.twlv2[data-mode=light] input[type=date],.twlv2[data-mode=light] select{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.twlv2 select{background:var(--panel2);border:1px solid var(--line2);color:var(--text);border-radius:9px;padding:8px 10px;font-family:inherit;font-size:12.5px}.twlv2 .modal .mf{border-top:1px solid var(--line);justify-content:flex-end;align-items:center;gap:10px;padding:14px 20px;display:flex}.twlv2 .fgrid{grid-template-columns:1fr 1fr;column-gap:12px;display:grid}.twlv2 .fgrid .ffull{grid-column:1/-1}.twlv2 .fgrid .fhalf{grid-column:span 1}.twlv2 .fsection{border-bottom:1px solid var(--line);grid-column:1/-1;margin:18px 0 4px;padding-bottom:7px}.twlv2 .fsection:first-child{margin-top:0}.twlv2 .fsection>span{letter-spacing:.9px;text-transform:uppercase;color:var(--gold);font-size:10.5px;font-weight:800}.twlv2 .fsection .mini{margin-top:3px}.twlv2 .fgrid label{margin-top:12px}.twlv2 .dimrow{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.twlv2 .dimrow span{display:block;position:relative}.twlv2 .dimrow input{padding-right:30px}.twlv2 .dimrow i{color:var(--muted2);pointer-events:none;font-size:10px;font-style:normal;position:absolute;top:50%;right:10px;transform:translateY(-50%)}@media (max-width:560px){.twlv2 .fgrid{grid-template-columns:1fr}.twlv2 .fgrid .fhalf{grid-column:1/-1}}.twlv2 .prefrow{border-bottom:1px solid var(--line);align-items:flex-start;gap:12px;padding:12px 0;display:flex}.twlv2 .prefrow:last-of-type{border-bottom:none}.twlv2 .switch{background:color-mix(in srgb, var(--text) 12%, transparent);border:1px solid var(--line2);width:38px;height:22px;transition:background var(--motion-fast) var(--motion-ease), border-color var(--motion-fast) var(--motion-ease);border-radius:20px;flex-shrink:0;margin-top:1px;padding:0;position:relative}.twlv2 .switch i{background:var(--muted);width:16px;height:16px;transition:transform var(--motion-fast) var(--motion-ease), background var(--motion-fast) var(--motion-ease);border-radius:50%;position:absolute;top:2px;left:2px}.twlv2 .switch.on{background:var(--accent-soft);border-color:var(--accent)}.twlv2 .switch.on i{background:var(--accent);transform:translate(16px)}.twlv2.compact .panel{padding:12px 14px}.twlv2.compact .view{gap:12px}.twlv2.compact .tbl th,.twlv2.compact .tbl td{padding:7px 10px}.twlv2.compact .kpi{padding:12px 14px}.twlv2.compact .kpi .num{font-size:24px}.twlv2.compact .nav a{padding:6px 10px}.twlv2 .donut-wrap{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.twlv2 .donut-svg{flex-shrink:0;width:120px;height:120px}.twlv2 .donut-legend{flex-direction:column;flex:1;gap:7px;min-width:140px;display:flex}.twlv2 .donut-leg-row{align-items:center;gap:8px;font-size:12px;display:flex}.twlv2 .donut-leg-row b{margin-left:auto;font-weight:700}.twlv2 .donut-leg-row .mini{text-align:right;min-width:34px}.twlv2 .donut-dot{border-radius:3px;flex-shrink:0;width:9px;height:9px}.twlv2 .donut-leg-label{color:var(--text)}.twlv2 .kpi.clickable{cursor:pointer;transition:border-color var(--motion-fast) var(--motion-ease), transform var(--motion-fast) var(--motion-ease)}.twlv2 .kpi.clickable:hover{transform:translateY(-2px)}.twlv2 .kpi.kpi-active{border-color:var(--c);box-shadow:0 0 0 1px var(--c) inset}.twlv2 .livedot-wrap{width:8px;height:8px;display:inline-flex;position:relative}.twlv2 .livedot-core{z-index:1;border-radius:50%;width:8px;height:8px;position:relative}.twlv2:not(.reduce-motion) .livedot-ping{border-radius:50%;width:8px;height:8px;animation:1.8s cubic-bezier(0,0,.2,1) infinite twlv2ping;position:absolute;inset:0}.twlv2.reduce-motion .livedot-ping{border-radius:50%;width:8px;height:8px;position:absolute;inset:0}@keyframes twlv2ping{0%{opacity:.7;transform:scale(1)}75%,to{opacity:0;transform:scale(2.6)}}.twlv2 .scorering-wrap{flex-shrink:0;position:relative}.twlv2 .scorering-arc{transition:stroke-dashoffset var(--motion-slow) var(--motion-ease), stroke var(--motion-slow) var(--motion-ease)}.twlv2 .scorering-center{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.twlv2 .scorering-center b{font-family:var(--font-space-grotesk), sans-serif;color:var(--text);font-size:22px;font-weight:800;line-height:1}.twlv2 .scorering-center span{color:var(--muted);margin-top:3px;font-size:10px}.twlv2 .heatgrid{grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:10px;display:grid}.twlv2 .heat-card{border:1px solid var(--line);background:var(--panel);text-align:center;transition:transform var(--motion-fast) var(--motion-ease), box-shadow var(--motion-fast) var(--motion-ease);border-radius:12px;padding:12px 10px}.twlv2 .heat-card:hover{transform:translateY(-2px);box-shadow:0 10px 22px #0000003d}.twlv2 .heat-card .hd-lab{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:10.5px;font-weight:600}.twlv2 .heat-card .hd-load{font-family:var(--font-space-grotesk), sans-serif;transition:color var(--motion-slow) var(--motion-ease);margin-top:6px;font-size:19px;font-weight:700}.twlv2 .heat-card .hd-status{transition:background var(--motion-slow) var(--motion-ease), color var(--motion-slow) var(--motion-ease);border-radius:20px;margin-top:6px;padding:2px 8px;font-size:9.5px;font-weight:700;display:inline-block}.twlv2 .heat-legend{border-top:1px solid var(--line);flex-wrap:wrap;gap:16px;margin-top:14px;padding-top:12px;display:flex}.twlv2 .heat-legend .hl-item{color:var(--muted);align-items:center;gap:6px;font-size:10.5px;display:flex}.twlv2 .heat-legend .hl-dot{border-radius:50%;width:8px;height:8px}.twlv2 .health-grid{flex-wrap:wrap;align-items:stretch;gap:28px;display:flex}.twlv2 .health-metrics{flex:1;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));align-content:center;gap:14px 22px;min-width:220px;display:grid}.twlv2 .health-metric .hm-top{justify-content:space-between;align-items:center;margin-bottom:5px;font-size:12px;display:flex}.twlv2 .health-metric .hm-top .hm-lab{color:var(--muted);align-items:center;gap:6px;display:flex}.twlv2 .health-metric .hm-top .hm-lab .ico{width:13px;height:13px}.twlv2 .health-metric .hm-top b{font-family:var(--font-space-grotesk), sans-serif;font-weight:700}.twlv2 .acc-head{background:var(--panel2);border:1px solid var(--line2);cursor:pointer;width:100%;transition:border-color var(--motion-fast) var(--motion-ease);border-radius:12px;align-items:center;gap:10px;padding:12px 14px;display:flex}.twlv2 .acc-head:hover{border-color:var(--accent)}.twlv2 .acc-head.open{border-bottom-color:#0000;border-radius:12px 12px 0 0}.twlv2 .acc-chev{transition:transform var(--motion-fast) var(--motion-ease);color:var(--muted);display:inline-flex}.twlv2 .acc-head.open .acc-chev{transform:rotate(90deg)}.twlv2 .acc-title{font-size:13px;font-weight:700}.twlv2 .acc-preview{align-items:center;gap:8px;margin-left:auto;display:flex}.twlv2 .acc-body{border:1px solid var(--line2);border-top:none;border-radius:0 0 12px 12px;margin-bottom:10px;padding:4px 14px 8px}.twlv2 .acc-stack{display:flex}.twlv2 .acc-stack .avatar{border:2px solid var(--panel);margin-left:-8px}.twlv2 .acc-stack .avatar:first-child{margin-left:0}.twlv2 .cal-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.twlv2 .cal-dow{text-align:center;color:var(--muted2);padding:2px 0;font-size:9.5px;font-weight:700}.twlv2 .cal-cell{aspect-ratio:1;border:1px solid var(--line);background:color-mix(in srgb, var(--panel2) 65%, transparent);-webkit-backdrop-filter:blur(10px)saturate(1.1);min-height:52px;transition:border-color var(--motion-fast) var(--motion-ease), transform var(--motion-fast) var(--motion-ease);border-radius:8px;flex-direction:column;justify-content:space-between;padding:4px;display:flex}.twlv2 .cal-cell:not(.empty):hover{border-color:var(--accent);transform:translateY(-1px)}.twlv2 .cal-cell.empty{background:0 0;border-color:#0000}.twlv2 .cal-cell.today{border-color:var(--gold)}.twlv2 .cal-cell.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset;background:var(--accent-soft)}.twlv2 .leave-cal .cal-cell{aspect-ratio:auto;min-height:78px}.twlv2 .main-cal .cal-cell{aspect-ratio:auto;min-height:92px}.twlv2 .cal-num{color:var(--muted);font-size:10.5px}.twlv2 .cal-dots{flex-wrap:wrap;gap:3px;display:flex}.twlv2 .cal-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.twlv2 .cal-people{flex-direction:column;align-items:stretch;gap:2px;display:flex}.twlv2 .cal-person{color:#fff;text-shadow:0 1px 1px #00000059;white-space:nowrap;text-overflow:ellipsis;border-radius:5px;padding:1px 5px;font-size:8.5px;font-weight:700;overflow:hidden}.twlv2 .cal-person-more{color:var(--muted);text-shadow:none;text-align:center;background:var(--panel3)!important}.twlv2 .week-wrap{overflow-x:auto}.twlv2 .week-head{grid-template-columns:48px repeat(7,minmax(150px,1fr));min-width:1100px;display:grid}.twlv2 .week-daylab{text-align:center;border-bottom:1px solid var(--line);padding:4px 4px 10px}.twlv2 .week-daylab span{letter-spacing:.06em;text-transform:uppercase;color:var(--muted2);font-size:9px;display:block}.twlv2 .week-daylab b{width:24px;height:24px;font-family:var(--font-space-grotesk), sans-serif;color:var(--text);border-radius:50%;justify-content:center;align-items:center;margin-top:3px;font-size:14px;font-weight:700;display:inline-flex}.twlv2 .week-daylab.today b{background:var(--accent);color:#fff}.twlv2 .week-body{grid-template-columns:48px repeat(7,minmax(150px,1fr));min-width:1100px;display:grid;position:relative}.twlv2 .week-hourlabel{color:var(--muted2);text-align:right;padding-right:7px;font-size:9px;transform:translateY(-6px)}.twlv2 .week-daycol{border-left:1px solid var(--line);position:relative}.twlv2 .week-hourline{border-bottom:1px dashed var(--line)}.twlv2 .meeting-block{z-index:1;background:linear-gradient(135deg, var(--accent), var(--brand2));cursor:pointer;color:#fff;transition:transform var(--motion-fast) var(--motion-ease), box-shadow var(--motion-fast) var(--motion-ease), z-index 0s;border-radius:8px;padding:5px 8px;position:absolute;left:4px;right:4px;overflow:hidden;box-shadow:0 4px 10px #00000038}.twlv2 .meeting-block:hover{z-index:2;transform:translateY(-1px);box-shadow:0 8px 18px #0000004d}.twlv2 .meeting-block b{white-space:normal;font-size:11px;font-weight:700;line-height:1.3;display:block}.twlv2 .meeting-block span{opacity:.85;margin-top:1px;font-size:9.5px;display:block}.twlv2 .meeting-block em{opacity:.75;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:9px;font-style:normal;display:block;overflow:hidden}.twlv2 .oprow{align-items:flex-start;gap:8px;padding-left:2px;display:flex}.twlv2 .opdot{border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-top:5px}.twlv2 .btn{transition:var(--motion-fast) var(--motion-ease);border:none;border-radius:11px;padding:9px 18px;font-size:12.5px;font-weight:600}.twlv2 .btn.ghost{background:color-mix(in srgb, var(--text) 5%, transparent)}.twlv2 .btn.ghost:hover{background:color-mix(in srgb, var(--text) 10%, transparent)}.twlv2 .btn.pri{background:linear-gradient(135deg, var(--brand2), var(--accent));color:#fff}.twlv2 .btn.pri:hover{filter:brightness(1.08)}.twlv2 .palette-ov{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:150;background:#0a050799;justify-content:center;align-items:flex-start;padding-top:12vh;display:flex;position:fixed;inset:0}.twlv2 .palette{background:var(--panel);border:1px solid var(--line2);width:560px;max-width:92vw;box-shadow:var(--shadow);animation:twlv2pop var(--motion-panel) var(--motion-ease);border-radius:16px;overflow:hidden}.twlv2 .palette .pin{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:15px 18px;display:flex}.twlv2 .palette .pin svg{width:18px;height:18px;color:var(--muted)}.twlv2 .palette .pin input{color:var(--text);background:0 0;border:none;outline:none;flex:1;font-size:15px}.twlv2 .palette .plist{max-height:360px;padding:8px;overflow-y:auto}.twlv2 .palette .pitem{cursor:pointer;text-align:left;width:100%;color:var(--text);background:0 0;border:none;border-radius:11px;align-items:center;gap:12px;padding:11px 13px;font-size:13px;display:flex}.twlv2 .palette .pitem.sel,.twlv2 .palette .pitem:hover{background:var(--accent-soft)}.twlv2 .palette .pitem .ico{width:16px;height:16px;color:var(--accent)}.twlv2 .palette .pitem .pk{color:var(--muted2);margin-left:auto;font-size:10px}.twlv2 .copilot{background:var(--panel);border-left:1px solid var(--line2);z-index:120;width:400px;max-width:92vw;transition:transform var(--motion-panel) var(--motion-ease);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(100%);box-shadow:-10px 0 40px #00000080}.twlv2 .copilot.open{transform:translate(0)}.twlv2 .copilot .ch{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:16px 18px;display:flex}.twlv2 .copilot .ch h3{font-family:var(--font-fraunces), serif;flex:1;font-size:16px}.twlv2 .chat-body{flex-direction:column;flex:1;gap:12px;padding:16px;display:flex;overflow-y:auto}.twlv2 .msg{border-radius:13px;max-width:88%;padding:10px 13px;font-size:12.5px;line-height:1.55}.twlv2 .msg.ai{background:var(--panel2);border:1px solid var(--line2);border-bottom-left-radius:3px;align-self:flex-start}.twlv2 .msg.me{background:var(--accent-soft);border:1px solid #d0576e4d;border-bottom-right-radius:3px;align-self:flex-end}.twlv2 .copilot-sources{border-top:1px solid var(--line2);flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;padding-top:8px;display:flex}.twlv2 .copilot-source-pill{color:var(--accent);background:var(--accent-soft);cursor:pointer;transition:background var(--motion-fast) var(--motion-ease);border-radius:999px;padding:3px 9px;font-size:11px;font-weight:600}.twlv2 .copilot-source-pill:hover{background:color-mix(in srgb, var(--accent) 24%, var(--accent-soft))}.twlv2 .copilot-feedback{border-top:1px solid var(--line2);flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;padding-top:8px;display:flex}.twlv2 .copilot-feedback-pill{color:var(--muted);background:var(--panel2);border:1px solid var(--line2);cursor:pointer;transition:background var(--motion-fast) var(--motion-ease), color var(--motion-fast) var(--motion-ease);border-radius:999px;padding:3px 9px;font-size:11px;font-weight:600}.twlv2 .copilot-feedback-pill:hover{background:var(--accent-soft);color:var(--accent)}.twlv2 .copilot-feedback-given{border-top:1px solid var(--line2);color:var(--green);margin-top:8px;padding-top:8px;display:block}.twlv2 .chat-in{border-top:1px solid var(--line);gap:8px;padding:12px 14px;display:flex}.twlv2 .chat-in input{background:var(--panel2);border:1px solid var(--line2);color:var(--text);border-radius:12px;flex:1;padding:11px 13px;font-family:inherit;font-size:13px}.twlv2 .chat-in button{background:linear-gradient(135deg, var(--brand2), var(--accent));color:#fff;border:none;border-radius:12px;place-items:center;width:42px;display:grid}.twlv2 .qa{flex-wrap:wrap;gap:7px;padding:0 14px 12px;display:flex}.twlv2 .qa button{background:var(--panel2);border:1px solid var(--line2);color:var(--muted);border-radius:20px;padding:6px 11px;font-size:11px}.twlv2 .qa button:hover{color:var(--text);border-color:var(--accent)}.twlv2 .notebook{background:var(--panel);border-left:1px solid var(--line2);z-index:120;width:380px;max-width:92vw;transition:transform var(--motion-panel) var(--motion-ease);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(100%);box-shadow:-10px 0 40px #00000080}.twlv2 .notebook.open{transform:translate(0)}.twlv2 .notebook .ch{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:16px 18px;display:flex}.twlv2 .notebook .ch h3{font-family:var(--font-fraunces), serif;flex:1;font-size:16px}.twlv2 .notebook-body{flex-direction:column;flex:1;gap:6px;padding:10px 14px;display:flex;overflow-y:auto}.twlv2 .notebook-row{border-bottom:1px solid var(--line2);align-items:flex-start;gap:10px;padding:10px 4px;font-size:13px;display:flex}.twlv2 .notebook-row.done .notebook-text{color:var(--muted);text-decoration:line-through}.twlv2 .notebook-text{word-break:break-word;flex:1;padding-top:1px;line-height:1.5}.twlv2 .notebook-row input[type=checkbox]{flex:none;margin-top:3px}.twlv2 .notebook-del{color:var(--muted);flex:none;padding:2px 4px;font-size:16px;line-height:1}.twlv2 .notebook-del:hover{color:var(--danger)}.twlv2 .notebook-empty{color:var(--muted);text-align:center;padding:24px 14px;font-size:12.5px}.twlv2 .toast-wrap{z-index:200;flex-direction:column;align-items:flex-end;gap:10px;display:flex;position:fixed;bottom:22px;left:16px;right:22px}.twlv2 .toast{background:var(--panel2);border:1px solid var(--line2);border-left:3px solid var(--accent);box-shadow:var(--shadow);min-width:250px;max-width:calc(100vw - 44px);animation:twlv2slidein var(--motion-slow) var(--motion-ease);border-radius:12px;align-items:center;gap:11px;padding:12px 16px;display:flex}.twlv2 .toast.leaving{animation:twlv2slideout var(--motion-slow) var(--motion-ease) forwards}.twlv2 .toast svg{width:18px;height:18px;color:var(--accent)}.twlv2 .toast .tt{font-size:12.5px;font-weight:600}.twlv2 .toast .td{color:var(--muted);font-size:11px}@keyframes twlv2slidein{0%{transform:translate(120%)}to{transform:translate(0)}}@keyframes twlv2slideout{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(120%)}}.twlv2 .rolebanner{color:var(--muted);background:linear-gradient(135deg,#d9a64829,#a118351a);border:1px solid #d9a64840;border-radius:14px;align-items:center;gap:10px;padding:11px 16px;font-size:12px;display:flex}.twlv2 .rolebanner b{color:var(--gold)}@media (max-width:1300px){.twlv2 .two,.twlv2 .three{grid-template-columns:1fr}}@media (max-width:1000px){.twlv2 .app{grid-template-columns:1fr}.twlv2 .sidebar{z-index:101;width:280px;max-width:84vw;transition:transform var(--motion-panel) var(--motion-ease);position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.twlv2 .sidebar.open{transform:translate(0)}.twlv2 .appbar-menu.iconbtn{display:grid}}@media (max-width:480px){.twlv2 .appbar{gap:8px;padding:11px 14px}.twlv2 .kbtn-label,.twlv2 .appbar-clock,.twlv2 .kbtn kbd,.twlv2 .roledd{display:none}}.twlv2 .bottom-nav,.twlv2 .fab{display:none}@media (max-width:1000px){.twlv2 .bottom-nav{z-index:90;background:color-mix(in srgb, var(--panel) 96%, transparent);border-top:1px solid var(--line2);-webkit-backdrop-filter:blur(16px)saturate(1.2);padding:6px 4px calc(6px + env(safe-area-inset-bottom));display:flex;position:fixed;bottom:0;left:0;right:0}.twlv2 .bottom-nav-item{min-height:44px;color:var(--muted2);border-radius:10px;flex-direction:column;flex:1;align-items:center;gap:2px;padding:6px 2px;font-size:10.5px;font-weight:600;display:flex;position:relative}.twlv2 .bottom-nav-item.on{color:var(--accent)}.twlv2 .bottom-nav-item .bn-badge{background:var(--danger);color:#fff;border-radius:999px;place-items:center;min-width:15px;height:15px;padding:0 3px;font-size:9px;font-weight:700;display:grid;position:absolute;top:2px;right:18%}.twlv2 .fab{right:16px;bottom:calc(70px + env(safe-area-inset-bottom));z-index:91;background:var(--accent);color:#fff;width:52px;height:52px;box-shadow:var(--shadow);border-radius:999px;place-items:center;display:grid;position:fixed}.twlv2 .view{padding-bottom:calc(78px + env(safe-area-inset-bottom))}.twlv2 .subtabs-hideable{display:none}}.twlv2 .overlay:has(.bottom-sheet){align-items:flex-end}.twlv2 .bottom-sheet{background:color-mix(in srgb, var(--panel) 94%, transparent);border:1px solid var(--line2);width:100%;max-width:640px;max-height:80vh;box-shadow:var(--shadow);animation:twlv2sheetup var(--motion-slow) var(--motion-ease);padding-bottom:env(safe-area-inset-bottom);border-bottom:none;border-radius:20px 20px 0 0;flex-direction:column;display:flex;overflow:hidden}.twlv2 .bottom-sheet-handle{background:var(--line2);border-radius:999px;flex-shrink:0;width:36px;height:4px;margin:10px auto 4px}.twlv2 .bottom-sheet-head{flex-shrink:0;padding:4px 18px 10px;font-size:15px;font-weight:700}.twlv2 .bottom-sheet-body{padding:0 10px 14px;overflow-y:auto}.twlv2 .bottom-sheet-item{text-align:left;border-radius:12px;align-items:center;gap:12px;width:100%;min-height:44px;padding:13px 10px;font-size:14.5px;font-weight:600;display:flex}.twlv2 .bottom-sheet-item:active{background:color-mix(in srgb, var(--accent) 10%, transparent)}@keyframes twlv2sheetup{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.twlv2 .bottom-sheet{animation:none}}.twlv2.reduce-motion .bottom-sheet{animation:none}.twlv2 .grid-2,.twlv2 .grid-3,.twlv2 .grid-4{gap:16px;display:grid}.twlv2 .grid-2{grid-template-columns:1fr 1fr}.twlv2 .grid-3{grid-template-columns:1fr 1fr 1fr}.twlv2 .grid-4{grid-template-columns:1fr 1fr 1fr 1fr}@media (max-width:900px){.twlv2 .grid-4{grid-template-columns:1fr 1fr}}@media (max-width:760px){.twlv2 .grid-3{grid-template-columns:1fr 1fr}}@media (max-width:560px){.twlv2 .grid-2,.twlv2 .grid-3,.twlv2 .grid-4{grid-template-columns:1fr}}.twlv2 .mobile-only{display:none}@media (max-width:640px){.twlv2 .mobile-only{display:block}.twlv2 .desktop-only{display:none}}.twlv2 .skeleton{background:color-mix(in srgb, var(--text) 8%, transparent);position:relative;overflow:hidden}.twlv2:not(.reduce-motion) .skeleton:after{content:"";background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--text) 10%, transparent), transparent);animation:1.6s ease-in-out infinite twlv2shimmer;position:absolute;inset:0}@keyframes twlv2shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.twlv2 .skeleton:after{animation:none}}.twlv2 .cp-chev{transition:transform var(--motion-fast) var(--motion-ease);flex-shrink:0}.twlv2 .cp-chev.collapsed{transform:rotate(-90deg)}.twlv2 .cp-head{cursor:pointer}.twlv2 .cp-body-outer{transition:grid-template-rows var(--motion-panel) var(--motion-ease);grid-template-rows:1fr;display:grid}.twlv2 .cp-body-inner{min-height:0;overflow:hidden}@media (max-width:640px){.twlv2 .cp-body-outer.cp-collapsed{grid-template-rows:0fr}}.twlv2 .grid-sidebar-detail{grid-template-columns:280px 1fr;align-items:start;gap:16px;display:grid}@media (max-width:900px){.twlv2 .grid-sidebar-detail{grid-template-columns:1fr}}.twlv2 .dense-table-head{display:grid}.twlv2 .dense-table-row{align-items:center;display:grid}@media (max-width:640px){.twlv2 .dense-table-head{display:none!important}.twlv2 .dense-table-row{border-bottom:1px solid var(--line);gap:6px;margin-bottom:10px;padding-bottom:10px;grid-template-columns:1fr!important}}.twlv2 .dash-attention-row{grid-template-columns:340px 1fr 300px}@media (max-width:900px){.twlv2 .dash-attention-row{grid-template-columns:1fr}}.twlv2 .grid-content-side{grid-template-columns:1fr 320px;align-items:start}@media (max-width:900px){.twlv2 .grid-content-side{grid-template-columns:1fr}}.twlv2 .quotes-summary-row{grid-template-columns:1.4fr .9fr;align-items:start}@media (max-width:1300px){.twlv2 .quotes-summary-row{grid-template-columns:1fr}}.twlv2 .ts-summary-row{grid-template-columns:1.4fr 1fr}@media (max-width:1300px){.twlv2 .ts-summary-row{grid-template-columns:1fr}}.twlv2 .site-summary-row{grid-template-columns:1.3fr 1fr}@media (max-width:1300px){.twlv2 .site-summary-row{grid-template-columns:1fr}}.twlv2 .procure-inbox-row{grid-template-columns:1.2fr .8fr;align-items:start}@media (max-width:1300px){.twlv2 .procure-inbox-row{grid-template-columns:1fr}}.twlv2 .procure-po-row{grid-template-columns:1.1fr .9fr;align-items:start}@media (max-width:1300px){.twlv2 .procure-po-row{grid-template-columns:1fr}}.twlv2 .detail-row{grid-template-columns:1.1fr .9fr}@media (max-width:1300px){.twlv2 .detail-row{grid-template-columns:1fr}}.twlv2 .reports-row{grid-template-columns:1.3fr 1fr}@media (max-width:1300px){.twlv2 .reports-row{grid-template-columns:1fr}}.twlv2 .assets-doc-row{grid-template-columns:1fr 2fr}@media (max-width:1300px){.twlv2 .assets-doc-row{grid-template-columns:1fr}}.twlv2 .finance-ledger-row{grid-template-columns:1.3fr .9fr;align-items:start}@media (max-width:1300px){.twlv2 .finance-ledger-row{grid-template-columns:1fr}}.twlv2 .store-summary-row{grid-template-columns:1.4fr .6fr}@media (max-width:1300px){.twlv2 .store-summary-row{grid-template-columns:1fr}}.twlv2 .projects-row{grid-template-columns:.7fr 1.3fr}@media (max-width:1300px){.twlv2 .projects-row{grid-template-columns:1fr}}.twlv2 .grid-5{grid-template-columns:repeat(5,1fr);gap:16px;display:grid}@media (max-width:900px){.twlv2 .grid-5{grid-template-columns:repeat(3,1fr)}}@media (max-width:560px){.twlv2 .grid-5{grid-template-columns:repeat(2,1fr)}}.twlv2 .prod-orbit-card{width:clamp(58px,18vw,138px)}.twlv2 .prod-orbit-body{cursor:pointer;background:linear-gradient(#151a24e6,#0f1219e6);border-radius:12px;padding:clamp(6px,2vw,9px) clamp(7px,2.4vw,11px)}.twlv2 .prod-orbit-header{align-items:center;gap:clamp(4px,1.5vw,7px);margin-bottom:4px;display:flex}.twlv2 .prod-orbit-icon-wrap{border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:clamp(15px,4.5vw,20px);height:clamp(15px,4.5vw,20px);display:flex}.twlv2 .prod-orbit-icon-svg{width:clamp(9px,2.6vw,12px);height:clamp(9px,2.6vw,12px)}.twlv2 .prod-orbit-title{font-size:clamp(8.5px,2.4vw,11px);font-weight:700;line-height:1.15}.twlv2 .prod-orbit-status-row{justify-content:space-between;align-items:center;display:flex}.twlv2 .prod-orbit-status{color:var(--muted2);text-transform:uppercase;letter-spacing:.02em;align-items:center;gap:4px;font-size:clamp(7px,2vw,8.5px);display:flex}.twlv2 .prod-orbit-dot{border-radius:50%;width:5px;height:5px}.twlv2 .prod-orbit-count{font-family:var(--font-mono,monospace);font-size:clamp(7.5px,2.2vw,10px);font-weight:700}.twlv2 .prod-orbit-center{text-align:center;pointer-events:none;width:clamp(120px,34vw,180px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.twlv2 .prod-orbit-center-eyebrow{letter-spacing:.2em;color:var(--gold);text-transform:uppercase;margin-bottom:6px;font-size:clamp(7px,2vw,9px);font-weight:700}.twlv2 .prod-orbit-center-brand{font-family:var(--font-fraunces);font-size:clamp(16px,5vw,24px);font-weight:800;line-height:1}.twlv2 .prod-orbit-center-sub{color:var(--muted);margin-top:6px;font-size:clamp(9px,2.6vw,12px);font-weight:600}.twlv2 .prod-orbit-center-stats{color:var(--muted2);letter-spacing:.06em;text-transform:uppercase;margin-top:8px;font-size:clamp(7px,2vw,9px)}.twlv2 .nc-steps{align-items:flex-start;gap:6px;padding:16px 20px 4px;display:flex}.twlv2 .nc-step{flex:1;align-items:center;gap:8px;display:flex}.twlv2 .nc-step .dot{background:var(--accent);color:#fff;width:26px;height:26px;box-shadow:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:800;display:flex}.twlv2 .nc-step .lab b{font-size:12px;display:block}.twlv2 .nc-step .lab span{color:var(--muted2);font-size:10px;display:block}.twlv2 .nc-step .line{background:var(--line2);flex:1;align-self:center;height:1px;margin:0 4px}.twlv2 .nc-body{align-items:flex-start;gap:20px;max-height:62vh;padding:6px 20px 18px;display:flex;overflow-y:auto}.twlv2 .nc-form{flex:1;min-width:0}.twlv2 .nc-section{border:1px solid var(--line);border-radius:14px;margin-bottom:14px;padding:14px 16px}.twlv2 .nc-section h4{color:var(--accent);align-items:center;gap:8px;margin-bottom:10px;font-size:12.5px;display:flex}.twlv2 .nc-section h4 .ico{width:15px;height:15px}.twlv2 .nc-side{flex-direction:column;flex-shrink:0;gap:14px;width:230px;display:flex}.twlv2 .nc-side .panel{padding:14px}.twlv2 .nc-tips{color:var(--muted);flex-direction:column;gap:8px;font-size:11.5px;list-style:none;display:flex}.twlv2 .nc-tips li{align-items:flex-start;gap:7px;display:flex}.twlv2 .nc-tips .ico{width:13px;height:13px;color:var(--green);flex-shrink:0;margin-top:1px}.twlv2 .wp-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.twlv2 .wp-weeknav{background:var(--panel2);border:1px solid var(--line2);border-radius:12px;align-items:center;gap:6px;padding:5px;display:flex}.twlv2 .wp-weeknav button{color:var(--text);width:28px;height:28px;transition:background var(--motion-fast) var(--motion-ease), transform var(--motion-fast) var(--motion-ease);background:0 0;border:none;border-radius:8px;place-items:center;display:grid}.twlv2 .wp-weeknav button:hover{background:color-mix(in srgb, var(--accent) 18%, transparent);transform:scale(1.06)}.twlv2 .wp-weeknav .wp-week-label{white-space:nowrap;padding:0 10px;font-size:12.5px;font-weight:700}.twlv2 .wp-weeknav .wp-today-btn{width:auto;color:var(--accent);padding:0 12px;font-size:11.5px;font-weight:700}.twlv2 .wp-chip{cursor:pointer;transition:transform var(--motion-fast) var(--motion-ease), box-shadow var(--motion-fast) var(--motion-ease);animation:twlv2chipin var(--motion-slow) var(--motion-ease) both;border-radius:10px;padding:7px 13px;position:relative}.twlv2 .wp-chip:hover{transform:translateY(-2px)}@keyframes twlv2chipin{0%{opacity:0;transform:translateY(6px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.twlv2 .wp-gantt-scroll{overflow-x:auto}.twlv2 .wp-gantt-head{border-bottom:1px solid var(--line);grid-template-columns:230px repeat(7,1fr);gap:2px;min-width:600px;margin-bottom:6px;padding:0 0 8px;display:grid}.twlv2 .wp-gantt-head .wp-day{text-align:center;color:var(--muted);text-transform:uppercase;letter-spacing:.4px;font-size:10.5px;font-weight:700}.twlv2 .wp-gantt-head .wp-day.wp-today{color:var(--accent)}.twlv2 .wp-dept-row{margin-bottom:4px}.twlv2 .wp-dept-head{cursor:pointer;transition:background var(--motion-fast) var(--motion-ease);border-radius:8px;align-items:center;gap:8px;padding:8px 4px;display:flex}.twlv2 .wp-dept-head:hover{background:color-mix(in srgb, var(--text) 4%, transparent)}.twlv2 .wp-dept-head .chev{transition:transform var(--motion-fast) var(--motion-ease)}.twlv2 .wp-dept-head .chev.collapsed{transform:rotate(-90deg)}.twlv2 .wp-job-row{min-width:600px;transition:background var(--motion-fast) var(--motion-ease);border-radius:8px;grid-template-columns:230px repeat(7,1fr);align-items:center;gap:2px;padding:6px 4px;display:grid;position:relative}.twlv2 .wp-job-row:hover{background:color-mix(in srgb, var(--text) 3%, transparent)}.twlv2 .wp-job-row .wp-job-lab{text-overflow:ellipsis;white-space:nowrap;padding-right:8px;font-size:12px;overflow:hidden}.twlv2 .wp-gantt-track{grid-column:2/-1;grid-template-columns:repeat(7,1fr);height:26px;display:grid;position:relative}.twlv2 .wp-gantt-track>.wp-cell-line{border-left:1px solid color-mix(in srgb, var(--text) 5%, transparent)}.twlv2 .wp-bar{color:#fff;white-space:nowrap;height:22px;transition:left var(--motion-slow) var(--motion-ease), width var(--motion-slow) var(--motion-ease), opacity var(--motion-slow) var(--motion-ease);border-radius:7px;justify-content:center;align-items:center;gap:5px;padding:0 6px;font-size:10px;font-weight:700;display:flex;position:absolute;top:2px;overflow:hidden;box-shadow:0 2px 8px #00000040}.twlv2 .wp-today-line{background:repeating-linear-gradient(to bottom, var(--danger) 0 4px, transparent 4px 8px);z-index:1;pointer-events:none;width:2px;position:absolute;top:-8px;bottom:0}.twlv2 .wp-workload-chip{text-align:center;min-width:84px;transition:transform var(--motion-fast) var(--motion-ease);border-radius:10px;padding:8px 12px}.twlv2 .wp-workload-chip:hover{transform:translateY(-2px)}.twlv2 .wp-drawer-overlay{background:#0a050799;justify-content:flex-end;align-items:stretch;padding:0}.twlv2 .wp-drawer{background:color-mix(in srgb, var(--panel) 96%, transparent);border-left:1px solid var(--line2);-webkit-backdrop-filter:blur(24px)saturate(1.2);width:420px;max-width:92vw;height:100%;box-shadow:var(--shadow);animation:twlv2drawerin var(--motion-panel) var(--motion-ease);flex-direction:column;display:flex}@keyframes twlv2drawerin{0%{transform:translate(100%)}to{transform:translate(0)}}.twlv2 .wp-drawer .mb{flex:1;overflow-y:auto}.twlv2 .wp-drawer label{color:var(--muted);margin:13px 0 6px;font-size:11px;font-weight:600;display:block}.twlv2 .wp-drawer label:first-child{margin-top:0}.twlv2 .wp-drawer input,.twlv2 .wp-drawer select,.twlv2 .wp-drawer textarea{background:var(--panel2);border:1px solid var(--line2);width:100%;color:var(--text);border-radius:10px;padding:10px 12px;font-family:inherit;font-size:13px}.twlv2 .wp-tabs{border-bottom:1px solid var(--line);gap:4px;padding:0 20px;display:flex}.twlv2 .wp-tabs button{letter-spacing:.3px;text-transform:uppercase;color:var(--muted);transition:color var(--motion-normal) var(--motion-ease), border-color var(--motion-normal) var(--motion-ease);background:0 0;border:none;border-bottom:2px solid #0000;margin-right:18px;padding:11px 4px;font-size:11.5px;font-weight:700}.twlv2 .wp-tabs button.on{color:var(--accent);border-bottom-color:var(--accent)}.twlv2 .wp-tabs button:hover{color:var(--text)}.twlv2 .wp-mode-toggle{background:var(--panel2);border:1px solid var(--line2);border-radius:12px;align-items:center;gap:2px;padding:4px;display:flex}.twlv2 .wp-mode-toggle button{color:var(--muted);transition:background var(--motion-fast) var(--motion-ease), color var(--motion-fast) var(--motion-ease);background:0 0;border:none;border-radius:9px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:700;display:flex}.twlv2 .wp-mode-toggle button.on{background:var(--accent);color:var(--panel)}.twlv2 .wp-mode-toggle button:not(.on):hover{color:var(--text)}.twlv2 .kanban-board{gap:14px;padding-bottom:4px;display:flex;overflow-x:auto}.twlv2 .kanban-col{background:var(--panel2);border:1px solid var(--line2);border-radius:14px;flex-direction:column;flex:0 0 260px;gap:8px;padding:10px;display:flex}.twlv2 .kanban-col-head{border-bottom:1px solid var(--line);align-items:center;gap:6px;padding:2px 4px 6px;display:flex}.twlv2 .kanban-col-body{flex-direction:column;gap:8px;min-height:40px;display:flex}.twlv2 .kanban-card{background:var(--panel);border:1px solid var(--line2);cursor:pointer;transition:transform var(--motion-fast) var(--motion-ease), box-shadow var(--motion-fast) var(--motion-ease);border-radius:12px;padding:10px 12px}.twlv2 .kanban-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.twlv2 .kanban-card-top{flex-wrap:wrap;gap:6px;margin-bottom:6px;display:flex}.twlv2 .kanban-card-title{margin-bottom:2px;font-size:12.5px;font-weight:700}.twlv2 .kanban-card-foot{justify-content:space-between;align-items:center;margin-top:8px;display:flex}.twlv2 .fin-shell{flex-direction:column;gap:16px;display:flex}.twlv2 .fin-nav{background:var(--panel);border:1px solid var(--line2);border-radius:16px;flex-wrap:wrap;align-items:center;gap:8px 10px;padding:14px 16px;display:flex}@media (max-width:1000px){.twlv2 .fin-nav{display:none}}.twlv2 .fin-nav-sec{letter-spacing:.7px;text-transform:uppercase;color:var(--muted);white-space:nowrap;border-right:1px solid var(--line);align-self:center;margin-right:2px;padding:6px 10px 6px 0;font-size:9.5px;font-weight:800}.twlv2 .fin-nav-group{flex-wrap:wrap;align-items:center;gap:6px;margin-right:4px;padding-right:8px;display:flex}.twlv2 .fin-nav-group:not(:last-child){border-right:1px solid var(--line)}.twlv2 .fin-nav-item{white-space:nowrap;color:var(--muted);background:var(--panel2);cursor:pointer;animation:twlv2chipin var(--motion-slow) var(--motion-ease) both;transition:background var(--motion-fast) var(--motion-ease), color var(--motion-fast) var(--motion-ease), border-color var(--motion-fast) var(--motion-ease), transform var(--motion-fast) var(--motion-ease), box-shadow var(--motion-fast) var(--motion-ease);border:1px solid #0000;border-radius:999px;align-items:center;gap:7px;padding:7px 13px;font-size:12px;font-weight:600;display:flex}.twlv2 .fin-nav-item:hover{color:var(--text);background:color-mix(in srgb, var(--text) 7%, var(--panel2));transform:translateY(-1.5px);box-shadow:0 4px 10px #0000002e}.twlv2 .fin-nav-item:active{transform:translateY(0)scale(.97)}.twlv2 .fin-nav-item.on{background:color-mix(in srgb, var(--accent) 22%, transparent);color:var(--accent);border-color:color-mix(in srgb, var(--accent) 45%, transparent);box-shadow:0 3px 10px color-mix(in srgb, var(--accent) 25%, transparent)}.twlv2 .fin-nav-item .ico{flex-shrink:0;width:13px;height:13px}.twlv2 .fin-main{min-width:0;animation:twlv2fadein var(--motion-normal) var(--motion-ease)}@media (max-width:900px){.twlv2 .fin-nav{padding:10px}.twlv2 .fin-nav-sec{border-right:none;width:100%;padding:4px 0}.twlv2 .fin-nav-group{border-right:none;margin-right:0;padding-right:0}}@media (max-width:760px){.twlv2 .nc-body{flex-direction:column}.twlv2 .nc-side{width:100%}.twlv2 .nc-steps{display:none}}@media print{.twlv2>:not(.overlay){display:none!important}.twlv2 .overlay{-webkit-backdrop-filter:none!important;z-index:auto!important;background:0 0!important;animation:none!important;display:block!important;position:static!important;inset:auto!important}.twlv2 .overlay>:not(.modal){display:none!important}.twlv2 .modal{width:auto!important;max-width:none!important;max-height:none!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;background:0 0!important;border:none!important;animation:none!important;position:static!important}.twlv2 .modal .mb{max-height:none!important;padding:0!important;overflow:visible!important}body *{visibility:hidden}#print-doc,#print-doc *{visibility:visible}#print-doc{width:100%;position:static}.no-print{display:none!important}}.print-doc{color:#1a1a1a;font-family:var(--font-space-grotesk), sans-serif;background:#fff;max-width:900px;margin:0 auto;padding:40px;font-size:14.5px;line-height:1.55}.print-doc h1,.print-doc h2,.print-doc h3{font-family:var(--font-fraunces), serif;color:#1a1a1a;margin:0}.print-doc .pd-topbar{border-bottom:3px solid #7a1f2b;justify-content:space-between;align-items:center;margin-bottom:18px;padding-bottom:16px;display:flex}.print-doc .pd-brand{align-items:center;gap:14px;display:flex}.print-doc .pd-brand-mark{object-fit:contain;width:52px;height:68px}.print-doc .pd-brand-name{font-family:var(--font-fraunces), serif;color:#7a1f2b;letter-spacing:.02em;font-size:26px;font-weight:700}.print-doc .pd-brand-tag{letter-spacing:.12em;text-transform:uppercase;color:#7a1f2b;margin-top:2px;font-size:11px;font-weight:600}.print-doc .pd-contact{text-align:right;color:#333;font-size:12px;line-height:1.8}.print-doc .pd-head{justify-content:space-between;align-items:flex-end;margin-bottom:20px;display:flex}.print-doc .pd-head h1{color:#7a1f2b;font-size:26px}.print-doc .pd-meta{text-align:right;color:#555;font-size:12px}.print-doc .pd-meta .pd-quoteno{color:#1a1a1a;font-size:16px;font-weight:700}.print-doc .pd-infogrid{grid-template-columns:1fr 1fr;gap:20px;margin-bottom:22px;display:grid}.print-doc .pd-box{border:1px solid #ddd;border-radius:8px;padding:14px 16px}.print-doc .pd-box .lab{letter-spacing:.06em;text-transform:uppercase;color:#7a1f2b;margin-bottom:10px;font-size:10.5px;font-weight:700}.print-doc .pd-kv{border-bottom:1px solid #f0f0f0;justify-content:space-between;gap:12px;padding:3px 0;font-size:12.5px;display:flex}.print-doc .pd-kv span{color:#777}.print-doc .pd-kv b{text-align:right}.print-doc .pd-scope{align-items:flex-start;gap:20px;margin-bottom:22px;display:flex}.print-doc .pd-scope-img{object-fit:cover;border:1px solid #ddd;border-radius:8px;flex-shrink:0;width:220px;height:150px}.print-doc .pd-scope .lab{letter-spacing:.06em;text-transform:uppercase;color:#7a1f2b;margin-bottom:6px;font-size:10.5px;font-weight:700}.print-doc .pd-scope p{color:#333;margin:0;font-size:12.5px}.print-doc .pd-parties{justify-content:space-between;gap:24px;margin-bottom:24px;display:flex}.print-doc .pd-block{flex:1}.print-doc .pd-block .lab{letter-spacing:.06em;text-transform:uppercase;color:#7a1f2b;margin-bottom:6px;font-size:10.5px;font-weight:700}.print-doc table{table-layout:fixed;border-collapse:collapse;width:100%;margin-bottom:16px}.print-doc th{text-align:left;letter-spacing:.05em;text-transform:uppercase;color:#fff;overflow-wrap:break-word;background:#7a1f2b;padding:8px 10px;font-size:10.5px}.print-doc td{overflow-wrap:break-word;word-break:break-word;vertical-align:top;border-bottom:1px solid #eee;padding:8px 10px;font-size:12.5px}.print-doc .pd-num{text-align:right;font-variant-numeric:tabular-nums}.print-doc .pd-section-total td{background:#f6f6f6;font-weight:700}.print-doc .pd-totals{width:300px;margin-left:auto}.print-doc .pd-totals .row{justify-content:space-between;padding:5px 0;font-size:12.5px;display:flex}.print-doc .pd-totals .row.grand{color:#7a1f2b;border-top:2px solid #7a1f2b;margin-top:6px;padding-top:8px;font-size:16px;font-weight:700}.print-doc .pd-foot{color:#888;border-top:1px solid #ccc;margin-top:32px;padding-top:12px;font-size:11px}.print-doc .pd-signature{border-top:1px solid #ccc;justify-content:space-between;gap:24px;margin-top:28px;padding-top:16px;display:flex}.print-doc .pd-signature .pd-block>div{color:#555;margin-top:10px;font-size:12.5px}.print-doc .pd-bank{color:#555;margin-top:16px;font-size:12px}.print-doc .pd-status{color:#7a5a10;text-transform:uppercase;background:#f2d9a0;border-radius:99px;padding:1px 8px;font-size:10.5px;font-weight:700;display:inline-block}.print-doc .pd-label-grid{grid-template-columns:repeat(3,1fr);gap:0;display:grid}.print-doc .pd-label{border:1px dashed #bbb;flex-direction:column;justify-content:center;gap:4px;min-height:110px;margin:-1px 0 0 -1px;padding:12px 10px;display:flex}.print-doc .pd-label-code{font-family:var(--font-space-grotesk), monospace;color:#7a1f2b;letter-spacing:.01em;word-break:break-all;font-size:17px;font-weight:700}.print-doc .pd-label-item{color:#1a1a1a;font-size:12px;font-weight:600}.print-doc .pd-label-job{color:#555;font-size:10.5px}.print-doc .pd-label-meta{font-family:var(--font-space-grotesk), monospace;color:#555;font-size:10px}@media print{.print-doc{max-width:none;padding:0;font-size:13.5pt}.print-doc .pd-brand-name{font-size:20pt}.print-doc .pd-head h1{font-size:18pt}.print-doc .pd-label{break-inside:avoid}@page{size:A4;margin:14mm}}.twlv2 .pcs-flow{gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.twlv2 .pcs-step{border:1px solid var(--line);border-left:3px solid var(--c);background:var(--panel2,#ffffff05);border-radius:8px;flex:1 0 130px;padding:10px 12px}.twlv2 .pcs-step-n{color:var(--muted);font-size:10px;font-weight:700}.twlv2 .pcs-step-lab{margin-top:2px;font-size:12.5px;font-weight:600}.twlv2 .pcs-step-pct{font-family:var(--font-space-grotesk), sans-serif;color:var(--c);margin-top:4px;font-size:18px;font-weight:700}.twlv2 .pcs-step-bar{background:#ffffff14;border-radius:3px;height:4px;margin-top:6px;overflow:hidden}.twlv2 .pcs-step-bar span{background:var(--c);height:100%;display:block}.twlv2 .pcs-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.twlv2 .pcs-card{border:1px solid var(--line);border-top:3px solid var(--c);background:var(--panel2,#ffffff05);border-radius:10px;flex-direction:column;gap:10px;padding:12px;display:flex}.twlv2 .pcs-card-head{color:var(--c);letter-spacing:.02em;text-transform:uppercase;justify-content:space-between;align-items:center;font-size:13px;font-weight:700;display:flex}.twlv2 .pcs-job{margin-top:-4px;font-size:13px;font-weight:600}.twlv2 .pcs-sec label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:4px;font-size:9.5px;display:block}.twlv2 .pcs-sec select{width:100%;padding:4px 6px;font-size:12px}.twlv2 .pcs-list{flex-direction:column;gap:2px;margin:0;padding-left:16px;font-size:12px;display:flex}.twlv2 .pcs-note{border-left:2px solid var(--amber);background:color-mix(in srgb, var(--amber) 10%, transparent);border-radius:0 6px 6px 0;padding:6px 8px;font-size:12px}.twlv2 .pcs-foot{border-top:1px solid var(--line);align-items:center;gap:6px;margin-top:auto;padding-top:8px;display:flex}.twlv2 .pcs-foot select{padding:4px 6px;font-size:12px}.twlv2 .pcs-actions{flex-direction:column;gap:7px;margin:0;padding-left:18px;font-size:12.5px;display:flex}.twlv2 .pcs-actions li{display:list-item}.twlv2 .pcs-actions li>span{margin-right:8px}.twlv2.wallboard{flex-direction:column;gap:22px;min-height:100vh;padding:28px 32px;font-size:15px;display:flex}.twlv2.wb-denied{color:var(--muted2);text-align:center;justify-content:center;align-items:center;font-size:22px}.wb-head{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.wb-brand{align-items:center;gap:18px;display:flex}.wb-logo{font-family:var(--font-fraunces), serif;letter-spacing:.02em;font-size:26px;font-weight:700}.wb-logo span{color:var(--gold)}.wb-titles h1{margin:0;font-size:30px;font-weight:700}.wb-titles p{color:var(--muted2);margin:2px 0 0;font-size:15px}.wb-clock{text-align:right}.wb-date{color:var(--muted);font-size:17px}.wb-time{font-variant-numeric:tabular-nums;font-size:32px;font-weight:700}.wb-refresh{color:var(--muted2);justify-content:flex-end;align-items:center;gap:6px;margin-top:4px;font-size:13px;display:flex}.wb-refresh-ico{width:13px;height:13px}.wb-kpis{grid-template-columns:repeat(6,1fr);gap:16px;display:grid}.wb-kpi{background:var(--panel);border:1px solid var(--line2);border-left:3px solid var(--c,var(--gold));border-radius:12px;padding:16px 18px}.wb-kpi-ico{width:18px;height:18px;color:var(--c,var(--gold));margin-bottom:8px}.wb-kpi-num{font-size:34px;font-weight:700;line-height:1.1}.wb-kpi-lab{margin-top:4px;font-size:14px;font-weight:600}.wb-kpi-sub{color:var(--muted2);font-size:12.5px}.wb-panels{flex:1;grid-template-columns:repeat(5,1fr);gap:16px;min-height:0;display:grid}.wb-panel{background:var(--panel);border:1px solid var(--line2);border-radius:14px;flex-direction:column;min-height:0;padding:16px;display:flex}.wb-panel h2{align-items:center;gap:10px;margin:0 0 12px;font-size:15px;font-weight:700;display:flex}.wb-num{background:var(--gold-soft);width:22px;height:22px;color:var(--gold);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:inline-flex}.wb-panel-body{flex-direction:column;flex:1;gap:10px;display:flex;overflow-y:auto}.wb-empty{color:var(--muted2);padding:8px 0;font-size:13px}.wb-row{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding-bottom:10px;display:flex}.wb-row:last-child{border-bottom:none}.wb-row-main{flex:1;min-width:0}.wb-row-title{white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:600;overflow:hidden}.wb-row-sub{color:var(--muted2);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.wb-dot{border-radius:50%;flex-shrink:0;width:9px;height:9px}.wb-p-urgent{background:var(--danger)}.wb-p-high{background:var(--amber)}.wb-p-normal{background:var(--blue)}.wb-p-low{background:var(--muted2)}.wb-pill{white-space:nowrap;border-radius:999px;flex-shrink:0;padding:3px 9px;font-size:11px;font-weight:600}.wb-pill-amber{background:var(--gold-soft);color:var(--gold)}.wb-pill-blue{background:color-mix(in srgb, var(--blue) 18%, transparent);color:var(--blue)}.wb-pill-red{background:color-mix(in srgb, var(--danger) 18%, transparent);color:var(--danger)}.wb-pill-gold{background:var(--gold-soft);color:var(--gold)}.wb-designer{border-bottom:1px solid var(--line);padding-bottom:12px}.wb-designer:last-child{border-bottom:none}.wb-designer-head{align-items:center;gap:10px;display:flex}.wb-designer-name{font-size:13.5px;font-weight:600}.wb-designer-role{color:var(--muted2);font-size:11.5px}.wb-designer-stats{color:var(--muted2);gap:12px;margin:6px 0;font-size:12px;display:flex}.wb-designer-stats b{color:var(--text)}.wb-chips{flex-wrap:wrap;gap:6px;display:flex}.wb-chip{background:color-mix(in srgb, var(--text) 6%, transparent);color:var(--muted);border-radius:6px;padding:3px 8px;font-size:11px}.wb-foot{text-align:center;color:var(--muted2);border-top:1px solid var(--line2);padding-top:8px;font-size:12px}@media (max-width:1400px){.wb-kpis{grid-template-columns:repeat(3,1fr)}.wb-panels{grid-template-columns:repeat(2,1fr)}}.twl-loading{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex}.twl-loading-mark{margin-bottom:16px;position:relative}.twl-loading-mark:before{content:"";background:radial-gradient(circle, var(--brand2) 0%, transparent 70%);opacity:.35;z-index:0;border-radius:16px;animation:2.2s ease-in-out infinite twl-loading-glow;position:absolute;inset:-14px}.twl-loading-logo{z-index:1;border-radius:10px;width:52px;height:auto;animation:2.2s ease-in-out infinite twl-loading-breathe;position:relative;box-shadow:0 8px 24px #7911278c}@keyframes twl-loading-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}@keyframes twl-loading-glow{0%,to{opacity:.25;transform:scale(.94)}50%{opacity:.5;transform:scale(1.08)}}.twl-loading-title{font-family:var(--font-fraunces), serif;font-size:21px;font-weight:700}.twl-loading-sub{letter-spacing:2.5px;color:var(--gold);margin-top:2px;font-size:9px;font-weight:700}.twl-loading-bar{background:var(--line2);border-radius:2px;width:140px;height:3px;margin-top:22px;overflow:hidden}.twl-loading-bar-fill{background:linear-gradient(90deg, var(--brand2), var(--gold));border-radius:2px;width:40%;height:100%;animation:1.3s ease-in-out infinite twl-loading-slide}@keyframes twl-loading-slide{0%{transform:translate(-120%)}to{transform:translate(340%)}}@media (prefers-reduced-motion:reduce){.twl-loading-logo,.twl-loading-mark:before,.twl-loading-bar-fill{animation:none}}.twlv2 .connect-shell{box-shadow:var(--shadow);border-radius:16px;grid-template-columns:248px minmax(0,1fr) 240px;gap:0;padding:0;display:grid;overflow:hidden}@media (max-width:900px){.twlv2 .connect-shell{grid-template-columns:minmax(0,1fr)}}.twlv2 .connect-rail{border-right:1px solid var(--line2);background:color-mix(in srgb, var(--panel2) 55%, transparent);flex-direction:column;gap:20px;padding:16px 14px;display:flex;overflow-y:auto}.twlv2 .connect-rail-title{letter-spacing:.9px;color:var(--muted);text-transform:uppercase;margin-bottom:8px;font-size:10px;font-weight:700}.twlv2 .connect-item{cursor:pointer;transition:background var(--motion-fast) var(--motion-ease), border-color var(--motion-fast) var(--motion-ease);border-left:3px solid #0000;border-radius:9px;align-items:center;gap:9px;padding:8px 10px;display:flex}.twlv2 .connect-item:hover{background:color-mix(in srgb, var(--panel2) 80%, var(--accent-soft))}.twlv2 .connect-item.active{background:var(--accent-soft);border-left-color:var(--accent)}.twlv2 .connect-item .hash{color:var(--gold);text-align:center;flex-shrink:0;width:14px;font-size:13px;font-weight:700}.twlv2 .connect-item-name{font-size:13px;font-weight:600}.twlv2 .connect-thread-col{border-right:1px solid var(--line2);background:var(--panel);flex-direction:column;min-height:480px;display:flex}.twlv2 .connect-thread-header{border-bottom:1px solid var(--line2);flex-shrink:0;align-items:center;gap:10px;padding:16px 20px;display:flex}.twlv2 .connect-thread-header h4{font-family:var(--font-fraunces), serif;font-size:17px;font-weight:600}.twlv2 .connect-thread-body{flex-direction:column;flex:1;gap:10px;padding:18px 20px 8px;display:flex;overflow-y:auto}.twlv2 .connect-msg{background:var(--panel2);border:1px solid var(--line2);transition:border-color var(--motion-fast) var(--motion-ease);border-radius:14px;gap:12px;padding:12px 14px;display:flex}.twlv2 .connect-msg:hover{border-color:color-mix(in srgb, var(--accent) 35%, var(--line2))}.twlv2 .connect-msg-body{color:var(--text);margin-top:4px;font-size:13.5px;line-height:1.6}.twlv2 .connect-msg-actions{opacity:.55;transition:opacity var(--motion-fast) var(--motion-ease);gap:16px;margin-top:8px;display:flex}.twlv2 .connect-msg:hover .connect-msg-actions{opacity:1}.twlv2 .connect-reaction{cursor:pointer;border:1px solid var(--line2);background:var(--panel);color:var(--muted);transition:all var(--motion-fast) var(--motion-ease);border-radius:10px;align-items:center;gap:4px;padding:2px 8px;font-size:12px;display:inline-flex}.twlv2 .connect-reaction.mine{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.twlv2 .connect-reaction.pick{opacity:.3;background:0 0;border:none;padding:2px 5px;font-size:13px}.twlv2 .connect-reaction.pick:hover{opacity:.9}.twlv2 .connect-composer-bar{background:var(--panel2);border:1px solid var(--line2);transition:border-color var(--motion-fast) var(--motion-ease), box-shadow var(--motion-fast) var(--motion-ease);border-radius:14px;flex-shrink:0;align-items:center;gap:8px;margin:10px 20px 18px;padding:8px 8px 8px 16px;display:flex}.twlv2 .connect-composer-bar:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.twlv2 .connect-composer-bar input{background:0 0;border:none;flex:1;min-width:0;padding:8px 0;font-size:13.5px}.twlv2 .connect-composer-bar input:focus{outline:none}.twlv2 .connect-send{background:linear-gradient(135deg, var(--brand2), var(--accent));color:#fff;cursor:pointer;width:34px;height:34px;transition:transform var(--motion-fast) var(--motion-ease);border:none;border-radius:10px;flex-shrink:0;place-items:center;font-size:15px;display:grid}.twlv2 .connect-send:hover{transform:scale(1.06)}.twlv2 .connect-info-col{background:color-mix(in srgb, var(--panel2) 55%, transparent);flex-direction:column;gap:18px;padding:18px 16px;display:flex;overflow-y:auto}.twlv2 .connect-info-field .label{letter-spacing:.6px;color:var(--muted);text-transform:uppercase;margin-bottom:3px;font-size:10px}.twlv2 .connect-info-field .value{font-size:13px;font-weight:600}.twlv2 .connect-empty{text-align:center;color:var(--muted);margin:auto;padding:40px 20px;font-size:13px}.twlv2 .connect-project-row{cursor:pointer;transition:background var(--motion-fast) var(--motion-ease);border-radius:8px;align-items:center;gap:7px;padding:7px 8px;display:flex}.twlv2 .connect-project-row:hover{background:color-mix(in srgb, var(--panel2) 80%, var(--accent-soft))}.twlv2 .connect-project-row .chev{width:12px;color:var(--muted);flex-shrink:0;font-size:10px}.twlv2 .connect-project-name{letter-spacing:.2px;font-size:12.5px;font-weight:700}.twlv2 .connect-tab{color:var(--muted);cursor:pointer;transition:color var(--motion-fast) var(--motion-ease), border-color var(--motion-fast) var(--motion-ease);border-bottom:2px solid #0000;border-radius:8px 8px 0 0;padding:6px 12px;font-size:12px;font-weight:600}.twlv2 .connect-tab:hover{color:var(--text)}.twlv2 .connect-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.twlv2 .connect-header-icon{cursor:pointer;color:var(--muted);transition:opacity var(--motion-fast) var(--motion-ease);align-items:center;gap:3px;font-size:13px;display:inline-flex}.twlv2 .connect-pinned-banner{background:var(--gold-soft);border:1px solid color-mix(in srgb, var(--gold) 30%, transparent);border-radius:8px;align-items:center;gap:8px;padding:6px 10px;font-size:12px;display:flex}.twlv2 .connect-unread-badge{background:var(--accent);color:#2a0910;border-radius:20px;flex-shrink:0;margin-left:auto;padding:1px 7px;font-size:10px;font-weight:800}.twlv2 .connect-attachment-card{background:var(--panel2);border:1px solid var(--line2);color:var(--text);width:fit-content;max-width:100%;transition:background var(--motion-fast) var(--motion-ease);border-radius:10px;align-items:center;gap:8px;margin-top:8px;padding:8px 12px;text-decoration:none;display:flex}.twlv2 .connect-attachment-card:hover{background:var(--panel3)}.twlv2 .connect-system-event{background:var(--green-soft,#46c08a14);border:1px solid color-mix(in srgb, var(--green) 25%, transparent);border-radius:12px;padding:10px 12px}.twlv2 .connect-msg-menu-btn{cursor:pointer;color:var(--muted);transition:background var(--motion-fast) var(--motion-ease), color var(--motion-fast) var(--motion-ease);border-radius:6px;padding:2px 8px;font-size:16px;font-weight:800;line-height:1;display:inline-block}.twlv2 .connect-msg-menu-btn:hover{background:var(--panel3);color:var(--text)}.twlv2 .connect-menu-overlay{z-index:40;position:fixed;inset:0}.twlv2 .connect-msg-menu{z-index:41;background:var(--panel2);border:1px solid var(--line2);min-width:170px;box-shadow:var(--shadow);border-radius:10px;flex-direction:column;padding:4px;display:flex;position:absolute;top:calc(100% + 4px);left:0}.twlv2 .connect-menu-item{cursor:pointer;white-space:nowrap;transition:background var(--motion-fast) var(--motion-ease);border-radius:7px;padding:7px 10px;font-size:12.5px}.twlv2 .connect-menu-item:hover{background:var(--panel3)}.twlv2 .connect-menu-item.danger{color:var(--danger)}.twlv2 .connect-presence-dot{border:2px solid var(--panel2);box-sizing:content-box;border-radius:50%;width:9px;height:9px;position:absolute;bottom:-1px;right:-1px}.twlv2 .connect-presence-dot.online{background:var(--green)}.twlv2 .connect-presence-dot.away{background:var(--amber)}.twlv2 .connect-header-panel{z-index:2;position:relative}.twlv2 .connect-global-search{flex-shrink:0;width:min(320px,100%);position:relative}.twlv2 .connect-global-search input{width:100%}.twlv2 .connect-global-search-results{z-index:41;background:var(--panel2);border:1px solid var(--line2);width:min(420px,90vw);max-height:420px;box-shadow:var(--shadow);border-radius:12px;padding:4px;position:absolute;top:calc(100% + 6px);right:0;overflow-y:auto}.twlv2 .connect-search-result{cursor:pointer;transition:background var(--motion-fast) var(--motion-ease);border-radius:9px;align-items:center;gap:10px;padding:8px 10px;display:flex}.twlv2 .connect-search-result:hover{background:var(--panel3)}.twlv2 .connect-search-snippet{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:12px;overflow:hidden}.twlv2 .connect-annotate-modal{gap:12px;width:720px;padding:16px}.twlv2 .connect-annotate-toolbar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.twlv2 .chip-btn.active{background:var(--accent);color:#fff}.twlv2 .connect-annotate-colors{align-items:center;gap:6px;margin-left:4px;display:flex}.twlv2 .connect-annotate-swatch{cursor:pointer;box-sizing:content-box;border:2px solid #0000;border-radius:50%;width:20px;height:20px}.twlv2 .connect-annotate-swatch.active{border-color:var(--text)}.twlv2 .connect-annotate-canvas-wrap{background:var(--panel2);border:1px solid var(--line2);border-radius:12px;justify-content:center;align-items:center;max-height:60vh;padding:10px;display:flex;position:relative;overflow:auto}.twlv2 .connect-annotate-canvas{touch-action:none;border-radius:8px;width:auto;max-width:100%;height:auto;max-height:56vh}.twlv2 .connect-annotate-text-input{width:160px;position:absolute;transform:translateY(-100%)}.twlv2 .connect-annotate-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px 16px;display:flex}.twlv2 .connect-annotate-send-btn{background:linear-gradient(135deg, var(--brand2), var(--accent));color:#fff;white-space:nowrap;cursor:pointer;transition:transform var(--motion-fast) var(--motion-ease), opacity var(--motion-fast) var(--motion-ease);border:none;border-radius:10px;padding:9px 16px;font-size:12.5px;font-weight:600}.twlv2 .connect-annotate-send-btn:hover{transform:scale(1.03)}.twlv2 .connect-annotate-send-btn:disabled{opacity:.5;cursor:not-allowed}.twlv2 .connect-assistant-avatar{background:linear-gradient(135deg, var(--brand), var(--accent));border-radius:10px;flex-shrink:0;place-items:center;width:32px;height:32px;font-size:15px;display:grid}.twlv2 .connect-summary-modal{gap:4px;width:560px;padding:18px}.twlv2 .connect-summary-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;display:flex}.twlv2 .connect-summary-scopes{flex-wrap:wrap;gap:4px;display:flex}.twlv2 .connect-summary-body{flex-direction:column;gap:14px;max-height:50vh;margin-top:14px;display:flex;overflow-y:auto}.twlv2 .connect-summary-section{background:var(--panel2);border:1px solid var(--line2);border-radius:12px;padding:12px 14px}.twlv2 .connect-summary-heading{letter-spacing:.7px;color:var(--accent);text-transform:uppercase;margin-bottom:6px;font-size:10.5px;font-weight:700}.twlv2 .connect-summary-text{color:var(--text);white-space:pre-wrap;font-size:13px;line-height:1.6}.twlv2 .connect-summary-actions{justify-content:flex-end;margin-top:14px;display:flex}.twlv2 .jc-cols{grid-template-columns:360px 1fr 320px;align-items:start;gap:16px;display:grid}@media (max-width:1100px){.twlv2 .jc-cols{grid-template-columns:1fr}}.twlv2 .jc-form label{color:var(--muted);margin:13px 0 6px;font-size:11px;font-weight:600;display:block}.twlv2 .jc-form label:first-of-type{margin-top:0}.twlv2 .jc-form input,.twlv2 .jc-form select,.twlv2 .jc-form textarea{background:var(--panel2);border:1px solid var(--line2);width:100%;color:var(--text);border-radius:10px;padding:10px 12px;font-family:inherit;font-size:13px}.twlv2 .jc-form input:disabled,.twlv2 .jc-form select:disabled,.twlv2 .jc-form textarea:disabled{opacity:.6}.twlv2 .jc-form textarea{resize:vertical;min-height:56px}.twlv2 .jc-form-actions{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.twlv2 .jc-stepper{flex-wrap:wrap;gap:8px;display:flex}.twlv2 .jc-step{background:var(--panel2);border:1px solid var(--line2);color:var(--muted);border-radius:12px;align-items:center;gap:8px;padding:8px 14px;font-size:12px;font-weight:600;display:flex}.twlv2 .jc-step:disabled{opacity:.45;cursor:default}.twlv2 .jc-step.on{color:var(--text);border-color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent)}.twlv2 .jc-step-n{background:var(--panel);border:1px solid var(--line2);border-radius:50%;place-items:center;width:20px;height:20px;font-size:11px;display:grid}.twlv2 .jc-step.on .jc-step-n{background:var(--accent);color:var(--panel);border-color:var(--accent)}.twlv2 .jc-task-card{border:1px solid var(--line2);border-left:3px solid var(--c);background:var(--panel2);border-radius:12px;margin-bottom:12px;padding:12px 14px}.twlv2 .jc-task-head{align-items:center;gap:8px;margin-bottom:6px;display:flex}.twlv2 .jc-task-remove{color:var(--muted);cursor:pointer;background:0 0;border:none;margin-left:auto;padding:2px 6px;font-size:14px}.twlv2 .jc-task-remove:hover{color:var(--red)}.twlv2 .jc-post-btn{width:100%;margin-top:10px}.twlv2 .jc-add-task{gap:8px;display:flex}.twlv2 .jc-add-task select{flex:1}