:root{
  --ink:#172320;--muted:#71807b;--line:#e5ebe8;--paper:#f6f8f7;--white:#fff;
  --green:#176b5b;--green-2:#dceee8;--green-3:#0f5145;--amber:#d99b35;
  --coral:#dc6a55;--blue:#4e7ea9;--shadow:0 18px 50px rgba(28,50,43,.12);
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:"PingFang SC","Microsoft YaHei",Inter,system-ui,sans-serif;color:var(--ink);background:var(--paper)}
button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}
.auth-gate{position:fixed;inset:0;z-index:200;background:radial-gradient(circle at 50% 20%,#f4faf7,#eaf2ef 62%,#dfeae6);display:grid;place-items:center;transition:opacity .35s,visibility .35s}.auth-gate.leaving{opacity:0;visibility:hidden}.auth-card{width:min(430px,calc(100vw - 30px));background:rgba(255,255,255,.94);border:1px solid rgba(255,255,255,.85);border-radius:22px;padding:32px;text-align:center;box-shadow:0 28px 80px rgba(24,61,50,.16)}.auth-brand-mark{width:54px;height:54px;border-radius:16px;background:#dff4eb;color:var(--green);display:grid;place-items:center;margin:0 auto 20px}.auth-brand-mark svg{width:34px;fill:none;stroke:currentColor;stroke-width:2.7;stroke-linecap:round}.auth-kicker{font-size:9px;color:var(--green);font-weight:700;letter-spacing:1.5px}.auth-card h1{font-family:"Songti SC",serif;font-size:24px;margin:9px 0}.auth-card p{font-size:11px;color:#77847f;margin:0 0 23px}.auth-progress{height:4px;background:#e5ece9;border-radius:4px;overflow:hidden}.auth-progress i{display:block;height:100%;width:65%;background:var(--green);border-radius:4px;animation:authload 1.1s ease-in-out infinite}.auth-status{display:flex;justify-content:center;align-items:center;gap:7px;color:#71807b;font-size:9px;margin-top:13px}.auth-spinner{width:12px;height:12px;border:2px solid #c8d8d3;border-top-color:var(--green);border-radius:50%;animation:spin .75s linear infinite}.auth-security{border-top:1px solid #edf1ef;margin-top:25px;padding-top:15px;color:#9aa5a1;font-size:8px}.mock-qr{width:152px;height:152px;margin:0 auto 18px;padding:15px;background:repeating-conic-gradient(#173f36 0 25%,transparent 0 50%) 0/18px 18px;border:8px solid #fff;box-shadow:0 0 0 1px #dde5e2;position:relative}.mock-qr i{position:absolute;width:35px;height:35px;border:6px solid #173f36;background:#fff}.mock-qr i:nth-child(1){left:11px;top:11px}.mock-qr i:nth-child(2){right:11px;top:11px}.mock-qr i:nth-child(3){left:11px;bottom:11px}.mock-qr b{position:absolute;inset:52px;background:#1b8b72;color:#fff;display:grid;place-items:center;border-radius:8px;font-size:18px}.wecom-login-btn{width:100%;height:40px;border:0;border-radius:10px;background:#168b6f;color:#fff;font-size:11px;font-weight:700}.auth-card small{display:block;color:#939e9a;font-size:8px;margin-top:12px}@keyframes spin{to{transform:rotate(360deg)}}@keyframes authload{0%{transform:translateX(-100%)}60%,100%{transform:translateX(155%)}}
.app-shell{min-height:100vh;display:grid;grid-template-columns:232px 1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:232px;background:#102e29;color:#fff;padding:25px 16px 18px;display:flex;flex-direction:column;z-index:30}
.brand{display:flex;gap:11px;align-items:center;padding:0 8px 28px}.brand-mark{width:38px;height:38px;border-radius:12px;background:#dff4eb;color:var(--green);display:grid;place-items:center}.brand-mark svg{width:27px;fill:none;stroke:currentColor;stroke-width:2.7;stroke-linecap:round}.brand strong{display:block;font-size:17px;letter-spacing:1px}.brand span,.profile span,.workspace-card span{display:block;color:#9bb6af;font-size:11px;margin-top:3px}
.nav{display:flex;flex-direction:column;gap:5px}.nav-item,.quick-filter{border:0;background:none;color:#abc0bb;width:100%;height:43px;border-radius:10px;text-align:left;padding:0 11px;display:flex;align-items:center;gap:11px;font-size:13px}.nav-item:hover,.quick-filter:hover{background:rgba(255,255,255,.06);color:#fff}.nav-item.active{background:#fff;color:#123f36;font-weight:700}.nav-icon{font-size:18px;width:18px;text-align:center}.nav-count{margin-left:auto;background:rgba(255,255,255,.13);padding:2px 7px;border-radius:20px;font-size:10px}.nav-item.active .nav-count{background:#e3f0ec}.nav-count.danger{background:#8d4438;color:#ffd9d1}.nav-dot{width:6px;height:6px;border-radius:50%;background:#65d4b3;margin-left:auto}
.sidebar-section{margin-top:28px;padding-top:23px;border-top:1px solid rgba(255,255,255,.09)}.section-label{text-transform:uppercase;font-size:10px;letter-spacing:1.4px;color:#698d84;padding:0 12px 9px}.quick-filter{height:36px;font-size:12px}.dot{width:7px;height:7px;border-radius:50%}.amber{background:var(--amber)}.coral{background:var(--coral)}.teal{background:#50b69d}
.workspace-card{margin-top:auto;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:11px 10px;display:grid;grid-template-columns:30px 1fr 6px;gap:9px;align-items:center}.workspace-icon{height:30px;border-radius:8px;background:#1f8c75;display:grid;place-items:center;font-size:12px}.workspace-card strong{font-size:11px}.online-dot{width:6px;height:6px;border-radius:50%;background:#62ddb7;box-shadow:0 0 0 3px rgba(98,221,183,.12)}
.profile{display:grid;grid-template-columns:34px 1fr 28px;gap:9px;align-items:center;padding:17px 5px 0}.profile strong{font-size:12px}.profile button{border:0;color:#8ca9a2;background:none}.avatar{border-radius:50%;display:grid;place-items:center;font-weight:700}.avatar-me{width:34px;height:34px;background:#eed3a2;color:#71511b;font-size:12px}
.main{grid-column:2;min-width:0}.topbar{height:68px;background:rgba(255,255,255,.9);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 34px;position:sticky;top:0;z-index:20}.breadcrumbs{display:flex;align-items:center;gap:9px;font-size:12px}.breadcrumbs span{color:#9aa6a2}.breadcrumbs b{color:#cbd3d0}.top-actions{display:flex;align-items:center;gap:10px}.search-box{height:37px;width:248px;border:1px solid var(--line);background:#fafcfb;border-radius:10px;display:flex;align-items:center;padding:0 10px;gap:8px}.search-box:focus-within{border-color:#87b7aa;box-shadow:0 0 0 3px rgba(23,107,91,.08)}.search-box svg{width:16px;fill:none;stroke:#82908c;stroke-width:2}.search-box input{border:0;outline:0;background:none;min-width:0;flex:1;font-size:12px}.search-box kbd{color:#a5aeab;font-size:10px;border:1px solid #dce2e0;padding:2px 5px;border-radius:5px;background:#fff}.icon-btn{width:38px;height:38px;border-radius:10px;border:1px solid var(--line);background:#fff;position:relative}.icon-btn i{position:absolute;width:6px;height:6px;background:var(--coral);border-radius:50%;right:8px;top:7px;border:1px solid #fff}.primary-btn,.outline-btn{height:38px;border-radius:10px;padding:0 16px;border:0;font-size:12px;font-weight:650}.primary-btn{background:var(--green);color:#fff;box-shadow:0 6px 16px rgba(23,107,91,.18)}.primary-btn:hover{background:var(--green-3)}.outline-btn{background:#fff;color:#42504c;border:1px solid var(--line)}.outline-btn:hover{border-color:#adc2bc;background:#fbfdfc}.mobile-menu{display:none}
.content{padding:34px;max-width:1600px;margin:auto}.page-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:25px}.eyebrow{margin:0 0 7px;color:var(--green);font-weight:700;font-size:10px;letter-spacing:1.5px}.page-heading h1{font-family:"Noto Serif SC","Songti SC",serif;margin:0;font-size:28px;letter-spacing:.5px}.page-heading>div>p:last-child{margin:8px 0 0;color:var(--muted);font-size:12px}.heading-actions{display:flex;align-items:center;gap:12px}.team-stack{display:flex;padding-left:8px}.mini-avatar{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;border:2px solid var(--paper);margin-left:-8px;font-size:10px;font-weight:700}.a1{background:#cce6df;color:#286b5b}.a2{background:#f0dcb7;color:#76551e}.a3{background:#d8dff0;color:#475b87}.a4{background:#eed1ca;color:#8a4d40}.mini-avatar.more{background:#e7ecea;color:#61706b}
.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}.metric-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:16px 17px;display:grid;grid-template-columns:1fr auto;align-items:center;min-height:86px}.metric-card strong{display:block;font-size:25px;line-height:1;margin-bottom:8px}.metric-card span{font-size:11px;color:var(--muted)}.metric-icon{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;font-size:17px;background:#eef4f1;color:var(--green)}.metric-card.risk .metric-icon{background:#fbebe8;color:var(--coral)}.metric-card.done .metric-icon{background:#edf3f9;color:var(--blue)}.metric-card.rate .metric-icon{background:#fbf3e5;color:var(--amber)}
.toolbar{display:flex;align-items:center;justify-content:space-between;margin:6px 0 14px}.view-tabs{background:#e9eeec;padding:3px;border-radius:9px}.view-tabs button{border:0;background:none;color:#7b8884;padding:6px 16px;border-radius:7px;font-size:11px}.view-tabs button.active{background:#fff;color:#26332f;box-shadow:0 2px 7px rgba(36,52,47,.09);font-weight:700}.filter-row{display:flex;gap:8px}.filter-row select,.filter-btn{height:34px;border:1px solid var(--line);background:#fff;border-radius:8px;color:#586661;padding:0 11px;font-size:11px}.filter-btn{display:none}
.board{display:grid;grid-template-columns:repeat(4,minmax(220px,1fr));gap:13px;align-items:start}.column{min-width:0}.column-head{display:flex;align-items:center;padding:0 4px 10px;font-size:11px;font-weight:700}.column-head i{width:7px;height:7px;border-radius:50%;margin-right:7px}.column-head span{color:#9aa6a2;margin-left:6px;font-weight:500}.column-head button{margin-left:auto;border:0;background:none;color:#92a09b;font-size:18px}.task-list{background:#edf1ef;border-radius:13px;padding:8px;min-height:380px;display:flex;flex-direction:column;gap:8px}.task-card{background:#fff;border:1px solid #e5e9e7;border-radius:11px;padding:13px;box-shadow:0 2px 5px rgba(25,50,42,.025);transition:.18s;cursor:pointer;position:relative}.task-card:hover{transform:translateY(-2px);box-shadow:0 9px 20px rgba(25,50,42,.08);border-color:#cfd9d5}.task-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.badge{font-size:9px;padding:4px 7px;border-radius:6px;background:#eff3f2;color:#62706c}.badge.high{background:#fff0ec;color:#b85240}.badge.urgent{background:#ffe5df;color:#ad3e2a;font-weight:700}.task-menu{border:0;background:none;color:#a0aaa7;letter-spacing:1px}.task-card h3{font-size:13px;line-height:1.55;margin:0 0 6px;font-weight:700}.task-desc{font-size:10px;color:#8a9692;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:13px}.progress{height:4px;border-radius:4px;background:#edf0ef;overflow:hidden;margin-bottom:10px}.progress i{height:100%;display:block;background:#5cae98;border-radius:4px}.task-meta{display:flex;align-items:center;color:#87948f;font-size:9px}.task-meta .mini-avatar{width:23px;height:23px;margin:0 7px 0 0;border:0;font-size:8px}.due{margin-left:auto}.due.overdue{color:#c15341;font-weight:700}.comment-count{margin-left:10px}.empty-col{color:#9aa6a2;text-align:center;font-size:11px;padding:55px 10px}
.list-view{background:#fff;border:1px solid var(--line);border-radius:13px;overflow:hidden}.list-row{display:grid;grid-template-columns:minmax(260px,2fr) 110px 100px 110px 100px;align-items:center;gap:10px;padding:13px 17px;border-bottom:1px solid #edf0ef;font-size:11px;cursor:pointer}.list-row:last-child{border:0}.list-row:hover{background:#f9fbfa}.list-row.header{background:#f5f8f7;color:#84918d;font-size:10px;cursor:default}.list-title{font-weight:700}.list-title small{display:block;color:#8d9995;font-weight:400;margin-top:4px}.status-pill{width:max-content;padding:4px 8px;border-radius:6px;background:#eef3f1;color:#577069}.status-pill.doing{background:#e3f1ed;color:#176b5b}.status-pill.review{background:#fff4dc;color:#9d6b13}.status-pill.done{background:#eaf0f7;color:#4e6e91}
.report-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:14px}.report-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px}.report-card h3{font-size:13px;margin:0 0 19px}.bar-row{display:grid;grid-template-columns:70px 1fr 35px;gap:10px;align-items:center;margin:15px 0;font-size:10px;color:#697772}.bar{height:8px;border-radius:6px;background:#eef1f0;overflow:hidden}.bar i{display:block;height:100%;background:var(--green);border-radius:6px}.risk-list{display:flex;flex-direction:column;gap:10px}.risk-item{padding:11px;border-radius:10px;background:#fbf8f6;display:flex;gap:10px;align-items:center}.risk-item i{width:8px;height:8px;border-radius:50%;background:var(--coral)}.risk-item strong{font-size:11px}.risk-item span{display:block;color:#8b9692;font-size:9px;margin-top:3px}.risk-item b{margin-left:auto;color:#b55342;font-size:10px}
.team-hub-tools{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.team-search{width:290px;height:38px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:0 12px;font-size:11px;outline:0}.team-search:focus{border-color:#78ad9f;box-shadow:0 0 0 3px rgba(23,107,91,.08)}.team-tabs{display:flex;gap:4px;background:#e9eeec;border-radius:9px;padding:3px}.team-tabs button{border:0;background:none;color:#72817c;border-radius:7px;padding:7px 12px;font-size:10px}.team-tabs button.active{background:#fff;color:var(--green);font-weight:700;box-shadow:0 2px 7px rgba(36,52,47,.08)}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.team-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:17px;cursor:pointer;transition:.18s;position:relative}.team-card:hover{transform:translateY(-3px);border-color:#b8cec7;box-shadow:0 12px 28px rgba(28,50,43,.08)}.team-card-top{display:flex;align-items:center;gap:11px}.team-symbol{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;color:#fff;font-size:14px;font-weight:700}.team-card h3{font-size:13px;margin:0}.team-card p{color:#7d8a86;font-size:10px;line-height:1.7;margin:12px 0 16px;min-height:34px}.team-star{margin-left:auto;border:0;background:none;color:#c1aaa0;font-size:16px}.team-stats{display:grid;grid-template-columns:repeat(3,1fr);padding:12px 0;border-top:1px solid #edf0ef;border-bottom:1px solid #edf0ef}.team-stats div{text-align:center;border-right:1px solid #edf0ef}.team-stats div:last-child{border:0}.team-stats strong{display:block;font-size:15px}.team-stats span{font-size:8px;color:#8e9995}.team-card-footer{display:flex;align-items:center;margin-top:13px}.team-card-footer>span{font-size:9px;color:#82908b;margin-left:auto}.team-empty{border-style:dashed;display:grid;place-items:center;text-align:center;min-height:235px;background:transparent}.team-empty .team-symbol{background:#e4ece9;color:var(--green);margin:auto}.team-empty p{min-height:0;margin:6px 0}.board-scope{display:inline-flex;align-items:center;gap:5px;font-size:9px;color:#687671;background:#edf3f1;border-radius:6px;padding:4px 7px;margin-left:7px}.back-to-teams{border:0;background:none;color:var(--green);font-size:10px;padding:0;margin-bottom:8px}
.modal-backdrop,.drawer-backdrop{position:fixed;inset:0;background:rgba(12,27,23,.42);backdrop-filter:blur(3px);z-index:60;display:grid;place-items:center}.modal{width:min(620px,calc(100vw - 30px));background:#fff;border-radius:18px;padding:25px;box-shadow:var(--shadow);animation:pop .2s ease}.modal-header{display:flex;justify-content:space-between;margin-bottom:22px}.modal-kicker{font-size:9px;color:var(--green);letter-spacing:1.4px;font-weight:700}.modal h2{font-family:"Songti SC",serif;margin:4px 0 0;font-size:22px}.close-btn{border:0;background:#f1f4f3;border-radius:9px;width:33px;height:33px;font-size:20px;color:#71807b}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-grid label{font-size:11px;color:#53615c;font-weight:700}.form-grid label.full{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea{display:block;width:100%;border:1px solid #dde5e1;background:#fbfcfc;border-radius:9px;padding:10px 11px;margin-top:7px;font-size:12px;outline:0}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:#6fae9d;box-shadow:0 0 0 3px rgba(23,107,91,.08)}.notify-check{font-size:11px;color:#687671;display:flex;gap:7px;align-items:center;margin:16px 0}.modal-footer{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid var(--line);padding-top:17px}
.task-drawer{position:fixed;z-index:70;right:-480px;top:0;height:100vh;width:min(450px,100vw);background:#fff;box-shadow:-15px 0 50px rgba(15,38,31,.18);transition:right .28s ease;overflow-y:auto}.task-drawer.open{right:0}.drawer-backdrop{z-index:65}.drawer-inner{padding:24px}.drawer-top{display:flex;justify-content:space-between;align-items:center}.drawer-top .badge{font-size:10px}.drawer-title{font-family:"Songti SC",serif;font-size:24px;line-height:1.45;margin:25px 0 9px}.drawer-desc{font-size:12px;color:#74817d;line-height:1.8;margin-bottom:22px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.detail-box{padding:12px;background:#f7f9f8;border-radius:10px}.detail-box span{display:block;font-size:9px;color:#8b9793;margin-bottom:5px}.detail-box strong{font-size:11px}.drawer-section{border-top:1px solid var(--line);margin-top:22px;padding-top:20px}.drawer-section h4{font-size:11px;margin:0 0 14px}.check-item{display:flex;gap:8px;align-items:center;font-size:11px;margin:10px 0;color:#4f5d58}.check-item.done{text-decoration:line-through;color:#96a09d}.activity{display:grid;grid-template-columns:26px 1fr;gap:9px;margin:13px 0}.activity .mini-avatar{width:26px;height:26px;border:0;margin:0}.activity p{font-size:10px;margin:0;line-height:1.5}.activity time{color:#9aa5a1;font-size:9px}.drawer-actions{display:flex;gap:8px;position:sticky;bottom:0;background:#fff;padding:16px 0 4px}.drawer-actions button{flex:1}
.notification-panel{position:fixed;right:160px;top:60px;width:330px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:15px;z-index:50;opacity:0;transform:translateY(-8px);pointer-events:none;transition:.18s}.notification-panel.open{opacity:1;transform:none;pointer-events:auto}.panel-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:12px}.panel-title button{border:0;background:none;color:var(--green);font-size:9px}.notice{display:grid;grid-template-columns:30px 1fr;gap:9px;padding:11px 5px;border-top:1px solid #edf0ef}.notice i{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;font-style:normal}.coral-bg{background:#f9e8e4;color:var(--coral)}.teal-bg{background:#e1f1ec;color:var(--green)}.blue-bg{background:#e7eef6;color:var(--blue)}.notice strong,.notice span,.notice small{display:block;font-size:10px}.notice span{color:#71807b;margin:4px 0}.notice small{color:#a1aaa7}.notice.unread strong:after{content:"";display:inline-block;width:5px;height:5px;background:var(--coral);border-radius:50%;margin-left:6px}
.toast{position:fixed;left:50%;bottom:-90px;transform:translateX(-50%);z-index:100;background:#153c34;color:#fff;border-radius:12px;padding:12px 17px;display:flex;gap:10px;align-items:center;box-shadow:var(--shadow);transition:bottom .25s}.toast.show{bottom:25px}.toast>span{width:25px;height:25px;border-radius:50%;background:#3d9a82;display:grid;place-items:center}.toast strong,.toast small{display:block;font-size:10px}.toast small{color:#a9c2bc;margin-top:3px}

/* Mature board interactions: filters, drag state, quick add and richer views */
.active-filter-bar{margin:-2px 0 13px;padding:9px 12px;border:1px solid #cfe2dc;background:#f1f8f6;border-radius:9px;display:flex;align-items:center;gap:7px;color:#4d625c;font-size:10px}.active-filter-bar strong{color:var(--green)}.filter-chip{border:1px solid #c7ddd6;background:#fff;color:#426057;border-radius:20px;padding:4px 8px;font-size:9px}.filter-chip b{margin-left:5px;color:#86958f}.active-filter-bar .clear-all{margin-left:auto;border:0;background:none;color:var(--green);font-size:10px}
.column-head .wip{margin-left:7px;padding:2px 5px;border-radius:4px;background:#e6ece9;font-size:8px}.column-head .wip.limit{background:#ffe7e1;color:#b64d3a}.task-list{transition:.15s}.task-list.drag-over{background:#dcebe6;box-shadow:inset 0 0 0 2px #6cae9d}.task-card{cursor:grab}.task-card:active{cursor:grabbing}.task-card.dragging{opacity:.45;transform:rotate(1deg)}.task-labels{display:flex;gap:5px;margin:0 0 9px}.task-label{font-size:8px;color:#58716a;background:#edf4f2;padding:3px 6px;border-radius:5px}.card-submeta{display:flex;gap:9px;color:#8a9792;font-size:8px;margin-bottom:9px}.quick-add{border:0;background:transparent;color:#667770;border-radius:8px;padding:9px;text-align:left;font-size:10px}.quick-add:hover{background:#fff;color:var(--green)}.quick-add-form{display:flex;gap:5px}.quick-add-form input{width:100%;min-width:0;border:1px solid #aac8bf;border-radius:7px;padding:8px;font-size:10px;outline:0}.quick-add-form button{border:0;border-radius:7px;background:var(--green);color:#fff;padding:0 9px}
.list-row{grid-template-columns:26px minmax(260px,2fr) 110px 100px 110px 100px}.list-row.selected{background:#f0f8f5}.list-row input[type=checkbox]{accent-color:var(--green)}.batch-bar{display:flex;align-items:center;gap:8px;background:#153c34;color:#fff;border-radius:10px;padding:10px 13px;margin-bottom:10px;font-size:10px}.batch-bar strong{margin-right:auto}.batch-bar button{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);color:#fff;border-radius:7px;padding:6px 10px;font-size:9px}
.calendar-view{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;overflow-x:auto}.calendar-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.calendar-head h3{font-size:13px;margin:0}.calendar-head span{font-size:10px;color:var(--muted)}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(125px,1fr));min-width:875px;border:1px solid var(--line);border-radius:10px;overflow:hidden}.calendar-day{min-height:190px;border-right:1px solid var(--line);padding:10px;background:#fbfcfc}.calendar-day:last-child{border:0}.calendar-day.today{background:#f1f8f5}.calendar-date{display:flex;justify-content:space-between;font-size:9px;color:#7d8985;margin-bottom:9px}.calendar-date b{font-size:14px;color:#2f3d38}.calendar-task{border-left:3px solid var(--green);background:#fff;padding:7px;border-radius:6px;margin-bottom:6px;box-shadow:0 2px 7px rgba(28,50,43,.06);font-size:9px;line-height:1.4;cursor:pointer}.calendar-task.urgent{border-left-color:var(--coral)}.calendar-task span{display:block;color:#8b9692;margin-top:3px}
.drawer-tabs{display:flex;border-bottom:1px solid var(--line);margin-top:22px}.drawer-tabs button{border:0;background:none;padding:10px 13px;font-size:10px;color:#7b8884;border-bottom:2px solid transparent}.drawer-tabs button.active{color:var(--green);border-color:var(--green);font-weight:700}.drawer-section.drawer-tab-panel{border:0;margin-top:0}.file-row{display:flex;align-items:center;gap:9px;padding:10px;background:#f6f8f7;border-radius:8px;margin:7px 0;font-size:10px}.file-icon{width:27px;height:31px;border-radius:6px;background:#e8f0ed;display:grid;place-items:center;color:var(--green)}.file-row span{display:block;color:#929c98;font-size:8px;margin-top:3px}
@keyframes pop{from{opacity:0;transform:scale(.97) translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:1100px){.board{grid-template-columns:repeat(2,1fr)}.metrics{grid-template-columns:repeat(2,1fr)}.search-box{width:190px}.team-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){body{overflow-x:hidden}.app-shell{display:block}.sidebar{transform:translateX(-100%);transition:.25s}.sidebar.open{transform:none}.main{width:100%;overflow-x:hidden}.topbar{padding:0 15px;height:60px}.mobile-menu{display:block;border:0;background:none;font-size:20px}.breadcrumbs{display:none}.search-box{display:none}.top-actions .primary-btn{width:38px;padding:0;font-size:0}.top-actions .primary-btn span{font-size:18px}.content{padding:22px 15px;min-width:0}.page-heading{align-items:start}.heading-actions .team-stack,.heading-actions .outline-btn{display:none}.page-heading h1{font-size:23px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.metric-card{padding:13px;min-height:75px}.metric-card strong{font-size:21px}.toolbar{align-items:flex-start;gap:10px;min-width:0}.view-tabs{flex:0 0 auto}.filter-row{overflow-x:auto;max-width:58%;min-width:0;padding-bottom:2px}.filter-row select{flex:0 0 90px;max-width:90px}.board{display:flex;max-width:100%;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:12px}.column{min-width:82vw;scroll-snap-align:start}.list-view{overflow-x:auto}.list-row{min-width:760px}.report-grid{grid-template-columns:1fr}.team-grid{grid-template-columns:1fr}.team-hub-tools{align-items:stretch;gap:8px;flex-direction:column}.team-search{width:100%}.form-grid{grid-template-columns:1fr}.form-grid label.full{grid-column:auto}.notification-panel{right:12px;top:58px;width:calc(100vw - 24px)}}
.my-scope-tabs{display:flex;align-items:center;gap:6px;margin-bottom:13px}.my-scope-tabs span{font-size:10px;color:#7c8a85;margin-right:3px}.my-scope-tabs button{border:1px solid var(--line);background:#fff;color:#687671;border-radius:8px;padding:7px 12px;font-size:10px}.my-scope-tabs button.active{background:#173f36;color:#fff;border-color:#173f36}.scope-tag{font-size:8px;padding:3px 6px;border-radius:5px;background:#e8eef6;color:#526f91}.scope-tag.company{background:#f4eee1;color:#806a3e}
.template-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.template-head p{margin:0;color:#7b8884;font-size:10px}.template-categories{display:flex;gap:5px}.template-categories button{border:1px solid var(--line);background:#fff;color:#65736e;border-radius:8px;padding:7px 11px;font-size:9px}.template-categories button.active{background:#173f36;color:#fff}.template-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.template-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:19px}.template-card-top{display:flex;align-items:flex-start;gap:11px}.template-icon{width:42px;height:42px;border-radius:12px;background:#e3f1ec;color:var(--green);display:grid;place-items:center;font-size:17px}.template-card h3{font-size:14px;margin:1px 0 5px}.template-card .category{font-size:8px;color:#8b9692}.template-card>p{font-size:10px;color:#74817d;line-height:1.7;margin:13px 0}.template-steps{border-top:1px solid #edf0ef;border-bottom:1px solid #edf0ef;padding:11px 0;margin-bottom:14px}.template-step{display:grid;grid-template-columns:46px 1fr;gap:9px;align-items:center;margin:8px 0}.template-step b{font-size:8px;color:#8a6a28;background:#fbf1dc;border-radius:5px;padding:4px 5px;text-align:center}.template-step span{font-size:10px}.template-card-footer{display:flex;align-items:center}.template-card-footer span{font-size:9px;color:#88948f}.template-card-footer button{margin-left:auto}.template-selected{background:#f3f8f6;border-radius:10px;padding:12px;margin-bottom:16px}.template-selected strong{font-size:11px}.template-selected span{display:block;color:#7e8b87;font-size:9px;margin-top:4px}.template-date-hint{font-size:9px;color:#7a8883;background:#fff7e8;border:1px solid #f2dfb8;border-radius:8px;padding:9px 11px;margin:15px 0}.template-modal{width:min(560px,calc(100vw - 30px))}
@media(max-width:760px){.template-grid{grid-template-columns:1fr}.template-head{align-items:flex-start;flex-direction:column;gap:9px}.template-categories{overflow-x:auto;max-width:100%}}
