.office3d-root,.office3d-portal{--background:oklch(19% .018 120);--foreground:oklch(96% .01 300);--primary:oklch(94% .2 122);--primary-foreground:oklch(16% .02 120);--secondary:oklch(26% .025 120);--muted:oklch(23% .02 120);--muted-foreground:oklch(74% .012 300);--accent:oklch(28% .03 120);--border:oklch(30% .02 120);--destructive:oklch(65% .2 25);--stage:oklch(34% .018 120);--shadow:oklch(0% 0 0/.45);--overlay:oklch(0% 0 0/.55);--working:oklch(64% .16 153);--idle:oklch(72% .02 170);--handoff:oklch(76% .15 78);--bot-ai-chat:oklch(65% .14 205);--bot-tom:oklch(69% .13 223);--bot-ban-hang:oklch(74% .15 50);--bot-cong-nghe:oklch(66% .16 264);--bot-san-xuat:oklch(70% .15 156);--bot-tai-chinh:oklch(80% .16 86);--bot-cskh:oklch(74% .16 350);--bot-doi-thu:oklch(66% .16 305);--bot-content:oklch(73% .18 25);--bot-chay-qc:oklch(71% .13 186);--bot-video-sach:oklch(68% .17 0);--bot-cskh-sach:oklch(75% .14 120);--bot-content-khoa:oklch(72% .15 280);--bot-qc-khoa:oklch(70% .13 200);--bot-video-khoa:oklch(67% .18 330);--bot-sale-khoa:oklch(73% .15 70);--bot-truong-sach:oklch(78% .17 60);--bot-truong-khoa:oklch(78% .17 340);--bot-nghien-cuu-sach:oklch(70% .15 240);--bot-nghien-cuu-khoa:oklch(72% .15 150);--wood:oklch(58% .05 70);--wood-seam:oklch(40% .05 70);--wall:oklch(55% .015 120);--wall-trim:oklch(85% .18 122);--pot:oklch(60% .06 47);--leaf:oklch(58% .13 149);--rug:oklch(38% .05 185);--desk:oklch(62% .03 87);--computer:oklch(34% .023 190);--chair:oklch(48% .04 173);--eye:oklch(99% .005 90);--screen-active:oklch(75% .12 186);--screen-idle:oklch(39% .025 190);--skin:oklch(86% .06 55);--hair:oklch(31% .032 55);--trousers:oklch(35% .023 230);--glass:oklch(60% .04 215);--stone:oklch(50% .012 120);--stone-chip:oklch(50% .012 210);--machine-body:oklch(70% .008 215);--machine-metal:oklch(50% .018 220);--machine-accent:oklch(80% .17 122);--cardboard:oklch(62% .064 72);--truck-red:oklch(55% .19 27);--paper:oklch(90% .003 95);--lamp:oklch(92% .06 100);--light-sky:oklch(85% .02 215);--light-ground:oklch(50% .03 90)}:is(.office3d-root,.office3d-portal) *{box-sizing:border-box;border-color:var(--border);letter-spacing:0}.office3d-root{background:var(--background);color:var(--foreground);margin:0;font-family:Be Vietnam Pro,Arial,sans-serif;font-size:16px}:is(.office3d-root,.office3d-portal) button,:is(.office3d-root,.office3d-portal) select{font:inherit}:is(.office3d-root,.office3d-portal) button{cursor:pointer}:is(.office3d-root,.office3d-portal) .office-app{flex-direction:column;height:100dvh;min-height:620px;display:flex;overflow:hidden}:is(.office3d-root,.office3d-portal) .topbar{border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:13px;height:88px;padding:0 32px;display:flex}:is(.office3d-root,.office3d-portal) .brand-mark{background:var(--primary);width:43px;height:43px;color:var(--primary-foreground);border-radius:12px;place-items:center;display:grid}:is(.office3d-root,.office3d-portal) .brand h1{align-items:center;gap:10px;margin:0;font-size:32px;font-weight:700;display:flex}:is(.office3d-root,.office3d-portal) .brand p{color:var(--muted-foreground);margin:5px 0 0;font-size:16px}:is(.office3d-root,.office3d-portal) .version-label{color:var(--primary);border:1px solid var(--border);border-radius:4px;padding:3px 5px;font-size:12px}:is(.office3d-root,.office3d-portal) .playback-controls{align-items:center;gap:18px;margin-left:auto;display:flex}:is(.office3d-root,.office3d-portal) .source-badge{color:var(--muted-foreground);align-items:center;gap:7px;font-size:16px;display:flex}:is(.office3d-root,.office3d-portal) .source-badge i{background:var(--handoff);border-radius:50%;width:6px;height:6px}:is(.office3d-root,.office3d-portal) .speed-control{background:var(--muted);border-radius:7px;padding:3px;display:flex}:is(.office3d-root,.office3d-portal) .speed-control button{width:42px;height:36px;padding:0;font-size:16px}:is(.office3d-root,.office3d-portal) .speed-control .speed-active{background:var(--background);color:var(--primary);box-shadow:0 1px 4px var(--shadow)}:is(.office3d-root,.office3d-portal) .pause-button{height:40px;box-shadow:none;font-size:16px}:is(.office3d-root,.office3d-portal) .workspace{flex:1;min-height:0;display:flex}:is(.office3d-root,.office3d-portal) .office-view{background:var(--stage);flex:1;min-width:0;position:relative;overflow:hidden}:is(.office3d-root,.office3d-portal) .scene-heading{z-index:10;pointer-events:none;position:absolute;top:31px;left:32px}:is(.office3d-root,.office3d-portal) .eyebrow{color:var(--primary);font-size:14px;font-weight:600}:is(.office3d-root,.office3d-portal) .scene-heading>div{align-items:center;gap:14px;display:flex}:is(.office3d-root,.office3d-portal) .scene-heading h2{margin:10px 0 5px;font-size:36px;font-weight:600}:is(.office3d-root,.office3d-portal) .scene-heading p{color:var(--muted-foreground);margin:5px 0;font-size:16px}:is(.office3d-root,.office3d-portal) .team-badge{border:1px solid var(--border);background:var(--background);border-radius:5px;align-items:center;gap:5px;padding:5px 8px;font-size:14px;display:flex}:is(.office3d-root,.office3d-portal) .scene-stage{position:absolute;inset:100px 0 95px}:is(.office3d-root,.office3d-portal) .scene-tools{gap:7px;display:flex;position:absolute;top:30px;right:24px}:is(.office3d-root,.office3d-portal) .scene-tools button{background:var(--background);box-shadow:none;width:32px;height:32px}:is(.office3d-root,.office3d-portal) .scene-tools svg{width:14px}:is(.office3d-root,.office3d-portal) .scene-legend{color:var(--muted-foreground);pointer-events:none;justify-content:center;gap:20px;font-size:14px;display:flex;position:absolute;bottom:102px;left:0;right:0}:is(.office3d-root,.office3d-portal) .scene-legend span{align-items:center;gap:6px;display:flex}:is(.office3d-root,.office3d-portal) .working-dot,:is(.office3d-root,.office3d-portal) .idle-dot,:is(.office3d-root,.office3d-portal) .handoff-dot{background:var(--working);border-radius:50%;flex-shrink:0;width:6px;height:6px;display:inline-block}:is(.office3d-root,.office3d-portal) .idle-dot{background:var(--idle)}:is(.office3d-root,.office3d-portal) .handoff-dot{background:var(--handoff)}:is(.office3d-root,.office3d-portal) .scene-footer{justify-content:space-between;align-items:center;gap:10px;display:flex;position:absolute;bottom:24px;left:28px;right:28px}:is(.office3d-root,.office3d-portal) .office-live{align-items:center;gap:11px;display:flex}:is(.office3d-root,.office3d-portal) .live-icon{background:var(--background);border:1px solid var(--border);width:36px;height:36px;color:var(--primary);border-radius:8px;place-items:center;display:grid}:is(.office3d-root,.office3d-portal) .office-live strong{font-size:16px;font-weight:600}:is(.office3d-root,.office3d-portal) .office-live p{color:var(--muted-foreground);margin:5px 0 0;font-size:15px}:is(.office3d-root,.office3d-portal) .office-live b{color:var(--primary);font-weight:600}:is(.office3d-root,.office3d-portal) .office-live p span{margin:0 6px}:is(.office3d-root,.office3d-portal) .replay-date{color:var(--muted-foreground);gap:7px;font-size:14px;display:flex}:is(.office3d-root,.office3d-portal) .activity-panel{background:var(--background);border-left:1px solid var(--border);flex-direction:column;flex-shrink:0;width:420px;display:flex}:is(.office3d-root,.office3d-portal) .activity-heading{justify-content:space-between;align-items:center;padding:26px 22px 18px;display:flex}:is(.office3d-root,.office3d-portal) .activity-heading>div{align-items:center;gap:9px;display:flex}:is(.office3d-root,.office3d-portal) .activity-symbol{color:var(--primary)}:is(.office3d-root,.office3d-portal) .activity-heading h2{margin:0;font-size:21px;font-weight:600}:is(.office3d-root,.office3d-portal) .feed-counter{background:var(--secondary);min-width:21px;color:var(--primary);text-align:center;border-radius:5px;padding:3px 5px;font-size:14px}:is(.office3d-root,.office3d-portal) .feed-live-dot{background:var(--working);border-radius:50%;width:6px;height:6px}:is(.office3d-root,.office3d-portal) .activity-subheading{color:var(--muted-foreground);justify-content:space-between;align-items:center;padding:0 22px 20px;font-size:12px;display:flex}:is(.office3d-root,.office3d-portal) .activity-subheading svg{color:var(--primary)}:is(.office3d-root,.office3d-portal) .feed-filter{border-top:1px solid var(--border);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 22px;font-size:14px;display:flex}:is(.office3d-root,.office3d-portal) .feed-filter select{color:var(--foreground);background:0 0;border:0;outline:none;width:220px;font-size:16px}:is(.office3d-root,.office3d-portal) .feed-filter>span{color:var(--muted-foreground);font-size:12px}:is(.office3d-root,.office3d-portal) .feed-list{scrollbar-width:thin;flex:1;padding:0 20px 16px;overflow:auto}:is(.office3d-root,.office3d-portal) .feed-day{color:var(--muted-foreground);align-items:center;gap:10px;margin:18px 0 9px;font-size:12px;display:flex}:is(.office3d-root,.office3d-portal) .feed-day:after{content:"";background:var(--border);flex:1;height:1px}:is(.office3d-root,.office3d-portal) .feed-row{border-bottom:1px solid var(--border);gap:11px;padding:16px 0;animation:.4s ease-out feed-in;display:flex}:is(.office3d-root,.office3d-portal) .bot-avatar{background:color-mix(in oklch,var(--bot-color) 16%,var(--background));border:1px solid color-mix(in oklch,var(--bot-color) 22%,var(--background));border-radius:9px;flex-shrink:0;place-items:center;width:31px;height:31px;font-size:22px;display:grid}:is(.office3d-root,.office3d-portal) .bot-tom{--bot-color:var(--bot-tom)}:is(.office3d-root,.office3d-portal) .bot-ban-hang{--bot-color:var(--bot-ban-hang)}:is(.office3d-root,.office3d-portal) .bot-cong-nghe{--bot-color:var(--bot-cong-nghe)}:is(.office3d-root,.office3d-portal) .bot-san-xuat{--bot-color:var(--bot-san-xuat)}:is(.office3d-root,.office3d-portal) .bot-tai-chinh{--bot-color:var(--bot-tai-chinh)}:is(.office3d-root,.office3d-portal) .bot-cskh{--bot-color:var(--bot-cskh)}:is(.office3d-root,.office3d-portal) .bot-doi-thu{--bot-color:var(--bot-doi-thu)}:is(.office3d-root,.office3d-portal) .bot-content{--bot-color:var(--bot-content)}:is(.office3d-root,.office3d-portal) .bot-chay-qc{--bot-color:var(--bot-chay-qc)}:is(.office3d-root,.office3d-portal) .bot-video-sach{--bot-color:var(--bot-video-sach)}:is(.office3d-root,.office3d-portal) .bot-cskh-sach{--bot-color:var(--bot-cskh-sach)}:is(.office3d-root,.office3d-portal) .bot-content-khoa{--bot-color:var(--bot-content-khoa)}:is(.office3d-root,.office3d-portal) .bot-qc-khoa{--bot-color:var(--bot-qc-khoa)}:is(.office3d-root,.office3d-portal) .bot-video-khoa{--bot-color:var(--bot-video-khoa)}:is(.office3d-root,.office3d-portal) .bot-sale-khoa{--bot-color:var(--bot-sale-khoa)}:is(.office3d-root,.office3d-portal) .bot-truong-sach{--bot-color:var(--bot-truong-sach)}:is(.office3d-root,.office3d-portal) .bot-truong-khoa{--bot-color:var(--bot-truong-khoa)}:is(.office3d-root,.office3d-portal) .bot-nghien-cuu-sach{--bot-color:var(--bot-nghien-cuu-sach)}:is(.office3d-root,.office3d-portal) .bot-nghien-cuu-khoa{--bot-color:var(--bot-nghien-cuu-khoa)}:is(.office3d-root,.office3d-portal) .feed-content{flex:1;min-width:0}:is(.office3d-root,.office3d-portal) .feed-meta{flex-wrap:wrap;align-items:center;gap:4px;font-size:14px;display:flex}:is(.office3d-root,.office3d-portal) .feed-meta strong{font-weight:600}:is(.office3d-root,.office3d-portal) .feed-meta>span{color:var(--muted-foreground);font-size:12px}:is(.office3d-root,.office3d-portal) .feed-meta time{color:var(--muted-foreground);margin-left:auto;font-size:12px}:is(.office3d-root,.office3d-portal) .feed-content p{color:var(--foreground);margin:7px 0;font-size:16px;line-height:1.7}:is(.office3d-root,.office3d-portal) .feed-tags{align-items:center;gap:8px;display:flex}:is(.office3d-root,.office3d-portal) .feed-tags>span{color:var(--muted-foreground);align-items:center;gap:4px;font-size:12px;display:flex}:is(.office3d-root,.office3d-portal) .feed-tags b{color:var(--primary);background:var(--secondary);border-radius:3px;padding:2px 5px;font-size:12px;font-weight:500}:is(.office3d-root,.office3d-portal) .feed-content small{color:var(--muted-foreground);margin-top:7px;font-size:14px;line-height:1.6;display:block}:is(.office3d-root,.office3d-portal) .activity-bottom{border-top:1px solid var(--border);color:var(--muted-foreground);justify-content:space-between;align-items:center;padding:9px 20px;font-size:12px;display:flex}:is(.office3d-root,.office3d-portal) .activity-bottom>span{align-items:center;gap:7px;display:flex}:is(.office3d-root,.office3d-portal) .activity-bottom button{width:26px;height:26px}:is(.office3d-root,.office3d-portal) .bottom-bar{border-top:1px solid var(--border);height:39px;color:var(--muted-foreground);flex-shrink:0;justify-content:space-between;align-items:center;padding:0 30px;font-size:12px;display:flex}:is(.office3d-root,.office3d-portal) .bottom-bar>span{align-items:center;gap:8px;display:flex}:is(.office3d-root,.office3d-portal) .footer-symbol{color:var(--primary);font-size:27px}:is(.office3d-root,.office3d-portal) .footer-divider{color:var(--border);margin:0 3px}:is(.office3d-root,.office3d-portal) .privacy-note{font-size:12px}:is(.office3d-root,.office3d-portal) .wall-logo{color:var(--primary);white-space:nowrap;align-items:center;gap:10px;font-size:39px;font-weight:700;display:flex}:is(.office3d-root,.office3d-portal) .wall-logo span{font-size:22px}:is(.office3d-root,.office3d-portal) .nameplate{white-space:normal;text-align:center;background:var(--background);border:1px solid color-mix(in oklch,var(--bot-color) 35%,var(--background));border-bottom:2px solid var(--bot-color);width:118px;height:auto;min-height:30px;box-shadow:0 2px 5px var(--shadow);color:var(--foreground);border-radius:4px;justify-content:center;align-items:center;gap:6px;padding:5px 9px;font-size:15px;line-height:1.35;display:flex}:is(.office3d-root,.office3d-portal) .nameplate i{width:4px;height:4px}:is(.office3d-root,.office3d-portal) .task-bubble{background:var(--background);border:1px solid var(--border);width:max-content;max-width:210px;box-shadow:0 3px 8px var(--shadow);text-align:center;pointer-events:none;border-radius:7px;padding:6px 9px;font-size:15px;line-height:1.5}:is(.office3d-root,.office3d-portal) .packet-label{white-space:nowrap;color:var(--primary);background:var(--background);pointer-events:none;border-radius:4px;padding:3px 6px;font-size:15px}:is(.office3d-root,.office3d-portal) .detail-avatar{background:color-mix(in oklch,var(--bot-color) 18%,var(--background));border-radius:12px;place-items:center;width:62px;height:62px;margin-bottom:12px;font-size:48px;display:grid}:is(.office3d-root,.office3d-portal) .bot-sheet{width:440px;max-width:94vw;max-height:100dvh;overflow:auto}:is(.office3d-root,.office3d-portal) .bot-sheet h2{font-size:27px}:is(.office3d-root,.office3d-portal) .bot-sheet .text-muted-foreground{font-size:16px}:is(.office3d-root,.office3d-portal) .bot-sheet h3{color:var(--muted-foreground);margin:25px 0 10px;font-size:16px}:is(.office3d-root,.office3d-portal) .detail-status{color:var(--primary);align-items:center;gap:7px;margin-top:18px;font-size:16px;display:flex}:is(.office3d-root,.office3d-portal) .current-task{font-size:20px;line-height:1.8}:is(.office3d-root,.office3d-portal) .empty-text{color:var(--muted-foreground);padding:20px 0;font-size:16px;line-height:1.8}:is(.office3d-root,.office3d-portal) .drawer-toggle,:is(.office3d-root,.office3d-portal) .mobile-grip{display:none}@keyframes feed-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}:is(.office3d-root,.office3d-portal) .room-sign{background:var(--computer);color:var(--primary-foreground);white-space:nowrap;pointer-events:none;box-shadow:0 2px 5px var(--shadow);border-radius:3px;padding:5px 9px;font-size:13px;font-weight:600}:is(.office3d-root,.office3d-portal) .workshop-sign{background:var(--primary)}:is(.office3d-root,.office3d-portal) .company-logo{white-space:nowrap;text-align:center;color:var(--primary);text-shadow:0 2px 0 var(--background);pointer-events:none;font-size:28px;font-weight:700}:is(.office3d-root,.office3d-portal) .company-logo span{color:var(--foreground);margin-top:4px;font-size:11px;display:block}:is(.office3d-root,.office3d-portal) .machine-label{background:var(--background);color:var(--foreground);border:1px solid var(--border);white-space:nowrap;pointer-events:none;border-radius:3px;padding:3px 7px;font-size:12px}:is(.office3d-root,.office3d-portal) .scene-loading{background:var(--background);white-space:nowrap;padding:16px;font-size:16px}:is(.office3d-root,.office3d-portal) .nameplate-selected{outline:2px solid var(--primary)}@media (width>=1600px){:is(.office3d-root,.office3d-portal) .activity-panel{width:440px}:is(.office3d-root,.office3d-portal) .scene-stage{inset:105px 20px 95px}}@media (width<=1050px){:is(.office3d-root,.office3d-portal) .activity-panel{width:360px}:is(.office3d-root,.office3d-portal) .topbar{padding:0 22px}:is(.office3d-root,.office3d-portal) .scene-heading{left:24px}:is(.office3d-root,.office3d-portal) .scene-heading h2{font-size:32px}:is(.office3d-root,.office3d-portal) .team-badge{display:none}:is(.office3d-root,.office3d-portal) .scene-stage{inset:135px 0 110px}:is(.office3d-root,.office3d-portal) .replay-date{display:none}:is(.office3d-root,.office3d-portal) .playback-controls{gap:11px}}@media (width<=700px){:is(.office3d-root,.office3d-portal) .office-app{min-height:500px}:is(.office3d-root,.office3d-portal) .topbar{align-items:flex-start;gap:9px;height:138px;padding:14px 17px;position:relative}:is(.office3d-root,.office3d-portal) .brand-mark{border-radius:9px;width:33px;height:33px}:is(.office3d-root,.office3d-portal) .brand-mark svg{width:17px}:is(.office3d-root,.office3d-portal) .brand h1{gap:7px;font-size:24px}:is(.office3d-root,.office3d-portal) .brand p{margin-top:3px;font-size:15px}:is(.office3d-root,.office3d-portal) .version-label{padding:2px 4px;font-size:12px}:is(.office3d-root,.office3d-portal) .playback-controls{gap:10px;position:absolute;bottom:10px;left:17px;right:17px}:is(.office3d-root,.office3d-portal) .source-badge{margin-right:auto;font-size:15px}:is(.office3d-root,.office3d-portal) .speed-control{padding:2px}:is(.office3d-root,.office3d-portal) .speed-control button{width:38px;height:34px;font-size:16px}:is(.office3d-root,.office3d-portal) .pause-button{height:36px;padding:0 10px;font-size:16px}:is(.office3d-root,.office3d-portal) .pause-button svg{width:13px}:is(.office3d-root,.office3d-portal) .office-view{height:100%}:is(.office3d-root,.office3d-portal) .scene-heading{top:23px;left:20px}:is(.office3d-root,.office3d-portal) .eyebrow{font-size:12px}:is(.office3d-root,.office3d-portal) .scene-heading h2{margin-top:8px;font-size:28px}:is(.office3d-root,.office3d-portal) .scene-heading p{font-size:16px}:is(.office3d-root,.office3d-portal) .scene-stage{inset:105px 0 180px}:is(.office3d-root,.office3d-portal) .scene-tools{gap:5px;top:27px;right:17px}:is(.office3d-root,.office3d-portal) .scene-tools button{width:27px;height:27px}:is(.office3d-root,.office3d-portal) .scene-tools button:last-child{display:none}:is(.office3d-root,.office3d-portal) .scene-legend{gap:12px;font-size:12px;bottom:174px}:is(.office3d-root,.office3d-portal) .scene-footer{bottom:90px;left:20px;right:20px}:is(.office3d-root,.office3d-portal) .office-live strong{font-size:16px}:is(.office3d-root,.office3d-portal) .office-live p{font-size:15px}:is(.office3d-root,.office3d-portal) .live-icon{width:31px;height:31px}:is(.office3d-root,.office3d-portal) .activity-panel{z-index:20;border:1px solid var(--border);width:100%;height:65px;box-shadow:0 -5px 22px var(--shadow);border-radius:13px 13px 0 0;transition:height .3s;position:absolute;bottom:28px;left:0;right:0}:is(.office3d-root,.office3d-portal) .activity-panel.drawer-open{height:55dvh}:is(.office3d-root,.office3d-portal) .activity-heading{padding:11px 20px 12px}:is(.office3d-root,.office3d-portal) .activity-heading h2{font-size:19px}:is(.office3d-root,.office3d-portal) .activity-heading>div{gap:8px}:is(.office3d-root,.office3d-portal) .activity-symbol svg{width:15px}:is(.office3d-root,.office3d-portal) .mobile-grip{background:var(--border);border-radius:2px;width:30px;height:3px;margin:7px auto 0;display:block}:is(.office3d-root,.office3d-portal) .drawer-toggle{width:26px;height:26px;display:flex}:is(.office3d-root,.office3d-portal) .feed-live-dot,:is(.office3d-root,.office3d-portal) .activity-panel:not(.drawer-open) .activity-subheading,:is(.office3d-root,.office3d-portal) .activity-panel:not(.drawer-open) .feed-filter,:is(.office3d-root,.office3d-portal) .activity-panel:not(.drawer-open) .feed-list,:is(.office3d-root,.office3d-portal) .activity-panel:not(.drawer-open) .activity-bottom{display:none}:is(.office3d-root,.office3d-portal) .bottom-bar{height:28px;padding:0 17px;font-size:12px}:is(.office3d-root,.office3d-portal) .privacy-note{display:none!important}:is(.office3d-root,.office3d-portal) .footer-symbol{font-size:21px}:is(.office3d-root,.office3d-portal) .nameplate{gap:3px;width:82px;min-height:27px;padding:4px;font-size:12px;line-height:1.25}:is(.office3d-root,.office3d-portal) .nameplate.bot-ban-hang,:is(.office3d-root,.office3d-portal) .nameplate.bot-cskh,:is(.office3d-root,.office3d-portal) .nameplate.bot-tai-chinh{transform:translate(-22px)}:is(.office3d-root,.office3d-portal) .nameplate.bot-doi-thu,:is(.office3d-root,.office3d-portal) .nameplate.bot-chay-qc{transform:translate(12px)}:is(.office3d-root,.office3d-portal) .nameplate.bot-san-xuat{transform:translate(28px)}:is(.office3d-root,.office3d-portal) .task-bubble{transform:translateY(-25px)}:is(.office3d-root,.office3d-portal) .mobile-hidden-task{display:none}:is(.office3d-root,.office3d-portal) .machine-label{padding:2px 4px;font-size:10px;transform:translate(25px)}:is(.office3d-root,.office3d-portal) .task-bubble{max-width:155px;font-size:13px}:is(.office3d-root,.office3d-portal) .bot-sheet{padding:24px}:is(.office3d-root,.office3d-portal) .feed-meta,:is(.office3d-root,.office3d-portal) .feed-meta>span,:is(.office3d-root,.office3d-portal) .feed-meta time,:is(.office3d-root,.office3d-portal) .feed-tags>span,:is(.office3d-root,.office3d-portal) .feed-tags b,:is(.office3d-root,.office3d-portal) .feed-content small,:is(.office3d-root,.office3d-portal) .feed-day,:is(.office3d-root,.office3d-portal) .feed-filter,:is(.office3d-root,.office3d-portal) .feed-filter>span,:is(.office3d-root,.office3d-portal) .activity-bottom,:is(.office3d-root,.office3d-portal) .activity-subheading{font-size:15px}:is(.office3d-root,.office3d-portal) .feed-content p{font-size:16px}:is(.office3d-root,.office3d-portal) .feed-filter select{width:210px;font-size:16px}}@media (prefers-reduced-motion:reduce){:is(.office3d-root,.office3d-portal) *,:is(.office3d-root,.office3d-portal) :before,:is(.office3d-root,.office3d-portal) :after{transition:none!important;animation:none!important}}.office3d-root,.office3d-portal{--suit:oklch(33% .06 258);--suit-shirt:oklch(97% .004 250);--tie:oklch(56% .2 27);--ceo-accent:oklch(76% .15 78)}:is(.office3d-root,.office3d-portal) .camera-switch{background:var(--muted);border-radius:8px;gap:2px;padding:3px;display:flex}:is(.office3d-root,.office3d-portal) .camera-switch button{gap:6px;height:36px;padding:0 10px;font-size:16px}:is(.office3d-root,.office3d-portal) .camera-switch svg{width:18px;height:18px}:is(.office3d-root,.office3d-portal) .ceo-plate{--bot-color:var(--ceo-accent);white-space:nowrap;pointer-events:none;border-bottom-width:3px;width:auto;padding:6px 11px;font-size:16px;font-weight:700}:is(.office3d-root,.office3d-portal) .nameplate-walking{white-space:nowrap;width:auto}:is(.office3d-root,.office3d-portal) .talk-bubble{white-space:nowrap;background:var(--primary);color:var(--primary-foreground);box-shadow:0 3px 8px var(--shadow);pointer-events:none;border-radius:14px;padding:6px 11px;font-size:15px;line-height:1.4}:is(.office3d-root,.office3d-portal) .room-indicator{z-index:11;background:var(--background);border:1px solid var(--border);box-shadow:0 2px 6px var(--shadow);pointer-events:none;border-radius:9px;align-items:center;gap:7px;padding:8px 13px;font-size:17px;font-weight:600;display:flex;position:absolute;top:74px;right:24px}:is(.office3d-root,.office3d-portal) .room-indicator svg{width:18px;color:var(--ceo-accent)}:is(.office3d-root,.office3d-portal) .ceo-hint{z-index:12;white-space:normal;gap:9px;max-width:calc(100% - 32px);height:auto;min-height:46px;padding:8px 16px;font-size:17px;position:absolute;bottom:135px;left:50%;transform:translate(-50%)}:is(.office3d-root,.office3d-portal) .ceo-hint kbd{font:inherit;background:var(--primary-foreground);min-width:28px;color:var(--primary);border-radius:5px;padding:2px 7px;font-weight:700}:is(.office3d-root,.office3d-portal) .crosshair{pointer-events:none;background:linear-gradient(var(--foreground),var(--foreground)) center/2px 100% no-repeat,linear-gradient(var(--foreground),var(--foreground)) center/100% 2px no-repeat;opacity:.75;width:18px;height:18px;margin:-9px 0 0 -9px;position:absolute;top:50%;left:50%}:is(.office3d-root,.office3d-portal) .fps-help{z-index:11;background:var(--background);color:var(--muted-foreground);pointer-events:none;white-space:nowrap;border-radius:8px;margin:0;padding:6px 12px;font-size:15px;position:absolute;top:108px;left:50%;transform:translate(-50%)}:is(.office3d-root,.office3d-portal) .joystick{z-index:15;background:color-mix(in oklch,var(--background) 70%,transparent);border:2px solid var(--border);touch-action:none;width:112px;height:112px;box-shadow:0 3px 10px var(--shadow);border-radius:50%;display:none;position:absolute;bottom:200px;left:18px}:is(.office3d-root,.office3d-portal) .joystick-knob{background:var(--primary);opacity:.85;pointer-events:none;border-radius:50%;width:48px;height:48px;margin:-24px 0 0 -24px;position:absolute;top:50%;left:50%}@media (width<=1050px){:is(.office3d-root,.office3d-portal) .camera-switch button:not(.camera-active) span{display:none}}@media (pointer:coarse),(width<=700px){:is(.office3d-root,.office3d-portal) .joystick{display:block}:is(.office3d-root,.office3d-portal) .drawer-is-open .joystick{display:none}}@media (width<=700px){:is(.office3d-root,.office3d-portal) .source-badge,:is(.office3d-root,.office3d-portal) .pause-button span{display:none}:is(.office3d-root,.office3d-portal) .pause-button{flex-shrink:0;width:38px;min-width:38px;padding:0}:is(.office3d-root,.office3d-portal) .speed-control,:is(.office3d-root,.office3d-portal) .camera-switch{flex-shrink:0}:is(.office3d-root,.office3d-portal) .playback-controls{justify-content:space-between}:is(.office3d-root,.office3d-portal) .camera-switch button{height:34px;padding:0 11px}:is(.office3d-root,.office3d-portal) .camera-switch button span{display:none!important}:is(.office3d-root,.office3d-portal) .camera-switch svg{width:20px;height:20px}:is(.office3d-root,.office3d-portal) .room-indicator{padding:6px 10px;font-size:15px;top:64px;right:17px}:is(.office3d-root,.office3d-portal) .ceo-hint{max-width:calc(100% - 150px);font-size:15px;bottom:200px;left:auto;right:12px;transform:none}:is(.office3d-root,.office3d-portal) .fps-help{display:none}}.office3d-root,.office3d-portal{--status-moi:oklch(62% .14 245);--status-dang-lam:oklch(55% .18 250);--status-cho-duyet:oklch(60% .12 85);--status-xong:oklch(58% .14 155);--status-loi:oklch(58% .2 27)}:is(.office3d-root,.office3d-portal) .task-stats{grid-template-columns:repeat(3,1fr);gap:8px;padding:0 20px 16px;display:grid}:is(.office3d-root,.office3d-portal) .task-stats>div{border:1px solid var(--border);text-align:center;background:var(--muted);border-radius:10px;padding:10px 8px}:is(.office3d-root,.office3d-portal) .task-stats b{color:var(--primary);font-size:26px;font-weight:700;line-height:1.1;display:block}:is(.office3d-root,.office3d-portal) .task-stats span{color:var(--muted-foreground);font-size:15px}:is(.office3d-root,.office3d-portal) .task-list{border-top:1px solid var(--border)}:is(.office3d-root,.office3d-portal) .task-row{text-align:left;border:0;border-bottom:1px solid var(--border);width:100%;color:inherit;background:0 0;border-radius:6px;gap:11px;padding:15px 4px;display:flex}:is(.office3d-root,.office3d-portal) .task-row:hover,:is(.office3d-root,.office3d-portal) .task-row:focus-visible{background:var(--muted);outline:none}:is(.office3d-root,.office3d-portal) .task-row-body{flex:1;min-width:0}:is(.office3d-root,.office3d-portal) .task-row-meta{flex-wrap:wrap;align-items:center;gap:7px;font-size:15px;display:flex}:is(.office3d-root,.office3d-portal) .task-row-meta b{color:var(--primary);background:var(--secondary);border-radius:4px;padding:2px 6px;font-size:13px;font-weight:600}:is(.office3d-root,.office3d-portal) .task-row-meta time{color:var(--muted-foreground);margin-left:auto;font-size:13px}:is(.office3d-root,.office3d-portal) .task-row p{margin:6px 0 8px;font-size:17px;line-height:1.55}:is(.office3d-root,.office3d-portal) .task-row-foot{color:var(--muted-foreground);flex-wrap:wrap;align-items:center;gap:9px;font-size:14px;display:flex}:is(.office3d-root,.office3d-portal) .status-badge{color:var(--bg-status);background:color-mix(in oklch,var(--bg-status) 14%,var(--background));border:1px solid color-mix(in oklch,var(--bg-status) 35%,var(--background));border-radius:999px;align-items:center;padding:3px 9px;font-size:14px;font-weight:600;display:inline-flex}:is(.office3d-root,.office3d-portal) .status-moi{--bg-status:var(--status-moi)}:is(.office3d-root,.office3d-portal) .status-dang_lam{--bg-status:var(--status-dang-lam)}:is(.office3d-root,.office3d-portal) .status-cho_duyet{--bg-status:var(--status-cho-duyet)}:is(.office3d-root,.office3d-portal) .status-xong{--bg-status:var(--status-xong)}:is(.office3d-root,.office3d-portal) .status-loi{--bg-status:var(--status-loi)}:is(.office3d-root,.office3d-portal) .task-sentinel{min-height:44px;color:var(--muted-foreground);justify-content:center;align-items:center;gap:8px;font-size:14px;display:flex}:is(.office3d-root,.office3d-portal) .spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}:is(.office3d-root,.office3d-portal) .task-dialog{max-width:620px;max-height:90dvh;font-size:16px;overflow:auto}:is(.office3d-root,.office3d-portal) .task-dialog-head{text-align:left;align-items:flex-start;gap:14px;display:flex}:is(.office3d-root,.office3d-portal) .task-dialog-head .detail-avatar{flex-shrink:0;margin:0}:is(.office3d-root,.office3d-portal) .task-dialog h2{font-size:23px;line-height:1.35}:is(.office3d-root,.office3d-portal) .task-dialog [id$=description]{font-size:16px}:is(.office3d-root,.office3d-portal) .task-dialog h3{color:var(--muted-foreground);margin:18px 0 6px;font-size:15px;font-weight:600}:is(.office3d-root,.office3d-portal) .task-facts{border:1px solid var(--border);background:var(--muted);border-radius:10px;grid-template-columns:1fr 1fr;gap:10px 18px;padding:14px;display:grid}:is(.office3d-root,.office3d-portal) .task-facts>div{flex-direction:column;align-items:flex-start;gap:4px;display:flex}:is(.office3d-root,.office3d-portal) .task-facts span{color:var(--muted-foreground);font-size:14px}:is(.office3d-root,.office3d-portal) .task-facts b{font-size:16px;font-weight:600}:is(.office3d-root,.office3d-portal) .task-text{margin:0;font-size:17px;line-height:1.65}:is(.office3d-root,.office3d-portal) .task-result{color:var(--status-xong);font-weight:500}:is(.office3d-root,.office3d-portal) .task-timeline{border-left:2px solid var(--border);margin:6px 0 0;padding:0 0 0 18px;list-style:none}:is(.office3d-root,.office3d-portal) .task-timeline li{padding:0 0 14px 6px;position:relative}:is(.office3d-root,.office3d-portal) .task-timeline li:before{content:"";background:var(--primary);border:2px solid var(--background);border-radius:50%;width:12px;height:12px;position:absolute;top:6px;left:-25px}:is(.office3d-root,.office3d-portal) .task-timeline time{color:var(--muted-foreground);font-size:14px}:is(.office3d-root,.office3d-portal) .task-timeline div{flex-wrap:wrap;align-items:center;gap:6px;margin-top:2px;font-size:16px;display:flex}:is(.office3d-root,.office3d-portal) .timeline-action{background:var(--secondary);color:var(--primary);border-radius:4px;padding:2px 7px;font-size:13px}:is(.office3d-root,.office3d-portal) .task-timeline p{color:var(--muted-foreground);margin:3px 0 0;font-size:15px}@media (width<=700px){:is(.office3d-root,.office3d-portal) .activity-panel:not(.drawer-open) .task-stats{display:none}:is(.office3d-root,.office3d-portal) .task-facts{grid-template-columns:1fr}}:is(.office3d-root,.office3d-portal) :root{--primary:oklch(68% .18 42);--primary-foreground:oklch(100% 0 0);--foreground:oklch(30% .015 55);--muted-foreground:oklch(55% .013 60);--background:oklch(99.5% .003 85);--secondary:oklch(94% .012 80);--muted:oklch(97.5% .005 80);--border:oklch(92% .01 80);--stage:oklch(94.5% .013 90);--wood:oklch(90% .04 80);--wood-seam:oklch(83% .035 78);--wall:oklch(98.5% .006 85);--wall-trim:oklch(88% .015 75);--chair:oklch(80% .09 48);--rug:oklch(80% .06 160);--computer:oklch(22% .009 60);--screen-idle:oklch(19% .005 60);--screen-active:oklch(29% .022 180);--stone:oklch(91% .032 82);--stone-chip:oklch(86% .025 80);--floor-ink:oklch(47% .025 65);--light-sky:oklch(98.5% .008 90);--light-ground:oklch(85% .04 80);--shadow:oklch(35% .025 60/.1);--area-selected:oklch(95.5% .025 20);--approval:oklch(96% .065 85);--approval-ink:oklch(50% .085 70);--dark-control:oklch(29% .02 55)}:is(.office3d-root,.office3d-portal) .kantor-app{background:var(--stage);min-height:500px;position:relative}:is(.office3d-root,.office3d-portal) .kantor-app .scene-stage{position:absolute;inset:0}:is(.office3d-root,.office3d-portal) .kantor-header{z-index:20;pointer-events:none;grid-template-columns:minmax(0,340px) minmax(0,1fr);align-items:start;gap:22px;display:grid;position:absolute;inset:22px 24px auto}:is(.office3d-root,.office3d-portal) .logo-card,:is(.office3d-root,.office3d-portal) .member-bar,:is(.office3d-root,.office3d-portal) .bottom-toolbar,:is(.office3d-root,.office3d-portal) .activity-panel{background:var(--background);border:1px solid color-mix(in oklch,var(--border) 60%,transparent);box-shadow:0 8px 30px var(--shadow);pointer-events:auto;border-radius:20px}:is(.office3d-root,.office3d-portal) .logo-card{align-items:center;gap:13px;padding:17px 18px;display:flex}:is(.office3d-root,.office3d-portal) .brand-mark{background:var(--primary);border-radius:15px;flex-shrink:0;width:49px;height:49px}:is(.office3d-root,.office3d-portal) .brand-mark svg{width:26px;height:26px}:is(.office3d-root,.office3d-portal) .brand{min-width:0}:is(.office3d-root,.office3d-portal) .brand h1{white-space:nowrap;margin:0;font-size:24px;line-height:1.3}:is(.office3d-root,.office3d-portal) .brand p{white-space:nowrap;margin:5px 0 0;font-size:15px}:is(.office3d-root,.office3d-portal) .member-bar{border-radius:16px;justify-self:end;align-items:center;gap:9px;max-width:100%;padding:11px 13px;display:flex}:is(.office3d-root,.office3d-portal) .member-bar button{border-radius:11px;flex-shrink:0;gap:7px;height:42px;font-size:15px}:is(.office3d-root,.office3d-portal) .member-bar svg{width:18px;height:18px}:is(.office3d-root,.office3d-portal) .member-picker{align-items:center;gap:7px;font-size:15px;display:flex}:is(.office3d-root,.office3d-portal) .member-picker select{background:0 0;border:0;outline:none;width:66px;font-size:15px}:is(.office3d-root,.office3d-portal) .member-chips{border-right:1px solid var(--border);align-items:center;gap:0;padding-right:9px;display:flex}:is(.office3d-root,.office3d-portal) .member-chip{border:2px solid var(--background);min-width:35px;margin-left:-4px;background:color-mix(in oklch,var(--bot-color) 45%,var(--background))!important;border-radius:50%!important;width:35px!important;height:35px!important;padding:0!important;font-size:12px!important}:is(.office3d-root,.office3d-portal) .member-chips>span{background:var(--muted);border:2px solid var(--background);border-radius:50%;place-items:center;width:35px;height:35px;font-size:13px;display:grid}:is(.office3d-root,.office3d-portal) .member-bar button b{background:color-mix(in oklch,var(--primary-foreground) 25%,transparent);border-radius:6px;padding:2px 6px;font-size:13px}:is(.office3d-root,.office3d-portal) .view-all{width:100%;height:44px;margin-top:10px;font-size:15px;background:var(--dark-control)!important;color:var(--primary-foreground)!important;border-radius:11px!important}:is(.office3d-root,.office3d-portal) .activity-panel{z-index:16;border-left:1px solid var(--border);width:345px;position:absolute;top:132px;bottom:124px;right:24px;overflow:hidden}:is(.office3d-root,.office3d-portal) .activity-heading{grid-template-columns:minmax(0,1fr) auto;gap:5px;padding:22px 18px 18px;display:grid}:is(.office3d-root,.office3d-portal) .activity-heading>div{gap:6px;min-width:0}:is(.office3d-root,.office3d-portal) .activity-heading h2{white-space:nowrap;font-size:19px}:is(.office3d-root,.office3d-portal) .activity-symbol,:is(.office3d-root,.office3d-portal) .feed-counter{display:none}:is(.office3d-root,.office3d-portal) .journal-live{color:var(--working);white-space:nowrap;align-items:center;gap:5px;font-size:12px;display:flex}:is(.office3d-root,.office3d-portal) .task-stats>div{background:var(--muted);border:none;border-radius:12px;padding:13px 2px}:is(.office3d-root,.office3d-portal) .task-stats b{color:var(--foreground);margin-bottom:7px;font-size:26px}:is(.office3d-root,.office3d-portal) .task-stats>div:first-child b{color:var(--primary)}:is(.office3d-root,.office3d-portal) .task-stats>div:last-child b{color:var(--working)}:is(.office3d-root,.office3d-portal) .task-list{border-top:0;padding:0 17px 12px}:is(.office3d-root,.office3d-portal) .task-row{grid-template-columns:32px minmax(0,1fr);min-height:95px;white-space:normal!important;border-radius:0!important;align-items:start!important;gap:10px!important;height:auto!important;padding:17px 0!important;display:grid!important}:is(.office3d-root,.office3d-portal) .task-row .bot-avatar{background:color-mix(in oklch,var(--bot-color) 22%,var(--background));border-radius:50%;width:31px;height:31px;margin-top:20px;font-size:12px}:is(.office3d-root,.office3d-portal) .task-row p{margin:5px 0 7px;font-size:15px;font-weight:500;line-height:1.65}:is(.office3d-root,.office3d-portal) .task-row-meta{gap:5px;font-size:12px}:is(.office3d-root,.office3d-portal) .task-row-meta strong{display:none}:is(.office3d-root,.office3d-portal) .task-row-meta b{color:var(--muted-foreground);background:0 0;padding:0;font-size:11px}:is(.office3d-root,.office3d-portal) .task-row-meta time,:is(.office3d-root,.office3d-portal) .task-row-foot{font-size:12px}:is(.office3d-root,.office3d-portal) .task-row-foot>span:not(.status-badge){display:none}:is(.office3d-root,.office3d-portal) .status-badge{padding:2px 7px;font-size:12px}:is(.office3d-root,.office3d-portal) .task-sentinel{font-size:13px}:is(.office3d-root,.office3d-portal) .approval-banner{background:var(--approval);color:var(--approval-ink);border-radius:10px;margin:0 17px 12px;padding:10px 12px;font-size:15px}:is(.office3d-root,.office3d-portal) .bottom-toolbar{z-index:18;scrollbar-width:none;border-radius:50px;align-items:center;gap:4px;max-width:calc(100% - 48px);padding:10px 15px;display:flex;position:absolute;bottom:28px;left:50%;overflow-x:auto;transform:translate(-50%)}:is(.office3d-root,.office3d-portal) .bottom-toolbar>button{border-radius:25px;flex-shrink:0;gap:7px;height:44px;font-size:15px}:is(.office3d-root,.office3d-portal) .toolbar-divider{background:var(--border);flex-shrink:0;width:1px;height:23px;margin:0 6px}:is(.office3d-root,.office3d-portal) .camera-switch{background:0 0;flex-shrink:0;gap:3px;padding:0}:is(.office3d-root,.office3d-portal) .camera-switch button{white-space:nowrap;border-radius:25px;height:44px;padding:0 12px;font-size:14px}:is(.office3d-root,.office3d-portal) .camera-switch .camera-active{background:var(--secondary);color:var(--foreground);box-shadow:none}:is(.office3d-root,.office3d-portal) .camera-switch button span{display:inline!important}:is(.office3d-root,.office3d-portal) .nameplate{min-width:40px;box-shadow:0 3px 8px var(--shadow);gap:5px;font-weight:800;border:1px solid var(--border)!important;border-radius:10px!important;width:auto!important;height:29px!important;min-height:29px!important;padding:3px 9px!important;font-size:13px!important;transform:none!important}:is(.office3d-root,.office3d-portal) .nameplate i{display:none}:is(.office3d-root,.office3d-portal) .ceo-plate{color:var(--primary)}:is(.office3d-root,.office3d-portal) .room-indicator{background:color-mix(in oklch,var(--background) 85%,transparent);border:0;padding:7px 12px;font-size:14px;top:112px;left:50%;right:auto;transform:translate(-50%)}:is(.office3d-root,.office3d-portal) .fps-help{display:none}:is(.office3d-root,.office3d-portal) .ceo-hint{font-size:15px;bottom:100px}:is(.office3d-root,.office3d-portal) .task-dialog .status-badge{font-size:15px}:is(.office3d-root,.office3d-portal) .bot-sheet{padding:24px}:is(.office3d-root,.office3d-portal) .task-dialog .detail-avatar{font-size:23px}:is(.office3d-root,.office3d-portal) .company-logo{color:var(--primary);font-size:25px}@media (width>=1500px){:is(.office3d-root,.office3d-portal) .activity-panel{width:365px}}@media (width<=1200px){:is(.office3d-root,.office3d-portal) .member-picker>span,:is(.office3d-root,.office3d-portal) .ceo-control span{display:none}:is(.office3d-root,.office3d-portal) .member-bar{gap:6px}:is(.office3d-root,.office3d-portal) .kantor-header{grid-template-columns:minmax(0,320px) minmax(0,1fr);gap:12px}:is(.office3d-root,.office3d-portal) .activity-panel{width:310px}}@media (width<=900px){:is(.office3d-root,.office3d-portal) .member-chips,:is(.office3d-root,.office3d-portal) .member-picker{display:none}:is(.office3d-root,.office3d-portal) .activity-panel{width:285px}:is(.office3d-root,.office3d-portal) .activity-heading h2{font-size:17px}:is(.office3d-root,.office3d-portal) .journal-live{font-size:11px}:is(.office3d-root,.office3d-portal) .bottom-toolbar{padding:7px 10px}:is(.office3d-root,.office3d-portal) .bottom-toolbar>button{padding:0 10px}:is(.office3d-root,.office3d-portal) .camera-switch button{padding:0 9px}}@media (width<=700px){:is(.office3d-root,.office3d-portal) .kantor-header{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid;inset:12px 12px auto}:is(.office3d-root,.office3d-portal) .logo-card{border-radius:16px;gap:9px;padding:10px 12px}:is(.office3d-root,.office3d-portal) .brand-mark{border-radius:11px;width:36px;height:36px}:is(.office3d-root,.office3d-portal) .brand-mark svg{width:21px}:is(.office3d-root,.office3d-portal) .brand h1{font-size:19px}:is(.office3d-root,.office3d-portal) .brand p{white-space:normal;font-size:11px}:is(.office3d-root,.office3d-portal) .member-bar{box-shadow:none;border-radius:14px;gap:3px;padding:6px}:is(.office3d-root,.office3d-portal) .member-bar button{gap:0;width:35px;height:40px;padding:0}:is(.office3d-root,.office3d-portal) .member-bar button span,:is(.office3d-root,.office3d-portal) .member-bar button b,:is(.office3d-root,.office3d-portal) .ceo-control{display:none!important}:is(.office3d-root,.office3d-portal) .kantor-app .scene-stage{inset:0 0 75px}:is(.office3d-root,.office3d-portal) .room-indicator{white-space:normal;max-width:170px;padding:7px 9px;font-size:12px;top:105px;left:auto;right:14px;transform:none}:is(.office3d-root,.office3d-portal) .room-indicator svg{width:14px}:is(.office3d-root,.office3d-portal) .activity-panel{z-index:22;width:100%;height:63px;box-shadow:0 -3px 18px var(--shadow);border-radius:20px 20px 0 0;inset:auto 0 0}:is(.office3d-root,.office3d-portal) .activity-panel.drawer-open{height:62dvh}:is(.office3d-root,.office3d-portal) .activity-heading{padding:10px 18px 12px;display:flex}:is(.office3d-root,.office3d-portal) .activity-heading h2{font-size:18px}:is(.office3d-root,.office3d-portal) .journal-live{font-size:12px}:is(.office3d-root,.office3d-portal) .mobile-grip{background:var(--border);border-radius:3px;width:36px;height:4px;margin:7px auto 0;display:block}:is(.office3d-root,.office3d-portal) .drawer-toggle{width:28px;height:28px;display:flex}:is(.office3d-root,.office3d-portal) .activity-panel:not(.drawer-open) .approval-banner{display:none}:is(.office3d-root,.office3d-portal) .task-stats span{font-size:15px}:is(.office3d-root,.office3d-portal) .task-row p{font-size:16px}:is(.office3d-root,.office3d-portal) .task-row-meta time{font-size:15px}:is(.office3d-root,.office3d-portal) .task-row-meta b,:is(.office3d-root,.office3d-portal) .task-row .status-badge{font-size:14px}:is(.office3d-root,.office3d-portal) .bottom-toolbar{border-radius:30px;justify-content:flex-start;gap:0;width:auto;max-width:none;padding:7px 8px;bottom:78px;left:12px;right:12px;transform:none}:is(.office3d-root,.office3d-portal) .bottom-toolbar>button,:is(.office3d-root,.office3d-portal) .camera-switch button{height:40px;font-size:15px}:is(.office3d-root,.office3d-portal) .camera-switch button span{display:inline!important}:is(.office3d-root,.office3d-portal) .toolbar-divider{margin:0 4px}:is(.office3d-root,.office3d-portal) .joystick{z-index:19;width:100px;height:100px;bottom:157px;left:17px}:is(.office3d-root,.office3d-portal) .joystick-knob{width:43px;height:43px;margin:-21.5px}:is(.office3d-root,.office3d-portal) .ceo-hint{max-width:calc(100% - 135px);font-size:15px;bottom:165px;right:13px}:is(.office3d-root,.office3d-portal) .nameplate{min-width:33px;height:26px!important;min-height:26px!important;padding:3px 7px!important;font-size:12px!important}:is(.office3d-root,.office3d-portal) .task-bubble{font-size:15px}:is(.office3d-root,.office3d-portal) .bot-sheet h2{font-size:25px}:is(.office3d-root,.office3d-portal) .task-dialog{max-width:calc(100vw - 24px)}:is(.office3d-root,.office3d-portal) .task-dialog h2{font-size:22px}:is(.office3d-root,.office3d-portal) .task-sentinel{font-size:15px}}:is(.office3d-root,.office3d-portal) :root{--partition-frame:oklch(40% .02 60);--screen-text:oklch(78% .04 160)}:is(.office3d-root,.office3d-portal) .kantor-app .nameplate-working{background:color-mix(in oklch,var(--working) 10%,var(--background));border-color:var(--working)!important}:is(.office3d-root,.office3d-portal) .kantor-app .nameplate i{width:5px;height:5px;display:inline-block}:is(.office3d-root,.office3d-portal) .kantor-app .nameplate-working i{box-shadow:0 0 0 2px color-mix(in oklch,var(--working) 18%,transparent)}:is(.office3d-root,.office3d-portal) .character-avatar{border-radius:50%;width:100%;height:100%;display:block;overflow:hidden}:is(.office3d-root,.office3d-portal) .portrait-background{fill:color-mix(in oklch,var(--bot-color) 20%,var(--background))}:is(.office3d-root,.office3d-portal) .portrait-shirt{fill:var(--bot-color)}:is(.office3d-root,.office3d-portal) .portrait-skin{fill:var(--skin)}:is(.office3d-root,.office3d-portal) .portrait-hair,:is(.office3d-root,.office3d-portal) .portrait-eye{fill:var(--hair)}:is(.office3d-root,.office3d-portal) .portrait-smile{fill:none;stroke:var(--hair);stroke-width:1.6px;stroke-linecap:round}:is(.office3d-root,.office3d-portal) .portrait-antenna{fill:none;stroke:var(--bot-color);stroke-width:3px}:is(.office3d-root,.office3d-portal) .kantor-header{grid-template-columns:260px minmax(0,1fr);gap:12px;inset:14px 16px auto}:is(.office3d-root,.office3d-portal) .logo-card{border-radius:12px;gap:10px;padding:11px 12px}:is(.office3d-root,.office3d-portal) .brand-mark{border-radius:10px;width:37px;height:37px}:is(.office3d-root,.office3d-portal) .brand-mark svg{width:21px}:is(.office3d-root,.office3d-portal) .brand h1{font-size:19px}:is(.office3d-root,.office3d-portal) .brand p{margin-top:3px;font-size:12px}:is(.office3d-root,.office3d-portal) .member-bar{border-radius:12px;gap:6px;padding:7px 9px}:is(.office3d-root,.office3d-portal) .member-bar button{border-radius:7px;height:34px;padding:0 9px;font-size:13px}:is(.office3d-root,.office3d-portal) .member-picker,:is(.office3d-root,.office3d-portal) .member-picker select{font-size:13px}:is(.office3d-root,.office3d-portal) .member-chip{min-width:30px;overflow:hidden;width:30px!important;height:30px!important}:is(.office3d-root,.office3d-portal) .member-chips>span{width:30px;height:30px;font-size:12px}:is(.office3d-root,.office3d-portal) .thumb-1 img{left:-43px}:is(.office3d-root,.office3d-portal) .thumb-2 img{top:-43px}:is(.office3d-root,.office3d-portal) .thumb-3 img{top:-43px;left:-43px}:is(.office3d-root,.office3d-portal) .view-all{height:34px;margin-top:5px;font-size:12px;border-radius:7px!important}:is(.office3d-root,.office3d-portal) .activity-panel{border-radius:13px;width:285px;top:98px;bottom:98px;right:16px}:is(.office3d-root,.office3d-portal) .activity-heading{padding:15px 12px 12px}:is(.office3d-root,.office3d-portal) .activity-heading h2{font-size:16px}:is(.office3d-root,.office3d-portal) .journal-live{font-size:10px}:is(.office3d-root,.office3d-portal) .task-stats{gap:5px;padding:0 12px 12px}:is(.office3d-root,.office3d-portal) .task-stats>div{border-radius:7px;padding:9px 2px}:is(.office3d-root,.office3d-portal) .task-stats b{margin-bottom:4px;font-size:20px}:is(.office3d-root,.office3d-portal) .task-stats span{font-size:11px}:is(.office3d-root,.office3d-portal) .task-list{padding:0 12px 12px}:is(.office3d-root,.office3d-portal) .task-row{grid-template-columns:28px minmax(0,1fr);min-height:80px;gap:8px!important;padding:12px 0!important}:is(.office3d-root,.office3d-portal) .task-row .bot-avatar{width:28px;height:28px;margin-top:4px;overflow:hidden}:is(.office3d-root,.office3d-portal) .task-row-meta strong{font-size:12px;line-height:1.4;display:block}:is(.office3d-root,.office3d-portal) .task-row p{font-size:13px;line-height:1.55}:is(.office3d-root,.office3d-portal) .task-row-meta time,:is(.office3d-root,.office3d-portal) .task-row-meta b{font-size:10px}:is(.office3d-root,.office3d-portal) .status-badge{font-size:11px}:is(.office3d-root,.office3d-portal) .task-dialog .detail-avatar{overflow:hidden}:is(.office3d-root,.office3d-portal) .bottom-toolbar{border-radius:16px;padding:6px 10px;bottom:18px}:is(.office3d-root,.office3d-portal) .bottom-toolbar>button,:is(.office3d-root,.office3d-portal) .camera-switch button{border-radius:8px;height:35px;padding:0 9px;font-size:13px}:is(.office3d-root,.office3d-portal) .bottom-toolbar svg{width:16px;height:16px}:is(.office3d-root,.office3d-portal) .room-indicator{padding:5px 8px;font-size:12px;top:84px}:is(.office3d-root,.office3d-portal) .kantor-app .nameplate,:is(.office3d-root,.office3d-portal) .kantor-app .overview-name{white-space:nowrap;max-width:none;box-shadow:0 2px 4px var(--shadow);font-weight:600;line-height:1.1;border-radius:5px!important;width:max-content!important;height:22px!important;min-height:22px!important;padding:2px 5px!important;font-size:10px!important;transform:none!important}:is(.office3d-root,.office3d-portal) .kantor-app .ceo-plate{font-size:11px!important}:is(.office3d-root,.office3d-portal) .machine-label{background:color-mix(in oklch,var(--background) 80%,transparent);font-size:10px}@media (width<=1050px){:is(.office3d-root,.office3d-portal) .member-picker>span,:is(.office3d-root,.office3d-portal) .ceo-control span{display:none}:is(.office3d-root,.office3d-portal) .member-chips,:is(.office3d-root,.office3d-portal) .member-picker{display:flex}:is(.office3d-root,.office3d-portal) .kantor-header{grid-template-columns:245px minmax(0,1fr)}:is(.office3d-root,.office3d-portal) .member-bar button{padding:0 7px}:is(.office3d-root,.office3d-portal) .activity-panel{width:260px}}@media (width<=700px){:is(.office3d-root,.office3d-portal) .kantor-header{grid-template-columns:minmax(0,1fr) auto;gap:6px;inset:10px 10px auto}:is(.office3d-root,.office3d-portal) .logo-card{gap:7px;padding:9px}:is(.office3d-root,.office3d-portal) .brand h1{font-size:17px}:is(.office3d-root,.office3d-portal) .brand p{white-space:normal;font-size:11px}:is(.office3d-root,.office3d-portal) .brand-mark{width:30px;height:30px}:is(.office3d-root,.office3d-portal) .member-bar{gap:2px;padding:5px}:is(.office3d-root,.office3d-portal) .member-bar button{width:32px;height:34px;padding:0}:is(.office3d-root,.office3d-portal) .member-picker,:is(.office3d-root,.office3d-portal) .member-chips{display:none}:is(.office3d-root,.office3d-portal) .room-indicator{font-size:12px;top:89px}:is(.office3d-root,.office3d-portal) .activity-panel{border-radius:16px 16px 0 0;width:100%;height:63px;inset:auto 0 0}:is(.office3d-root,.office3d-portal) .activity-heading{padding:10px 16px}:is(.office3d-root,.office3d-portal) .activity-heading h2{font-size:17px}:is(.office3d-root,.office3d-portal) .journal-live{font-size:12px}:is(.office3d-root,.office3d-portal) .task-stats span,:is(.office3d-root,.office3d-portal) .task-row-meta strong,:is(.office3d-root,.office3d-portal) .task-row-meta time,:is(.office3d-root,.office3d-portal) .task-row p{font-size:15px}:is(.office3d-root,.office3d-portal) .task-row-meta b,:is(.office3d-root,.office3d-portal) .status-badge{font-size:13px}:is(.office3d-root,.office3d-portal) .bottom-toolbar{padding:5px 7px;bottom:77px;left:10px;right:10px;transform:none}:is(.office3d-root,.office3d-portal) .bottom-toolbar>button,:is(.office3d-root,.office3d-portal) .camera-switch button{height:36px;font-size:15px}:is(.office3d-root,.office3d-portal) .kantor-app .nameplate{white-space:normal;max-width:104px;height:auto!important;min-height:20px!important;font-size:9px!important}:is(.office3d-root,.office3d-portal) .joystick{bottom:150px}:is(.office3d-root,.office3d-portal) .task-row .bot-avatar{width:28px;height:28px}}:is(.office3d-root,.office3d-portal) .speech-bubble{background:var(--background);width:max-content;max-width:260px;color:var(--foreground);border:2px solid var(--bot-color);box-shadow:0 4px 12px var(--shadow);text-align:center;pointer-events:none;-webkit-line-clamp:3;border-radius:16px;-webkit-box-orient:vertical;padding:8px 14px;font-size:18px;font-weight:500;line-height:1.35;animation:.35s ease-out both speech-in;display:-webkit-box;position:relative;overflow:visible;transform:translateY(-14px)}:is(.office3d-root,.office3d-portal) .speech-bubble:after{content:"";background:var(--background);border-right:2px solid var(--bot-color);border-bottom:2px solid var(--bot-color);width:14px;height:14px;position:absolute;bottom:-9px;left:50%;transform:translate(-50%)rotate(45deg)}@keyframes speech-in{0%{opacity:0;transform:translateY(-6px)scale(.9)}to{opacity:1;transform:translateY(-14px)scale(1)}}@media (width<=700px){:is(.office3d-root,.office3d-portal) .speech-bubble{max-width:210px;padding:7px 11px;font-size:16px;display:-webkit-box!important}}:is(.office3d-root,.office3d-portal) .debug-stats{z-index:60;background:color-mix(in oklch,var(--foreground) 82%,transparent);color:var(--background);pointer-events:none;white-space:pre;border-radius:8px;margin:0;padding:8px 10px;font:12px/1.45 ui-monospace,monospace;position:fixed;bottom:8px;left:8px}:is(.office3d-root,.office3d-portal) .scene-label{opacity:1;transition:opacity .15s}:is(.office3d-root,.office3d-portal) .scene-label[data-hidden=true]{opacity:0;visibility:hidden;pointer-events:none}:is(.office3d-root,.office3d-portal) .camera-switch .camera-active{background:var(--primary);color:var(--primary-foreground)}:is(.office3d-root,.office3d-portal) .bot-ai-chat{--bot-color:var(--bot-ai-chat)}:is(.office3d-root,.office3d-portal) .portrait-headset{fill:none;stroke:var(--hair);stroke-width:4px;stroke-linecap:round}:is(.office3d-root,.office3d-portal) .portrait-chat{fill:var(--paper)}:is(.office3d-root,.office3d-portal) .auth-page{background:var(--background);place-items:center;min-height:100vh;padding:24px;display:grid}:is(.office3d-root,.office3d-portal) .auth-card{background:var(--card);width:100%;max-width:380px;color:var(--card-foreground);border:1px solid var(--border);box-shadow:0 10px 30px color-mix(in oklab,var(--foreground) 10%,transparent);border-radius:20px;flex-direction:column;gap:10px;padding:28px;display:flex}:is(.office3d-root,.office3d-portal) .auth-card h1{margin:0;font-size:24px;font-weight:700}:is(.office3d-root,.office3d-portal) .auth-card p{color:var(--muted-foreground);margin:0 0 6px}:is(.office3d-root,.office3d-portal) .auth-msg{font-size:14px}:is(.office3d-root,.office3d-portal) .task-result{white-space:pre-line}:is(.office3d-root,.office3d-portal) .task-activity{color:var(--foreground);font-weight:600}:is(.office3d-root,.office3d-portal) .task-row-body p{white-space:normal}:is(.office3d-root,.office3d-portal) .kantor-app .speech-bubble,:is(.office3d-root,.office3d-portal) .kantor-app .task-bubble{border:1px solid color-mix(in oklch,var(--bot-color) 55%,var(--border));background:var(--background);width:max-content;max-width:180px;color:var(--foreground);box-shadow:0 2px 5px var(--shadow);text-align:center;pointer-events:none;border-radius:7px;padding:5px 8px;font-size:11px;font-weight:500;line-height:1.35;animation:none;position:relative;transform:none}:is(.office3d-root,.office3d-portal) .kantor-app .speech-bubble>span,:is(.office3d-root,.office3d-portal) .kantor-app .task-bubble>span{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:is(.office3d-root,.office3d-portal) .scene-label{pointer-events:none}:is(.office3d-root,.office3d-portal) .scene-label .nameplate{pointer-events:auto}:is(.office3d-root,.office3d-portal) .scene-label[data-hidden=true] .nameplate{pointer-events:none}:is(.office3d-root,.office3d-portal) .kantor-app .speech-bubble:after,:is(.office3d-root,.office3d-portal) .kantor-app .task-bubble:after{content:"";background:var(--background);border-right:1px solid var(--bot-color);border-bottom:1px solid var(--bot-color);width:6px;height:6px;position:absolute;bottom:-4px;left:50%;transform:translate(-50%)rotate(45deg)}:is(.office3d-root,.office3d-portal) .kantor-app .task-list{overscroll-behavior:contain;min-height:0;padding:0 12px 12px;overflow-y:auto}:is(.office3d-root,.office3d-portal) .kantor-app .task-row{grid-template-columns:28px minmax(0,1fr);min-height:0;gap:9px!important;padding:11px 0!important}:is(.office3d-root,.office3d-portal) .kantor-app .task-row .bot-avatar{border-radius:50%;width:28px;height:28px;margin:2px 0 0}:is(.office3d-root,.office3d-portal) .kantor-app .task-row-meta{display:block}:is(.office3d-root,.office3d-portal) .kantor-app .task-row-meta strong{white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600;display:block;overflow:hidden}:is(.office3d-root,.office3d-portal) .kantor-app .task-row-body p{white-space:nowrap;text-overflow:ellipsis;margin:3px 0 6px;font-size:12px;font-weight:400;line-height:1.5;display:block;overflow:hidden}:is(.office3d-root,.office3d-portal) .kantor-app .task-row-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:5px;display:flex}:is(.office3d-root,.office3d-portal) .kantor-app .task-row-foot time{color:var(--muted-foreground);white-space:nowrap;font-size:10px}:is(.office3d-root,.office3d-portal) .kantor-app .status-badge{border-radius:5px;padding:2px 6px;font-size:10px;line-height:1.4}@media (width<=700px){:is(.office3d-root,.office3d-portal) .kantor-app .task-row-meta strong,:is(.office3d-root,.office3d-portal) .kantor-app .task-row-body p{font-size:14px}:is(.office3d-root,.office3d-portal) .kantor-app .status-badge,:is(.office3d-root,.office3d-portal) .kantor-app .task-row-foot time{font-size:12px}}:is(.office3d-root,.office3d-portal) .room-picker{z-index:20;border:1px solid var(--border);background:var(--background);color:var(--foreground);box-shadow:0 3px 10px var(--shadow);border-radius:8px;align-items:center;gap:8px;max-width:calc(100% - 32px);padding:7px 10px;font-size:12px;display:flex;position:absolute;top:87px;left:16px}:is(.office3d-root,.office3d-portal) .room-picker>span{color:var(--muted-foreground)}:is(.office3d-root,.office3d-portal) .room-picker select{background:var(--background);min-width:0;max-width:190px;color:var(--foreground);cursor:pointer;border:0;font-size:12px}:is(.office3d-root,.office3d-portal) .staff-role{color:var(--muted-foreground);font-size:8px;font-weight:500;line-height:1.2;display:block}@media (width<=700px){:is(.office3d-root,.office3d-portal) .room-picker{gap:4px;padding:6px 8px;top:79px;left:10px}:is(.office3d-root,.office3d-portal) .room-picker>span{display:none}:is(.office3d-root,.office3d-portal) .room-picker select{max-width:170px;font-size:12px}}.office3d-frame{border:1px solid var(--border);border-radius:10px;height:calc(100dvh - 120px);min-height:560px;position:relative;overflow:hidden}.office3d-frame:fullscreen{border-radius:0;height:100dvh}.office3d-frame .office-app{height:100%;min-height:0}.office3d-loading{height:100%;color:var(--muted-foreground);place-items:center;display:grid}.office3d-fullscreen{z-index:40;position:absolute;bottom:12px;right:12px}.office3d-root .demo-badge{color:var(--handoff);font-weight:600}.office3d-root .live-badge{color:var(--working);font-weight:600}:is(.office3d-root,.office3d-portal) .bot-task-list{flex-direction:column;gap:4px;max-height:220px;display:flex;overflow:auto}:is(.office3d-root,.office3d-portal) .bot-task{text-align:left;white-space:normal;grid-template-columns:auto 1fr;justify-content:start;gap:2px 8px;height:auto;padding:6px 8px;display:grid}:is(.office3d-root,.office3d-portal) .bot-task small{color:var(--muted-foreground);grid-column:2;font-size:12px}:is(.office3d-root,.office3d-portal) .bot-task-title{font-size:13px;font-weight:600}:is(.office3d-root,.office3d-portal) .assign-panel{border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:8px;margin:12px 0;padding:12px;display:flex}:is(.office3d-root,.office3d-portal) .assign-panel h3{margin:0}:is(.office3d-root,.office3d-portal) .combo-bubble{background:color-mix(in oklch,var(--background) 92%,transparent);border:1px solid color-mix(in oklch,var(--bot-color) 45%,var(--border));border-left:3px solid var(--bot-color);width:max-content;max-width:150px;box-shadow:0 2px 5px var(--shadow);color:var(--foreground);font:inherit;text-align:left;cursor:pointer;pointer-events:auto;border-radius:7px;flex-direction:column;align-items:flex-start;gap:0;padding:2px 6px 3px;display:flex}:is(.office3d-root,.office3d-portal) .combo-bubble b{color:var(--bot-color);font-size:10px;font-weight:700;line-height:1.2}:is(.office3d-root,.office3d-portal) .combo-bubble span{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11px;line-height:1.3;display:-webkit-box;overflow:hidden}:is(.office3d-root,.office3d-portal) .combo-speech{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}:is(.office3d-root,.office3d-portal) .combo-speech b{color:var(--primary-foreground);opacity:.8}.office3d-root .truck-bubble{--bot-color:var(--truck-red);pointer-events:none}:is(.office3d-root,.office3d-portal) .brand p.brand-meta{white-space:nowrap;align-items:center;gap:8px;min-width:0;margin-top:3px;font-size:13px;display:flex}:is(.office3d-root,.office3d-portal) .brand-status{background:color-mix(in oklch,currentColor 14%,transparent);text-overflow:ellipsis;border-radius:999px;min-width:0;padding:1px 8px;font-size:12px;font-weight:600;overflow:hidden}:is(.office3d-root,.office3d-portal) .brand h1{white-space:normal;font-size:clamp(16px,1.5vw,21px);line-height:1.2;overflow:visible}:is(.office3d-root,.office3d-portal) .kantor-header{grid-template-columns:max-content minmax(0,1fr)}@media (width<=700px){:is(.office3d-root,.office3d-portal) .brand-meta{display:none!important}}
