:root{
  --bg:#eef4f5;--panel:#fffdf7;--panel2:#f7fbfc;--ink:#16313f;--muted:#667984;--line:#d7e2e5;
  --wine:#03496d;--wine2:#056b96;--gold:#fdee5e;--gold2:#fff4a6;--green:#069b5c;--red:#d65d3a;--blue:#248db9;
  --orange:#cf6a2b;--shadow:0 16px 48px rgba(3,73,109,.08);--radius:20px
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at top right,#efe0d4 0,#f5efe8 35%,#f5efe8 100%);color:var(--ink);font-family:Segoe UI,Arial,sans-serif}.shell{min-height:100vh;display:grid;grid-template-columns:252px 1fr}
.sidebar{height:100vh;position:sticky;top:0;padding:22px 15px;background:linear-gradient(180deg,#30131c,#421823 70%,#2b1118);color:#fff;display:flex;flex-direction:column;z-index:10}.brand{display:flex;align-items:center;gap:11px;padding:0 7px;margin-bottom:18px}.logo{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;font-weight:900;color:#3b151d;background:linear-gradient(135deg,var(--gold),#f3d597);box-shadow:0 8px 20px rgba(212,155,77,.2)}.brand b,.brand small{display:block}.brand small{color:#d8c5c8;margin-top:3px;font-size:11px}.create-main{border:0;border-radius:12px;padding:12px 14px;margin:4px 5px 15px;background:linear-gradient(135deg,#e0a654,#f0c778);color:#3b181d;font-weight:900;cursor:pointer}.create-main:hover{filter:brightness(1.04)}nav{display:grid;gap:5px}.nav{width:100%;border:0;background:transparent;color:#d8c7ca;display:grid;grid-template-columns:26px 1fr auto;align-items:center;text-align:left;padding:11px 12px;border-radius:11px;cursor:pointer}.nav span{font-size:17px}.nav b{font-size:13px}.nav em{min-width:20px;padding:2px 6px;border-radius:999px;background:#7a2b3a;color:#fff0e4;font-style:normal;font-size:10px;text-align:center}.nav em:empty{display:none}.nav.active,.nav:hover{background:rgba(255,255,255,.10);color:#fff}.department-side-nav{display:grid;gap:8px;margin:14px 6px 0;padding:14px 0 0;border-top:1px solid rgba(255,255,255,.12)}.department-side-nav[hidden]{display:none}.side-context-head{display:flex;align-items:center;gap:10px;padding:0 6px 4px}.side-context-head span{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:rgba(255,255,255,.12);color:#fff;font-weight:900;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}.side-context-head b,.side-context-head small{display:block}.side-context-head b{font-size:12px;color:#fff}.side-context-head small{font-size:10px;color:#cdbbc0;margin-top:2px}.side-context-list{display:grid;gap:5px}.side-context-btn{width:100%;border:0;border-radius:12px;background:rgba(255,255,255,.04);color:#ead9dc;display:grid;grid-template-columns:24px 1fr;align-items:center;text-align:left;padding:10px 11px;cursor:pointer;transition:.15s}.side-context-btn span{font-size:15px}.side-context-btn b{font-size:12px}.side-context-btn:hover{background:rgba(255,255,255,.11);color:#fff}.side-context-btn.active{background:linear-gradient(135deg,#a66a2e,#8a3443);color:#fff;box-shadow:0 10px 22px rgba(0,0,0,.18)}.dept-role-sidebar-mode .workspace-nav-wrap{display:none}.side-bottom{margin-top:auto}.system-mini{margin:9px 6px 0;padding:11px;border-top:1px solid rgba(255,255,255,.12);font-size:10px;color:#cbb9bd}.system-mini div{display:grid;grid-template-columns:10px 1fr auto;gap:6px;align-items:center;padding:4px 0}.system-mini i{width:7px;height:7px;border-radius:50%;background:#8f777c}.system-mini i.ok{background:#59bd87}.system-mini b{font-size:9px;color:#e7d8d9;font-weight:600}
main{padding:26px 32px 65px;max-width:1480px;width:100%;margin:0 auto;align-self:start}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.topbar h1{font-size:25px;margin:0}.top-actions{display:flex;gap:8px;align-items:center}.eyebrow{font-size:10px;letter-spacing:.18em;font-weight:900;color:var(--wine2);margin:0 0 7px}.icon-btn{position:relative;width:39px;height:39px;border:1px solid var(--line);border-radius:12px;background:var(--panel);cursor:pointer;font-size:18px}.icon-btn span{position:absolute;right:-5px;top:-5px;background:var(--red);color:white;border-radius:999px;min-width:17px;height:17px;line-height:17px;font-size:9px}.icon-btn span:empty{display:none}.view{display:none}.view.active{display:block}.card{background:rgba(255,250,244,.96);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.pad{padding:20px}.hero{padding:30px;display:grid;grid-template-columns:1fr 220px;background:linear-gradient(135deg,#fffaf2,#f0dac4);overflow:hidden}.hero h2{font-size:35px;line-height:1.15;max-width:800px;margin:0 0 10px}.hero p{color:var(--muted);line-height:1.6;max-width:780px}.hero-ai{width:180px;height:180px;border-radius:50%;justify-self:center;align-self:center;display:grid;place-items:center;background:radial-gradient(circle at 30% 25%,#f4ce84,#9b3c48 58%,#4c1c28);color:white;box-shadow:inset 0 0 0 10px rgba(255,255,255,.06),0 18px 50px rgba(90,30,45,.2)}.hero-ai span{font-size:58px;font-weight:900;line-height:1;margin-top:28px}.hero-ai small{align-self:start;margin-top:-18px;color:#f5dec3;font-size:10px;text-align:center}.actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:18px}.btn{border:0;border-radius:11px;padding:11px 15px;font-weight:800;cursor:pointer;font-family:inherit}.btn.compact{padding:9px 12px}.btn.primary{background:var(--wine);color:#fff}.btn.soft{background:#ead8c8;color:#55232c}.btn.danger{background:#f3dddd;color:#8a3030}.btn.good{background:#e0f0e7;color:#286243}.btn:disabled{opacity:.48;cursor:not-allowed}.full{width:100%;margin-top:12px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin:14px 0}.stats.mini{grid-template-columns:repeat(3,1fr)}.stat{padding:17px}.stat span{display:block;color:var(--muted);font-size:12px}.stat b{display:block;font-size:29px;margin-top:7px}.stat small{color:var(--muted)}.dashboard-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:14px}.dashboard-grid .wide{grid-column:1/-1}.section-line,.section-head{display:flex;align-items:center;justify-content:space-between;gap:15px}.section-head{margin-bottom:15px}.section-head h2,.section-line h3{margin:0}.section-head p{margin:6px 0 0;color:var(--muted)}.text-btn{border:0;background:transparent;color:var(--wine2);font-weight:800;cursor:pointer}.todo-list,.status-list,.log-list,.rank-list{display:grid;gap:8px}.todo-item,.status-row,.log-item,.rank-item{padding:10px 0;border-bottom:1px dashed var(--line)}.todo-item:last-child,.status-row:last-child,.log-item:last-child,.rank-item:last-child{border-bottom:0}.todo-item{display:grid;grid-template-columns:10px 1fr auto;gap:9px;align-items:center}.todo-item i{width:8px;height:8px;border-radius:50%;background:var(--gold)}.todo-item small,.log-item small{color:var(--muted)}.status-row{display:grid;grid-template-columns:10px 1fr auto;gap:8px;align-items:center;font-size:12px}.status-row i{width:8px;height:8px;border-radius:50%;background:#9c8e8f}.status-row i.ok{background:var(--green)}.status-row i.warn{background:var(--gold)}.status-row b{font-size:11px}.studio-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:14px}.quick-chips{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}.quick-chips button{border:1px solid var(--line);background:#fff8f0;color:#6c4b45;border-radius:999px;padding:7px 10px;cursor:pointer}.steps{display:grid;gap:10px}.steps>div{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:center;padding:10px;border-radius:12px;background:#f7eee5}.steps i{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#e4d4c5;color:#7a5d55;font-style:normal;font-weight:900}.steps b,.steps small{display:block}.steps small{color:var(--muted);margin-top:2px}.steps .active{background:#f3e1ca}.steps .active i{background:var(--gold);color:#3c1f1d}.steps .done{background:#e9f2ec}.steps .done i{background:var(--green);color:#fff}.idea-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px}.idea-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:16px;box-shadow:var(--shadow);display:flex;flex-direction:column;min-height:180px}.idea-card .tag{font-size:10px;font-weight:900;color:var(--wine2);text-transform:uppercase}.idea-card h3{font-size:16px;line-height:1.25;margin:8px 0}.idea-card p{font-size:12px;color:var(--muted);line-height:1.5;flex:1}.idea-card button{align-self:flex-start}.inline{display:grid;grid-template-columns:1fr auto;gap:9px}.list{display:grid;gap:11px;margin-top:13px}.source,.draft,.comment{background:var(--panel);border:1px solid var(--line);border-radius:17px;padding:17px}.source{display:grid;grid-template-columns:30px 1fr;gap:9px}.source input{width:18px;height:18px}.source h3{margin:0 0 5px;font-size:16px}.source p,.caption{font-size:13px;line-height:1.55;color:#5e4944}.source a{font-size:12px;color:var(--wine2)}.meta{font-size:11px;color:var(--muted);margin:5px 0}.sticky{position:sticky;bottom:15px;padding:14px 17px;margin-top:13px;display:flex;justify-content:space-between;align-items:center;z-index:5}.sticky small{display:block;color:var(--muted);margin-top:3px}.tabs{display:flex;gap:6px;overflow:auto;margin-bottom:13px;padding-bottom:2px}.tabs button{white-space:nowrap;border:1px solid var(--line);background:var(--panel);border-radius:999px;padding:8px 11px;color:#705955;cursor:pointer;font-weight:700}.tabs button.active{background:var(--wine);color:white;border-color:var(--wine)}.tabs span{opacity:.7;margin-left:3px}.draft{display:grid;grid-template-columns:1fr 225px;gap:15px}.draft img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:13px;border:1px solid var(--line)}.draft h3{margin:8px 0}.badge{display:inline-block;padding:5px 8px;border-radius:999px;background:#ede0d4;font-size:10px;font-weight:900}.badge.published{background:#e0f1e7;color:#226144}.badge.scheduled{background:#e6e6f5;color:#514d8a}.badge.approved{background:#e6eef8;color:#43628a}.badge.error{background:#f4dddd;color:#8c2d2d}.warning,.safety-note{padding:9px 11px;border-radius:10px;background:#fff0cf;color:#725019;font-size:12px;margin-top:9px}.draft-actions,.comment-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}.calendar-controls{display:flex;gap:8px;align-items:center}.calendar{overflow:hidden}.cal-head,.cal-days{display:grid;grid-template-columns:repeat(7,1fr)}.cal-head div{padding:10px;text-align:center;font-size:11px;font-weight:900;color:var(--muted);background:#f1e5d9;border-right:1px solid var(--line)}.cal-cell{min-height:115px;padding:8px;border-right:1px solid var(--line);border-top:1px solid var(--line);background:#fffaf4}.cal-cell.muted-day{opacity:.38}.cal-cell .day-num{font-size:11px;font-weight:900}.cal-event{margin-top:6px;padding:6px 7px;border-radius:8px;background:#efe1d4;font-size:10px;line-height:1.3;border-left:3px solid var(--wine2)}.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.community-summary{margin-top:0}.rank-item{display:grid;grid-template-columns:1fr auto;gap:10px}.notice{border-left:5px solid var(--gold)}label{display:block;font-size:11px;font-weight:900;margin:10px 0 6px}input,textarea{width:100%;border:1px solid var(--line);border-radius:11px;background:#fffdf9;padding:11px 12px;font:inherit;color:var(--ink);outline:none}textarea{resize:vertical}input:focus,textarea:focus{border-color:#c58c55;box-shadow:0 0 0 3px rgba(197,140,85,.12)}.hint,.muted,small{color:var(--muted)}.hint{font-size:11px;line-height:1.5}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.permission-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px}.toggle{display:flex;gap:9px;align-items:flex-start;padding:10px;border:1px solid var(--line);border-radius:12px;margin:0;background:#fffaf4}.toggle input{width:18px;margin:2px 0 0}.toggle b,.toggle small{display:block}.toggle small{font-weight:400;margin-top:3px}.danger-toggle{background:#fff7f2}.gap{margin-top:14px}.empty{padding:20px;border:1px dashed var(--line);border-radius:12px;color:var(--muted);background:rgba(255,255,255,.34)}#toast{position:fixed;right:22px;bottom:22px;background:#2d1c20;color:white;padding:12px 15px;border-radius:11px;opacity:0;transform:translateY(8px);transition:.2s;pointer-events:none;z-index:50;max-width:390px}#toast.show{opacity:1;transform:none}#toast.error{background:#8b2f2f}#modal,#createModal{position:fixed;inset:0;background:rgba(30,14,18,.50);display:grid;place-items:center;padding:18px;z-index:40}#modal[hidden],#createModal[hidden]{display:none}.modal-card{position:relative;background:var(--panel);width:min(780px,100%);max-height:90vh;overflow:auto;border-radius:19px;padding:24px;box-shadow:0 25px 70px rgba(0,0,0,.25)}.modal-close{position:absolute;right:12px;top:8px;border:0;background:transparent;font-size:27px;cursor:pointer}.edit{display:grid;gap:6px}.create-card{width:min(620px,100%)}.create-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.create-grid button{border:1px solid var(--line);background:#fff8f0;border-radius:14px;padding:17px;text-align:left;cursor:pointer}.create-grid b,.create-grid small{display:block}.create-grid small{margin-top:5px}.create-grid button:hover{border-color:#c8915a;background:#fff3e5}
@media(max-width:1100px){.idea-grid{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr}.dashboard-grid .wide{grid-column:auto}.studio-grid{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}}
@media(max-width:820px){.shell{grid-template-columns:1fr}.sidebar{height:auto;position:static;padding:13px}.brand{margin-bottom:10px}.create-main{margin:0 0 10px}.sidebar nav{display:flex;overflow:auto}.nav{min-width:max-content;grid-template-columns:22px 1fr;padding:9px}.side-bottom{margin-top:8px}.system-mini{display:none}.topbar{align-items:flex-start}.topbar h1{font-size:21px}main{padding:17px 12px 48px}.hero{grid-template-columns:1fr}.hero-ai{display:none}.hero h2{font-size:28px}.draft,.two,.formgrid,.permission-grid,.inline{grid-template-columns:1fr}.idea-grid{grid-template-columns:1fr}.cal-cell{min-height:85px}.top-actions .primary{display:none}.stats,.stats.mini{grid-template-columns:1fr 1fr}.create-grid{grid-template-columns:1fr}}


select{width:100%;border:1px solid var(--line);border-radius:11px;background:#fffdf9;padding:11px 12px;font:inherit;color:var(--ink);outline:none}
select:focus{border-color:#c58c55;box-shadow:0 0 0 3px rgba(197,140,85,.12)}
.plan-head-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.plan-toolbar{display:grid;grid-template-columns:180px 220px 1fr;gap:12px;align-items:end}
.plan-toolbar label{margin-top:0}.plan-search-wrap{min-width:220px}
.year-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.month-plan{overflow:hidden;min-height:250px}
.month-plan-head{display:flex;justify-content:space-between;align-items:center;padding:15px 16px;background:linear-gradient(135deg,#f0dfcc,#f9eee3);border-bottom:1px solid var(--line)}
.month-plan-head>div{display:flex;align-items:center;gap:9px}.month-plan-head span{width:31px;height:31px;border-radius:9px;display:grid;place-items:center;background:var(--wine);color:white;font-size:11px;font-weight:900}.month-plan-head h3{margin:0;font-size:15px}.month-plan-head>b{font-size:11px;color:var(--muted)}
.month-plan-body{padding:10px;display:grid;gap:8px}.month-empty{padding:25px 8px;text-align:center;color:var(--muted);font-size:11px}
.plan-card{padding:12px;border:1px solid var(--line);border-left:4px solid #c8a77b;border-radius:12px;background:#fffaf4}
.plan-card.priority-high{border-left-color:#a73542}.plan-card.priority-low{border-left-color:#799883}
.plan-card-top{display:flex;justify-content:space-between;gap:7px;align-items:center}.plan-type{font-size:9px;color:var(--muted);font-weight:800}
.plan-card h4{margin:8px 0 5px;font-size:13px;line-height:1.35}.plan-card p{font-size:11px;color:var(--muted);line-height:1.45;margin:7px 0 0}
.badge.plan-planned{background:#efe4d5;color:#6d4d42}.badge.plan-in_progress{background:#e4e9f7;color:#425d8a}.badge.plan-done{background:#e0f1e7;color:#226144}.badge.plan-cancelled{background:#eee9e7;color:#776965}
.plan-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:9px;padding-top:8px;border-top:1px dashed var(--line)}.danger-text{color:#963946}
.plan-upcoming{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.plan-upcoming-row{display:grid;grid-template-columns:9px 1fr auto;gap:9px;align-items:center;padding:10px 0;border-bottom:1px dashed var(--line)}.plan-upcoming-row small{display:block;margin-top:3px}.plan-dot{width:8px;height:8px;border-radius:50%;background:#b69368}.plan-dot.high{background:#a73542}.plan-dot.low{background:#799883}
.plan-form select{margin:0}
@media(max-width:1200px){.year-board{grid-template-columns:1fr 1fr}.plan-upcoming{grid-template-columns:1fr}}
@media(max-width:820px){.year-board,.plan-toolbar{grid-template-columns:1fr}.plan-head-actions{justify-content:flex-start}.section-head{align-items:flex-start;flex-direction:column}.month-plan{min-height:0}}

.source-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.source-top h3{margin:0}.read-ok,.read-bad{flex:0 0 auto;font-size:11px;font-weight:800;padding:5px 8px;border-radius:999px}.read-ok{background:#e2f1e8;color:#245f45}.read-bad{background:#fff0cf;color:#7b5819}.source-warning{font-size:11px;color:#8a5b2e;margin:6px 0}.research-facts ul{margin:7px 0 0;padding-left:20px;line-height:1.6}.rank-item span small{display:block;margin-top:4px}.row-actions{display:flex;gap:8px;flex-wrap:wrap}


/* Bấm trực tiếp vào ô tháng để tạo kế hoạch */
.month-clickable{cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.month-clickable:hover{transform:translateY(-2px);border-color:#d6b28b;box-shadow:0 20px 52px rgba(73,38,31,.12)}
.month-clickable:focus-visible{outline:3px solid rgba(212,155,77,.35);outline-offset:2px}
.month-head-right{display:flex;align-items:center;gap:9px}.month-head-right>b{font-size:11px;color:var(--muted)}
.month-add-btn{border:1px solid rgba(106,34,48,.18);background:#fff8ef;color:var(--wine);border-radius:999px;padding:6px 9px;font:inherit;font-size:10px;font-weight:900;cursor:pointer;opacity:0;transform:translateY(2px);transition:.16s}
.month-clickable:hover .month-add-btn,.month-clickable:focus-within .month-add-btn{opacity:1;transform:none}
.month-empty{min-height:148px;display:grid;place-items:center;align-content:center;gap:5px;border:1px dashed transparent;border-radius:12px;transition:.16s}
.month-empty b{font-size:12px;color:var(--wine2);opacity:.72}.month-empty span{font-size:10px;color:var(--muted)}
.month-clickable:hover .month-empty{border-color:#dfc5aa;background:#fff8ef}.month-clickable:hover .month-empty b{opacity:1}
.plan-card{cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.plan-card:hover{border-color:#d6b28b;box-shadow:0 8px 22px rgba(73,38,31,.07)}
@media(max-width:820px){.month-add-btn{opacity:1;transform:none}.month-empty{min-height:105px}}


/* V1.6 review gate */
.badge.review_pending{background:#fff0cf;color:#74520f}.badge.review_late{background:#f9d7d3;color:#8a2e27}.badge.approval_missed{background:#f2d5df;color:#7b2342}.review-box{margin-top:10px;padding:11px 12px;border:1px solid #e5c892;border-radius:12px;background:#fff9e9;display:grid;gap:3px}.review-box b{font-size:12px;color:#6d2130}.review-box small{display:block;font-size:11px;color:#735f54}.review-policy{border-left:5px solid var(--wine)}

/* ================= V2.2 ORGANIZATION MANAGER ================= */
.nav-group-label{padding:14px 12px 6px;color:#9f858a;font-size:9px;letter-spacing:.16em;font-weight:900}
.org-hero{background:linear-gradient(135deg,#fff9ef 0%,#f3dcc8 62%,#ead1bb 100%)}
.org-mark{width:190px;height:190px;border-radius:34px;justify-self:center;align-self:center;display:grid;place-items:center;background:linear-gradient(145deg,#6a2230,#9a3e46 55%,#d49b4d);color:#fff;box-shadow:0 22px 55px rgba(86,29,40,.22);transform:rotate(3deg)}
.org-mark span{font-size:52px;font-weight:1000;line-height:1;margin-top:35px}.org-mark small{align-self:start;margin-top:-22px;color:#f8e1c4;font-weight:700;letter-spacing:.08em}
.org-section-title{margin:22px 0 11px}.department-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.department-card{border:1px solid var(--line);background:var(--panel);border-radius:18px;padding:17px;text-align:left;display:grid;grid-template-columns:48px 1fr 24px;gap:12px;align-items:start;cursor:pointer;color:var(--ink);box-shadow:var(--shadow);transition:.16s;font-family:inherit}
.department-card:hover{transform:translateY(-2px);border-color:#d5ae85;box-shadow:0 20px 55px rgba(73,38,31,.12)}.department-card>em{font-style:normal;color:var(--wine);font-size:20px;align-self:center}.department-card p{font-weight:900;margin:2px 0 5px}.department-card small{display:block;line-height:1.45;min-height:48px}.dept-icon{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:#f1dfcc;color:var(--wine);font-weight:1000;font-size:21px}.dept-icon.large{width:55px;height:55px;font-size:26px}
.dept-metrics{font-size:10px;color:var(--muted);margin-top:9px}.dept-metrics b{color:var(--wine);font-size:13px}.dept-metrics i{font-style:normal;padding:0 4px}
.org-mini-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.org-mini-stats span{padding:12px 9px;border-radius:12px;background:#f7eee5;text-align:center}.org-mini-stats b,.org-mini-stats small{display:block}.org-mini-stats b{font-size:22px}.org-mini-stats small{margin-top:4px;font-size:9px}.onecol{grid-template-columns:1fr}.legacy-hidden{display:none}
.org-todo.overdue{background:#fff3f0;border-radius:10px;padding-left:8px;padding-right:8px}.org-todo.overdue i{background:var(--red)}
.org-toolbar{display:grid;grid-template-columns:220px 220px 1fr;gap:12px;align-items:end}.org-toolbar label{margin-top:0}.org-plan-stats{margin-top:0}
.org-plan-row{padding:15px 17px;display:grid;grid-template-columns:175px 1fr 170px;gap:15px;align-items:center;cursor:pointer;transition:.15s}.org-plan-row:hover{border-color:#d5ae85;transform:translateY(-1px)}.org-plan-row.overdue{border-left:5px solid var(--red)}.org-plan-row h3{margin:0 0 5px;font-size:15px}.org-plan-row p{margin:0;color:var(--muted);font-size:11px;line-height:1.45}.dept-chip{font-size:11px;font-weight:900;padding:8px 10px;border-radius:999px;background:#f0e2d5;text-align:center}.org-plan-meta{display:grid;justify-items:end;gap:7px}.org-plan-meta b{font-size:11px}.badge.org-todo{background:#efe4d5;color:#6d4d42}.badge.org-doing{background:#e4e9f7;color:#425d8a}.badge.org-waiting{background:#fff0cf;color:#74520f}.badge.org-done{background:#e0f1e7;color:#226144}.badge.org-cancelled{background:#eee9e7;color:#776965}
.department-page{display:grid;gap:14px}.department-summary{padding:20px;display:flex;justify-content:space-between;align-items:center;gap:20px}.department-summary>div:first-child{display:flex;gap:13px;align-items:center}.department-summary h3{margin:2px 0 0;font-size:18px;max-width:720px}.dept-summary-metrics{display:flex;gap:8px}.dept-summary-metrics span{min-width:90px;padding:10px 12px;border-radius:12px;background:#f5e9dd;text-align:center}.dept-summary-metrics b,.dept-summary-metrics small{display:block}.dept-summary-metrics b{font-size:22px}.dept-summary-metrics small{font-size:9px;margin-top:3px}
.specialty-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.specialty-card{overflow:hidden;box-shadow:none}.specialty-head{padding:14px 15px;background:linear-gradient(135deg,#f1e2d3,#faf1e8);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.specialty-head h3{margin:0;font-size:14px}.specialty-head small{display:block;margin-top:3px;font-size:9px}.mini-add{border:1px solid #ddc2a7;background:#fff9f0;color:var(--wine);border-radius:999px;padding:6px 9px;font-size:10px;font-weight:900;cursor:pointer}.specialty-body{padding:10px;display:grid;gap:8px}.specialty-empty{min-height:88px;border:1px dashed var(--line);border-radius:12px;background:#fffaf4;color:var(--muted);cursor:pointer;font:inherit}.specialty-empty:hover{background:#fff5e8;border-color:#d7b28d;color:var(--wine)}
.org-task{border:1px solid var(--line);border-radius:12px;padding:11px;background:#fffdf8;cursor:pointer;transition:.14s}.org-task:hover{border-color:#d4ad84;box-shadow:0 7px 18px rgba(73,38,31,.06)}.org-task.overdue{border-left:4px solid var(--red);background:#fff8f5}.org-task-top{display:flex;justify-content:space-between;gap:8px;align-items:center}.org-task h4{margin:8px 0 4px;font-size:13px}.org-task p{margin:0 0 5px;color:var(--muted);font-size:10px}.org-task small{font-size:9px}.priority{font-size:9px;font-weight:900}.priority-low{color:#5e8069}.priority-normal{color:#7a6764}.priority-high{color:#9a6435}.priority-urgent{color:#a52f3b}
.comm-ai{background:linear-gradient(135deg,#fffaf4,#f4e3d3);border-left:5px solid var(--wine)}.module-badge{width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,var(--wine),#a94450);display:grid;place-items:center;color:white;font-weight:1000}.module-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:15px}.module-grid button{border:1px solid var(--line);background:#fffaf4;border-radius:13px;padding:14px;text-align:left;cursor:pointer;font-family:inherit}.module-grid button:hover{border-color:#d19e6d;background:#fff4e7}.module-grid b,.module-grid small{display:block}.module-grid small{margin-top:4px;font-size:9px}.modal-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.org-settings-card{border-left:5px solid var(--gold)}
@media(max-width:1200px){.department-grid{grid-template-columns:1fr 1fr}.module-grid{grid-template-columns:1fr 1fr}.org-plan-row{grid-template-columns:150px 1fr 140px}}
@media(max-width:900px){.department-summary{align-items:flex-start;flex-direction:column}.specialty-grid{grid-template-columns:1fr}.org-toolbar{grid-template-columns:1fr}.org-plan-row{grid-template-columns:1fr}.org-plan-meta{justify-items:start}.dept-summary-metrics{width:100%;flex-wrap:wrap}.dept-summary-metrics span{flex:1}.org-mark{display:none}}
@media(max-width:820px){.department-grid{grid-template-columns:1fr}.module-grid{grid-template-columns:1fr}.org-mini-stats{grid-template-columns:1fr 1fr}.nav-group-label{display:none}}
/* ================= END V2.2 ================= */


/* ================= V2.2 PERSISTENT DEPARTMENT NAV ================= */
.workspace-nav-wrap{position:sticky;top:0;z-index:9;margin:-8px 0 22px;padding:8px 0 9px;background:linear-gradient(180deg,rgba(245,239,232,.98) 0%,rgba(245,239,232,.94) 78%,rgba(245,239,232,0) 100%);backdrop-filter:blur(10px)}
.workspace-strip{display:flex;align-items:center;gap:7px;overflow-x:auto;padding:8px;border:1px solid var(--line);border-radius:16px;background:rgba(255,250,244,.95);box-shadow:0 10px 30px rgba(73,38,31,.07);scrollbar-width:thin}
.workspace-tab{border:1px solid transparent;background:transparent;color:#694e4d;border-radius:11px;padding:9px 11px;display:flex;gap:7px;align-items:center;white-space:nowrap;cursor:pointer;font-family:inherit;transition:.15s}
.workspace-tab span{font-size:14px}.workspace-tab b{font-size:11px}.workspace-tab:hover{background:#f4e5d7;color:var(--wine)}.workspace-tab.active{background:var(--wine);color:white;box-shadow:0 7px 18px rgba(109,33,48,.18)}
.workspace-divider{height:24px;width:1px;flex:0 0 1px;background:var(--line);margin:0 2px}
.context-strip{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;margin-top:8px;padding:7px 8px;border:1px solid #e1c7ad;border-radius:15px;background:linear-gradient(135deg,#f3dfcc,#fff8ef);box-shadow:0 10px 24px rgba(73,38,31,.05)}
.context-strip[hidden]{display:none}.context-label{display:flex;align-items:center;gap:8px;padding:4px 10px 4px 5px;border-right:1px solid #dfc5aa;white-space:nowrap}.context-label>span{width:32px;height:32px;border-radius:10px;background:var(--wine);color:white;display:grid;place-items:center;font-weight:900}.context-label b,.context-label small{display:block}.context-label b{font-size:11px}.context-label small{font-size:8px;margin-top:2px}
.context-tabs{display:flex;align-items:center;gap:6px;overflow-x:auto;padding:1px;scrollbar-width:thin}.context-tab{border:1px solid #e2cbb6;background:#fffaf4;color:#654b48;border-radius:10px;padding:8px 10px;display:flex;align-items:center;gap:6px;white-space:nowrap;cursor:pointer;font-family:inherit}.context-tab b{font-size:10px}.context-tab:hover{border-color:#cb9d70;color:var(--wine);background:#fff4e7}.context-tab.active{background:#6d2130;color:#fff;border-color:#6d2130}.context-tab span{font-size:12px}
.specialty-card{scroll-margin-top:150px}
@media(max-width:1000px){.context-strip{grid-template-columns:1fr}.context-label{border-right:0;border-bottom:1px solid #dfc5aa;padding-bottom:7px}.workspace-nav-wrap{top:0}}
@media(max-width:820px){.workspace-nav-wrap{margin:-2px 0 15px;padding-top:4px}.workspace-strip{border-radius:13px;padding:6px}.workspace-tab{padding:8px 9px}.workspace-divider{display:none}.context-strip{padding:6px}.context-label{display:none}.context-tab{padding:8px 9px}}
/* ================= END V2.2 ================= */

/* ================= HOTFIX54 PHONE-FIRST UI ================= */
.mobile-bottom-nav{display:none}
@media(max-width:820px){
  html{scroll-padding-top:78px}
  body{padding-bottom:calc(76px + env(safe-area-inset-bottom));-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none}
  .shell{display:block;min-height:100dvh}
  .sidebar{display:none}
  main{max-width:none;padding:10px 10px calc(96px + env(safe-area-inset-bottom));margin:0}
  .topbar{align-items:center;gap:8px;margin:0 0 9px;padding:5px 2px 2px}
  .topbar>div:first-child{min-width:0;flex:1}
  .topbar .eyebrow{font-size:8px;letter-spacing:.13em;margin:0 0 3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .topbar h1{font-size:17px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .top-actions{gap:6px;flex:0 0 auto}
  .top-actions .primary{display:inline-grid;width:42px;height:42px;place-items:center;padding:0;font-size:0;border-radius:13px}
  .top-actions .primary::after{content:'＋';font-size:24px;line-height:1}
  .icon-btn{width:42px;height:42px;border-radius:13px;flex:0 0 auto}

  .workspace-nav-wrap{position:sticky;top:0;z-index:18;margin:0 -10px 12px;padding:6px 10px 8px;background:linear-gradient(180deg,rgba(245,239,232,.99),rgba(245,239,232,.94));backdrop-filter:blur(14px);box-shadow:0 8px 18px rgba(73,38,31,.04)}
  .workspace-strip{gap:4px;padding:5px;border-radius:14px;box-shadow:none;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
  .workspace-tab{min-height:40px;padding:8px 10px;scroll-snap-align:start}
  .workspace-tab span{font-size:15px}.workspace-tab b{font-size:10px}
  .context-strip{margin-top:6px;padding:5px;border-radius:13px;box-shadow:none}
  .context-tabs{scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
  .context-tab{min-height:40px;padding:8px 10px;scroll-snap-align:start}.context-tab b{font-size:10px}

  .card{border-radius:16px;box-shadow:0 8px 24px rgba(73,38,31,.06)}
  .pad{padding:14px}
  .hero{padding:18px;border-radius:18px;grid-template-columns:1fr}
  .hero h2{font-size:24px;line-height:1.18;margin-bottom:8px}
  .hero p{font-size:13px;line-height:1.55;margin:7px 0}
  .org-mark,.hero-ai{display:none!important}
  .actions{gap:8px;margin-top:13px}
  .actions .btn{flex:1 1 140px}

  .stats,.stats.mini{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0}
  .stat{padding:13px;min-width:0}.stat span{font-size:10px;line-height:1.3}.stat b{font-size:24px;margin-top:5px}.stat small{font-size:9px;line-height:1.3}
  .dashboard-grid,.department-grid,.studio-grid,.idea-grid,.two,.formgrid,.permission-grid,.plan-toolbar,.year-board,.module-grid,.specialty-grid{grid-template-columns:1fr!important;gap:9px}
  .dashboard-grid .wide{grid-column:auto}
  .org-mini-stats{grid-template-columns:repeat(2,minmax(0,1fr))}

  .section-head{align-items:stretch;flex-direction:column;gap:8px;margin-bottom:11px}
  .section-head h2{font-size:21px;line-height:1.2}.section-head p{font-size:12px;line-height:1.45;margin-top:4px}
  .section-line{gap:8px;align-items:flex-start}.section-line h3{font-size:17px;line-height:1.25}
  .section-head>.btn,.section-head>.dept-add,.section-head>.row-actions,.section-head>.plan-head-actions{width:100%}
  .row-actions,.plan-head-actions{display:grid;grid-template-columns:1fr;gap:7px}
  .plan-head-actions .calendar-controls{justify-content:space-between}

  .btn,.icon-btn,.workspace-tab,.context-tab,.tabs button,.text-btn,.quick-chips button,.create-grid button{min-height:44px;touch-action:manipulation}
  .btn{padding:11px 13px}.btn.compact{padding:10px 11px}
  input,textarea,select{font-size:16px;min-height:46px;border-radius:12px;padding:11px 12px}
  textarea{line-height:1.45}.inline{grid-template-columns:1fr;gap:7px}
  .inline>.btn{width:100%}
  .toggle{min-height:58px;padding:11px}.toggle input{width:20px;height:20px;min-height:0;flex:0 0 20px}

  .tabs,.quick-chips{overflow-x:auto;flex-wrap:nowrap;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;padding-bottom:4px}
  .tabs button,.quick-chips button{scroll-snap-align:start;white-space:nowrap;flex:0 0 auto}
  .source,.draft,.comment{padding:14px;border-radius:15px}.draft{grid-template-columns:1fr;gap:10px}.draft img{max-height:420px;object-fit:cover}
  .draft-actions,.comment-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.draft-actions .btn,.comment-actions .btn{width:100%}
  .todo-item{grid-template-columns:9px minmax(0,1fr) auto;gap:7px}.rank-item{grid-template-columns:minmax(0,1fr) auto}

  .calendar{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:14px}
  .cal-head,.cal-days{min-width:680px}.cal-cell{min-height:92px}
  .calendar-controls{min-height:44px}.calendar-controls .btn{min-width:44px}
  .sticky{bottom:calc(82px + env(safe-area-inset-bottom));border-radius:15px;padding:11px 12px;gap:8px}

  #toast{left:10px;right:10px;bottom:calc(86px + env(safe-area-inset-bottom));max-width:none;text-align:center;border-radius:13px}
  #modal,#createModal{align-items:end;padding:0;overscroll-behavior:contain}
  .modal-card{width:100%;max-width:none;max-height:88dvh;border-radius:22px 22px 0 0;padding:20px 14px calc(18px + env(safe-area-inset-bottom));box-shadow:0 -18px 55px rgba(28,13,17,.24)}
  .modal-card::before{content:'';display:block;width:42px;height:4px;border-radius:999px;background:#d2c0b3;margin:-9px auto 12px}
  .modal-close{width:44px;height:44px;right:8px;top:7px;display:grid;place-items:center;z-index:2}
  .create-grid{grid-template-columns:1fr}.create-grid button{padding:15px}

  .mobile-bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:35;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:end;padding:7px 7px calc(7px + env(safe-area-inset-bottom));background:rgba(255,250,244,.97);border-top:1px solid var(--line);box-shadow:0 -12px 35px rgba(60,28,33,.12);backdrop-filter:blur(16px)}
  .mobile-bottom-nav button{border:0;background:transparent;color:#735d59;min-width:0;min-height:52px;border-radius:13px;display:grid;place-items:center;align-content:center;gap:2px;padding:4px 2px;font-family:inherit;touch-action:manipulation}
  .mobile-bottom-nav button span{font-size:19px;line-height:1}.mobile-bottom-nav button b{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
  .mobile-bottom-nav button.active{color:var(--wine);background:#f3e4d7}
  .mobile-bottom-nav .mobile-nav-create{position:relative;color:white;background:var(--wine);width:58px;height:58px;min-height:58px;justify-self:center;border-radius:18px;transform:translateY(-10px);box-shadow:0 10px 22px rgba(106,34,48,.26)}
  .mobile-bottom-nav .mobile-nav-create span{font-size:28px}.mobile-bottom-nav .mobile-nav-create b{font-size:8px;color:#fff}
}
@media(max-width:430px){
  .hero h2{font-size:22px}.hero{padding:16px}.pad{padding:13px}
  .workspace-tab{padding:8px 9px}.workspace-tab b{font-size:9px}
  .stat b{font-size:22px}.department-grid{gap:8px}
  .draft-actions,.comment-actions{grid-template-columns:1fr}
}
/* ================= END HOTFIX54 ================= */



/* ================= HOTFIX55 · V2.3 ROLE ACCESS ================= */
.auth-gate{position:fixed;inset:0;z-index:9999;background:linear-gradient(145deg,#2f1119 0%,#4c1d2c 58%,#7a3444 100%);display:grid;place-items:center;padding:20px}.auth-gate[hidden]{display:none}.auth-card{width:min(460px,100%);background:#fffaf7;border:1px solid rgba(255,255,255,.28);border-radius:28px;padding:28px;box-shadow:0 28px 80px rgba(16,5,9,.35)}.auth-brand{display:flex;align-items:center;gap:13px;margin-bottom:24px}.auth-brand>span{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:#731f35;color:#fff;font-weight:900}.auth-brand b,.auth-brand small{display:block}.auth-brand b{font-size:19px;color:#341018}.auth-brand small{margin-top:3px;color:#8b6871}.auth-card h1{font-size:28px;margin:0 0 8px}.auth-card p{color:#7a5e65;line-height:1.55}.auth-form{display:grid;gap:13px;margin-top:20px}.auth-form label{display:grid;gap:7px;font-weight:800;color:#4a2630}.auth-form input{width:100%;min-height:48px;border-radius:14px;border:1px solid #dfcdd1;background:#fff;padding:0 14px;font-size:16px}.auth-error{min-height:20px;color:#a3273f;font-weight:700}.auth-demo-note{margin-top:16px;padding:12px;border-radius:14px;background:#f5e8e5;font-size:13px;color:#6b454e}.account-chip{border:1px solid #eadbdd;background:#fff;border-radius:15px;padding:6px 10px 6px 6px;display:flex;align-items:center;gap:9px;cursor:pointer;text-align:left;color:#3c1720}.account-chip>span{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:#74263a;color:white;font-size:12px;font-weight:900}.account-chip b,.account-chip small{display:block;max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-chip small{font-size:11px;color:#8a6670;margin-top:1px}.access-hidden{display:none!important}.department-team{margin:0 0 18px}.department-team-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}.team-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.team-person{border:1px solid #eadcdf;background:#fffaf8;border-radius:16px;padding:12px;display:flex;align-items:center;gap:11px}.team-avatar{width:42px;height:42px;flex:0 0 42px;border-radius:13px;background:#6f2437;color:#fff;display:grid;place-items:center;font-weight:900}.team-person>div{min-width:0;flex:1}.team-person b,.team-person small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.team-person small{color:#88666e;margin-top:3px}.team-role{font-size:10px;font-weight:900;padding:5px 7px;border-radius:999px;background:#f1dedf;color:#74263a}.team-person-actions{display:flex;gap:5px}.team-person-actions button{border:0;background:#f2e8e7;border-radius:9px;min-width:30px;min-height:30px;cursor:pointer}.role-lock-note{padding:10px 12px;border-radius:12px;background:#f7eeea;color:#78545d;font-size:13px;margin-bottom:12px}.member-task-form .locked-field{opacity:.72}.member-task-form .locked-field input,.member-task-form .locked-field select{pointer-events:none;background:#f4eeee}.member-only-banner{margin-bottom:14px;padding:12px 14px;border-radius:14px;background:#f2e5e2;color:#622b39;font-weight:700}.demo-role-grid{display:grid;gap:8px;margin-top:12px}.demo-role-grid button{border:1px solid #e3cfd4;border-radius:13px;background:#fff;padding:11px;text-align:left;cursor:pointer}.demo-role-grid button b,.demo-role-grid button small{display:block}.demo-role-grid button small{margin-top:3px;color:#8c6971}
@media(max-width:720px){.auth-gate{padding:0;align-items:end}.auth-card{width:100%;border-radius:26px 26px 0 0;padding:24px 18px max(24px,env(safe-area-inset-bottom));max-height:94vh;overflow:auto}.account-chip{padding-right:7px}.account-chip div{display:none}.department-team-head{align-items:flex-start}.team-list{grid-template-columns:1fr}.team-person{padding:11px}.top-actions{gap:7px}}

@media(max-width:820px){.department-side-nav{display:none!important}.dept-role-sidebar-mode .workspace-nav-wrap{display:block}}


/* ================= V2.4 STABLE · MOBILE DEPARTMENT PICKER ================= */
.mobile-departments-trigger{display:none}
.mobile-departments-trigger em{font-style:normal;font-size:10px}
.mobile-dept-picker-hint{margin:-4px 0 14px;color:#806965}
.mobile-dept-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.mobile-dept-picker button{border:1px solid #e6d4c7;background:#fffaf5;color:#4f302f;border-radius:15px;padding:13px;display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;text-align:left;font-family:inherit;cursor:pointer;min-height:76px}
.mobile-dept-picker button>span{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#f0dfd1;color:var(--wine);font-size:19px;font-weight:900}
.mobile-dept-picker button b,.mobile-dept-picker button small{display:block}.mobile-dept-picker button b{font-size:13px}.mobile-dept-picker button small{margin-top:3px;color:#8b706a;font-size:10px;line-height:1.35}.mobile-dept-picker button em{font-style:normal;color:#a2735f;font-size:17px}
.mobile-dept-picker button:active{transform:scale(.985);background:#f5e7dc}
@media(max-width:820px){
  body.role-admin .workspace-strip>.workspace-tab[data-workspace="communications"],
  body.role-admin .workspace-strip>.workspace-tab[data-workspace^="dept-"]{display:none!important}
  body.role-admin .mobile-departments-trigger{display:flex!important}
  body.role-admin .workspace-strip{overflow:visible}
}
@media(max-width:560px){.mobile-dept-picker{grid-template-columns:1fr}.mobile-dept-picker button{min-height:68px}}
/* ================= END MOBILE DEPARTMENT PICKER ================= */

/* ================= V2.4 STABLE · EVENT AI ================= */
.event-ai{margin:0 0 18px;padding:18px;border:1px solid #e1cdbd;background:linear-gradient(145deg,#fffaf5,#f9eee4)}
.event-ai-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.event-ai-head h3{margin:3px 0 5px}.event-ai-head p{margin:0;color:#775f59;line-height:1.55}.event-ai-state{flex:0 0 auto;padding:7px 10px;border-radius:999px;font-size:10px;font-weight:900;background:#f0e2dc;color:#805462}.event-ai-state.ready{background:#e1f2e7;color:#34724c}.event-ai-state.warn{background:#f7e8db;color:#9a5b28}
.event-ai-modes{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:10px}.event-ai-modes button{border:1px solid #dec8b6;background:#fff8f1;color:#65423e;border-radius:999px;padding:8px 11px;font:inherit;font-size:11px;font-weight:800;cursor:pointer}.event-ai-modes button.active{background:var(--wine);border-color:var(--wine);color:#fff}
.event-ai textarea{width:100%;resize:vertical;border:1px solid #ddc9ba;background:#fff;border-radius:14px;padding:12px 13px;font:inherit;font-size:16px;line-height:1.5;outline:0}.event-ai textarea:focus{border-color:#9d5b67;box-shadow:0 0 0 3px rgba(116,38,58,.08)}
.event-ai-actions{display:flex;align-items:center;gap:12px;margin-top:10px}.event-ai-actions small{color:#8a706a}.event-ai-result{margin-top:14px}.event-ai-loading{padding:14px;border-radius:13px;background:#f3e6dd;color:#744c47;font-weight:700}.event-ai-output-head{padding:14px;border-radius:14px;background:#fff;border:1px solid #ead9cb}.event-ai-output-head h3{margin:0 0 6px}.event-ai-output-head p{margin:0;white-space:pre-wrap;color:#6d5550;line-height:1.55}.event-ai-section{margin-top:10px;padding:13px 14px;border-radius:14px;background:#fff;border:1px solid #ead9cb}.event-ai-section h4,.event-ai-tasks h4{margin:0 0 8px}.event-ai-section ul,.event-ai-warnings ul{margin:0;padding-left:19px;display:grid;gap:6px;line-height:1.45}.event-ai-tasks{margin-top:12px}.event-ai-task{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding:12px 13px;margin-top:7px;border-radius:13px;background:#fff;border:1px solid #ead9cb}.event-ai-task>div{min-width:0}.event-ai-task b,.event-ai-task small{display:block}.event-ai-task small{margin-top:3px;color:#936f66}.event-ai-task p{margin:6px 0 0;color:#6b5550;line-height:1.45}.event-ai-warnings{margin-top:12px;padding:12px 14px;border-radius:14px;background:#fff1df;border:1px solid #e8caa5;color:#754d2a}
@media(max-width:720px){.event-ai{padding:13px}.event-ai-head{display:grid;gap:8px}.event-ai-state{justify-self:start}.event-ai-modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.event-ai-modes button{min-height:42px}.event-ai-actions{display:grid}.event-ai-actions .btn{width:100%;min-height:46px}.event-ai-task{display:grid}.event-ai-task .btn{width:100%}}
/* ================= END EVENT AI ================= */


/* ================= V2.5 STABLE · OPERATIONS, NOTIFICATIONS, BACKUP ================= */
.notify-btn{position:relative}.notify-btn span{position:absolute;right:-5px;top:-5px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#8a2038;color:#fff;font-size:10px;font-weight:900;display:grid;place-items:center}.notify-btn span:empty{display:none}
.notification-list{display:grid;gap:8px;max-height:60vh;overflow:auto}.notification-row{width:100%;border:1px solid #eadbd4;background:#fffaf6;border-radius:15px;padding:11px;display:grid;grid-template-columns:34px 1fr;gap:10px;text-align:left;color:#4e302f;font:inherit;cursor:pointer}.notification-row>span{width:34px;height:34px;border-radius:11px;background:#f0e1d6;color:#7b283a;display:grid;place-items:center;font-weight:900}.notification-row b,.notification-row p,.notification-row small{display:block}.notification-row p{margin:3px 0;color:#6e5853}.notification-row small{color:#9a7c74}.notification-row.unread{border-color:#b8797e;background:#fff4ef;box-shadow:inset 3px 0 #7d2639}
.my-tasks,.dept-deadline{margin:0 0 18px}.my-task-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.deadline-strip{display:flex;gap:8px;overflow-x:auto;padding:3px 1px 8px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.deadline-strip::-webkit-scrollbar{height:5px}.deadline-day{flex:0 0 68px;scroll-snap-align:start;border:1px solid #e5d4c8;background:#fffaf6;border-radius:14px;padding:9px 5px;color:#624641;font:inherit;text-align:center;cursor:pointer}.deadline-day b,.deadline-day span,.deadline-day small{display:block}.deadline-day b{font-size:10px;text-transform:capitalize;color:#90736c}.deadline-day span{font-size:22px;font-weight:900;margin:3px 0}.deadline-day small{font-size:9px}.deadline-day.has-task{border-color:#ba7b79;background:#fff1ea}.deadline-day.active{background:var(--wine);border-color:var(--wine);color:#fff}.deadline-day.active b,.deadline-day.active small{color:#fff}
.team-person.locked{opacity:.62;background:#f1ecea}.account-active-toggle{margin-top:10px}.backup-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.file-btn{display:grid;place-items:center;cursor:pointer;text-align:center}.admin-only-backup code{background:#f2e7e2;padding:2px 5px;border-radius:6px}.mobile-deadline-card{margin:0 0 14px}
@media(max-width:720px){.my-task-grid{grid-template-columns:1fr}.deadline-day{flex-basis:64px}.backup-actions{grid-template-columns:1fr}.notification-list{max-height:66vh}.v25-account-tools{grid-template-columns:1fr!important}.mobile-deadline-card{padding:12px}.dept-deadline{padding:12px}.team-person-actions button{min-width:36px;min-height:36px}}
/* ================= END V2.5 ================= */

/* V2.5.1 · TEAM IN DEPARTMENT TASKBAR */
.team-modal-hint{margin:-4px 0 14px;color:var(--muted);font-size:13px;line-height:1.5}.modal-card .department-team{margin:10px 0 0;box-shadow:none}.modal-card .department-team.card{background:#fffaf8}

/* V2.6 Email & Smart Reminder */
.email-settings-card{border:1px solid rgba(122,35,55,.16)}
.notification-pref-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0}
.team-person small{display:block;overflow-wrap:anywhere}
@media (max-width:700px){.notification-pref-grid{grid-template-columns:1fr}.email-settings-card .inline{display:grid;grid-template-columns:1fr}.email-settings-card .inline .btn{width:100%}}


/* V2.7 — workflow, submission and review */
.workflow-mini{font-size:10px;font-weight:800;padding:4px 7px;border-radius:999px;background:#efe5db;color:#6b422b;white-space:nowrap}.workflow-mini.submitted,.workflow-badge.submitted{background:#fff0bf;color:#765800}.workflow-mini.changes,.workflow-badge.changes{background:#ffe0d9;color:#9b3123}.workflow-mini.approved,.workflow-badge.approved{background:#dff2e7;color:#24623d}.workflow-badge.working{background:#eee7df;color:#6c5141}.task-workflow{margin-top:22px;padding-top:20px;border-top:1px solid var(--line,#e5d8ce)}.workflow-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:14px}.workflow-head h3,.workflow-box h4{margin:3px 0}.workflow-badge{padding:8px 11px;border-radius:999px;font-weight:800;font-size:12px}.workflow-review-note{padding:12px 14px;border-radius:12px;background:#fff3dc;border:1px solid #ead8b7;margin-bottom:12px}.workflow-action-box{padding:14px;border:1px solid #e2d3c8;border-radius:14px;background:#fbf7f2;margin:12px 0}.workflow-action-box.reviewer{background:#f6f2ec}.workflow-action-box textarea{width:100%;margin:7px 0 10px}.workflow-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px}.workflow-box{padding:14px;border:1px solid #e5d9d0;border-radius:14px;background:#fff}.workflow-box.history{grid-column:1/-1}.workflow-attachment{display:flex;align-items:center;gap:9px;padding:9px 0;border-bottom:1px solid #eee3da}.workflow-attachment>div{min-width:0;flex:1}.workflow-attachment b,.workflow-attachment small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workflow-add{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.workflow-comments{max-height:250px;overflow:auto;margin-bottom:10px}.workflow-comment{padding:9px 0;border-bottom:1px solid #eee3da}.workflow-comment small{float:right}.workflow-comment p{margin:5px 0 0;white-space:pre-wrap}.workflow-history{display:grid;gap:8px}.workflow-history-item{display:flex;gap:10px;position:relative}.workflow-history-item i{width:8px;height:8px;border-radius:50%;background:#8f5e40;margin-top:7px;flex:0 0 auto}.workflow-history-item p{margin:2px 0}.workflow-history-item small{opacity:.65}.compact-empty{padding:10px!important}.review-queue{margin:12px 0}.review-queue-list{display:grid;gap:8px}.review-queue-list button{display:flex;align-items:center;justify-content:space-between;text-align:left;gap:10px;border:1px solid #e3d6cc;background:#fff;padding:12px;border-radius:12px;cursor:pointer}.review-queue-list b,.review-queue-list small{display:block}.review-queue-list span{font-size:12px;font-weight:800;color:#754b32}.review-overview{margin:16px 0}.review-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:10px 0 14px}.review-kpis span{padding:12px;border-radius:12px;background:#f7f1eb;text-align:center}.review-kpis b,.review-kpis small{display:block}.review-kpis b{font-size:25px}.review-dept-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.review-dept-grid>div{position:relative;padding:10px;border:1px solid #e7ddd5;border-radius:10px}.review-dept-grid b,.review-dept-grid span{display:block}.review-dept-grid span{font-size:12px;opacity:.75;margin-top:3px}.review-dept-grid em{position:absolute;right:8px;top:8px;background:#fff0bf;color:#765800;border-radius:999px;padding:3px 6px;font-size:10px;font-style:normal;font-weight:800}
@media(max-width:760px){.workflow-head{display:block}.workflow-badge{display:inline-block;margin-top:8px}.workflow-columns{grid-template-columns:1fr}.workflow-box.history{grid-column:auto}.workflow-action-box .inline{display:grid;grid-template-columns:1fr;gap:8px}.review-kpis,.review-dept-grid{grid-template-columns:1fr 1fr}.workflow-attachment{align-items:flex-start}.workflow-attachment .btn{flex:0 0 auto}}

.review-workload{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;padding-top:12px;border-top:1px solid #eadfd7}.review-workload>p{width:100%;margin:0}.review-workload>span{padding:8px 10px;background:#f7f1eb;border-radius:10px}.review-workload b,.review-workload small{display:block}

/* ================= V2.9 · LỊCH BTC + BÁO CÁO TIẾN ĐỘ ================= */
.role-leader .global-scope-nav,.role-member .global-scope-nav{display:none!important}
.org-calendar-toolbar{display:grid;grid-template-columns:auto 1fr auto;align-items:end;gap:14px;margin-bottom:12px}.calendar-mode-tabs,.report-presets{display:flex;gap:6px;flex-wrap:wrap}.calendar-mode-tabs button,.report-presets button{border:1px solid var(--line);background:#fffaf4;color:#654b45;border-radius:10px;padding:9px 12px;font:inherit;font-size:11px;font-weight:900;cursor:pointer}.calendar-mode-tabs button.active,.report-presets button.active{background:var(--wine);border-color:var(--wine);color:#fff}.org-calendar-nav{display:flex;justify-content:center;align-items:center;gap:8px}.org-calendar-nav b{min-width:170px;text-align:center;text-transform:capitalize}.org-calendar-filters{display:grid;grid-template-columns:1fr 1fr;gap:8px;min-width:300px}.org-calendar-filters label{margin-top:0}.org-calendar-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.7fr);gap:12px;align-items:start}.org-master-calendar{overflow:hidden}.org-cal-head,.org-cal-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.org-cal-head>div{padding:10px;text-align:center;font-size:10px;font-weight:900;color:var(--muted);background:#f2e6db;border-right:1px solid var(--line)}.org-cal-cell{min-height:132px;padding:7px;border-top:1px solid var(--line);border-right:1px solid var(--line);background:#fffaf5;transition:.15s}.org-cal-cell.muted-day{opacity:.43}.org-cal-cell.today{box-shadow:inset 0 0 0 2px rgba(122,43,58,.25)}.org-cal-cell.selected{background:#fff1e7;box-shadow:inset 0 0 0 2px var(--wine)}.org-cal-date{width:100%;border:0;background:transparent;display:flex;justify-content:space-between;align-items:center;padding:1px 2px 5px;color:var(--ink);cursor:pointer}.org-cal-date b{font-size:12px}.org-cal-date small{font-size:9px;color:var(--muted)}.org-cal-events{display:grid;gap:4px}.org-cal-task{width:100%;border:0;border-left:3px solid #a36d4b;background:#f3e7dc;color:#4e3833;border-radius:7px;padding:6px 6px;text-align:left;cursor:pointer;min-width:0}.org-cal-task b,.org-cal-task small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.org-cal-task b{font-size:9px}.org-cal-task small{font-size:8px;color:#80665d;margin-top:2px}.org-cal-task.priority-high{border-left-color:#c4772c}.org-cal-task.priority-urgent{border-left-color:#a72835;background:#fbe1df}.org-cal-task.done{opacity:.62;text-decoration:none}.org-cal-more{border:0;background:transparent;color:var(--wine);font-size:9px;font-weight:900;text-align:left;cursor:pointer;padding:3px}.org-calendar-agenda{position:sticky;top:86px}.agenda-task,.report-attention-row{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;border:1px solid var(--line);background:#fffaf5;border-radius:11px;padding:10px;margin-bottom:7px;text-align:left;color:var(--ink);cursor:pointer}.agenda-task b,.agenda-task small,.report-attention-row b,.report-attention-row small{display:block}.agenda-task small,.report-attention-row small{font-size:10px;color:var(--muted);margin-top:3px}.agenda-task.overdue,.report-attention-row.overdue{border-color:#e2aca6;background:#fff0ee}.org-day-focus{display:grid;grid-template-columns:180px 1fr;gap:16px;padding:18px}.org-day-focus-date{display:grid;align-content:center;text-align:center;background:#f3e3d7;border-radius:16px;padding:18px}.org-day-focus-date b,.org-day-focus-date span,.org-day-focus-date small{display:block}.org-day-focus-date b{text-transform:capitalize}.org-day-focus-date span{font-size:58px;font-weight:900;line-height:1}.org-day-focus-list{display:grid;align-content:start;gap:7px}.org-day-focus-list .org-cal-task{padding:10px}.org-day-focus-list .org-cal-task b{font-size:12px}.org-day-focus-list .org-cal-task small{font-size:10px}
.report-toolbar{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center}.report-custom{display:flex;gap:8px;align-items:end}.report-custom label{margin:0}.report-custom input{min-width:145px}.report-period-label{font-weight:900;color:var(--wine);text-align:right}.report-summary-card{border-left:5px solid var(--gold)}.report-narrative{display:grid;gap:8px;margin-top:10px}.report-line{display:grid;grid-template-columns:27px 1fr;gap:9px;align-items:start}.report-line span{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:#f0e0d3;color:var(--wine);font-size:10px;font-weight:900}.report-line p{margin:2px 0;line-height:1.5}.report-main-grid{margin-top:12px}.report-dept-list,.report-workload-list,.report-attention-list{display:grid;gap:8px}.report-dept-row{display:grid;grid-template-columns:minmax(160px,1fr) minmax(120px,1fr) 48px;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid #eee1d7}.report-dept-row b,.report-dept-row small{display:block}.report-dept-row small{color:var(--muted);font-size:10px;margin-top:3px}.report-progress{height:8px;background:#eee2d8;border-radius:999px;overflow:hidden}.report-progress i{display:block;height:100%;background:linear-gradient(90deg,#985f3f,var(--wine));border-radius:999px}.report-dept-row strong{text-align:right;color:var(--wine)}.report-workload-row{display:grid;grid-template-columns:minmax(150px,1.5fr) repeat(3,minmax(65px,.65fr));gap:8px;align-items:center;padding:10px 0;border-bottom:1px solid #eee1d7}.report-workload-row>div b,.report-workload-row>div small,.report-workload-row>span b,.report-workload-row>span small{display:block}.report-workload-row>span{text-align:center;background:#faf3ed;border-radius:9px;padding:7px}.report-workload-row small{font-size:9px;color:var(--muted)}.danger-text b{color:#a52e2e}.report-attention-row{margin:0}.org-report-kpis{margin-bottom:12px}
@media(max-width:980px){.org-calendar-toolbar,.report-toolbar{grid-template-columns:1fr}.org-calendar-nav{justify-content:flex-start}.org-calendar-filters{min-width:0}.org-calendar-layout{grid-template-columns:1fr}.org-calendar-agenda{position:static}.report-period-label{text-align:left}.report-custom{flex-wrap:wrap}}
@media(max-width:820px){
  .org-calendar-toolbar{padding:12px}.calendar-mode-tabs,.report-presets{overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px}.calendar-mode-tabs button,.report-presets button{white-space:nowrap;min-height:42px}.org-calendar-nav{display:grid;grid-template-columns:44px 1fr 1fr 44px}.org-calendar-nav b{min-width:0;font-size:11px}.org-calendar-filters{grid-template-columns:1fr}.org-calendar-stats,.org-report-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}.org-master-calendar{overflow-x:auto;-webkit-overflow-scrolling:touch}.org-cal-head,.org-cal-days{min-width:720px}.org-cal-cell{min-height:110px}.org-calendar-agenda{padding:13px}.org-day-focus{grid-template-columns:1fr;padding:13px}.org-day-focus-date{grid-template-columns:auto auto auto;align-items:center;justify-content:center;gap:8px;padding:12px}.org-day-focus-date span{font-size:34px}.report-custom{display:grid;grid-template-columns:1fr 1fr}.report-custom .btn{grid-column:1/-1}.report-main-grid{grid-template-columns:1fr!important}.report-dept-row{grid-template-columns:1fr 70px}.report-dept-row .report-progress{grid-column:1/-1;grid-row:2}.report-dept-row strong{grid-column:2;grid-row:1}.report-workload-row{grid-template-columns:1fr repeat(3,58px);gap:5px}.report-workload-row>span{padding:6px 2px}.agenda-task,.report-attention-row{grid-template-columns:minmax(0,1fr) auto}.agenda-task>.dept-chip,.report-attention-row>.dept-chip{grid-column:1/-1;width:max-content}.workspace-strip{overflow-x:auto!important}.role-admin .workspace-strip{overflow-x:auto!important}
}
@media(max-width:470px){.report-workload-row{grid-template-columns:1fr 1fr 1fr}.report-workload-row>div{grid-column:1/-1}.report-workload-row>span:nth-of-type(3){grid-column:auto}.org-calendar-nav{grid-template-columns:40px 1fr 40px}.org-calendar-nav #orgCalToday{display:none}.report-custom{grid-template-columns:1fr}}
/* ================= END V2.9 ================= */


/* V2.9.1 · Urgent Spotlight — tự xoay việc ưu tiên mỗi 12 giây */
.dept-urgent{margin-bottom:16px;overflow:hidden;border:1px solid rgba(122,31,49,.18);background:linear-gradient(135deg,#fff9f1 0%,#f3dfce 100%);box-shadow:0 12px 30px rgba(54,20,28,.06)}
.dept-urgent:not(.calm){padding:0}
.dept-urgent.calm{display:flex;align-items:center;gap:16px;border-left:5px solid #67846d}
.urgent-empty-mark{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:#e8f0e7;color:#3f6848;font-weight:1000;font-size:24px;flex:0 0 auto}
.urgent-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px 10px}
.urgent-topline h3{margin:3px 0 0}.urgent-auto{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--muted);white-space:nowrap}.urgent-auto i{width:34px;height:4px;border-radius:999px;background:linear-gradient(90deg,var(--wine) 0 0,#decabc 0 100%);background-size:0% 100%;background-repeat:no-repeat;animation:urgentCountdown 12s linear infinite}.urgent-auto i.restart{animation:none}.urgent-auto i.restart{animation:urgentCountdown 12s linear infinite}
@keyframes urgentCountdown{from{background-size:0% 100%}to{background-size:100% 100%}}
.urgent-stage{padding:0 20px 8px;min-height:112px}.urgent-slide{display:none;width:100%;border:0;border-radius:18px;padding:18px;text-align:left;grid-template-columns:52px minmax(0,1fr) auto;gap:14px;align-items:center;cursor:pointer;font-family:inherit;transition:.18s transform,.18s box-shadow}.urgent-slide.active{display:grid;animation:urgentIn .35s ease}.urgent-slide:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(54,20,28,.08)}
@keyframes urgentIn{from{opacity:0;transform:translateX(12px)}to{opacity:1;transform:none}}
.urgent-slide.tone-danger{background:linear-gradient(135deg,#6f1c2d,#8f2a3d);color:#fff}.urgent-slide.tone-warn{background:linear-gradient(135deg,#fff0dd,#f7d4ad);color:#3b1c21;border:1px solid #edc490}.urgent-slide.tone-soon,.urgent-slide.tone-normal{background:#fffaf5;color:#351b20;border:1px solid #e7d5c7}
.urgent-icon{width:50px;height:50px;border-radius:16px;display:grid;place-items:center;font-size:24px;font-weight:1000;background:rgba(255,255,255,.18)}.tone-warn .urgent-icon,.tone-soon .urgent-icon,.tone-normal .urgent-icon{background:#f2dfd1;color:var(--wine)}
.urgent-copy{min-width:0}.urgent-copy>b{display:block;font-size:18px;line-height:1.25;margin:6px 0}.urgent-copy small{display:block;opacity:.78;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.urgent-badges{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.urgent-badges span,.urgent-badges em{font-style:normal;font-size:9px;font-weight:1000;letter-spacing:.08em;border-radius:999px;padding:5px 8px;background:rgba(255,255,255,.18)}.tone-warn .urgent-badges span,.tone-warn .urgent-badges em,.tone-soon .urgent-badges span,.tone-soon .urgent-badges em,.tone-normal .urgent-badges span,.tone-normal .urgent-badges em{background:#f2dfd1;color:#6d2332}.urgent-slide>strong{font-size:11px;white-space:nowrap;opacity:.86}
.urgent-footer{display:flex;align-items:center;justify-content:space-between;padding:3px 20px 16px;color:var(--muted);font-size:10px}.urgent-dots{display:flex;gap:6px}.urgent-dots button{width:8px;height:8px;border:0;border-radius:999px;background:#d7bfb0;padding:0;cursor:pointer}.urgent-dots button.active{width:24px;background:var(--wine)}
@media(max-width:820px){.urgent-topline{padding:15px 15px 8px}.urgent-auto span{display:none}.urgent-stage{padding:0 12px 7px;min-height:142px}.urgent-slide{grid-template-columns:44px minmax(0,1fr);padding:15px 13px}.urgent-icon{width:42px;height:42px;border-radius:14px}.urgent-slide>strong{grid-column:2;justify-self:start}.urgent-copy>b{font-size:16px}.urgent-copy small{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.urgent-footer{padding:2px 14px 14px}.dept-urgent.calm{align-items:flex-start}.urgent-empty-mark{width:42px;height:42px}}


/* ================= V2.10 · AUDIT + MOBILE COMMAND CENTER ================= */
.admin-audit-nav.access-hidden{display:none!important}.audit-toolbar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}.audit-toolbar label{margin-top:0}.audit-list{display:grid;gap:8px}.audit-row{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;align-items:start;padding:12px;border:1px solid var(--line);background:#fffaf5;border-radius:14px}.audit-icon{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#f0dfd2;color:var(--wine);font-weight:1000}.audit-copy>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.audit-copy b{font-size:13px}.audit-copy em{font-style:normal;font-size:9px;font-weight:900;color:#7b5360;background:#f1e3dc;border-radius:999px;padding:4px 7px}.audit-copy p{margin:5px 0;color:#493438;line-height:1.45}.audit-copy small{color:var(--muted)}
.mobile-command-center{display:none}.mobile-bucket-list{display:grid;gap:8px}.mobile-bucket-list button{width:100%;border:1px solid var(--line);background:#fffaf5;border-radius:13px;padding:12px;display:grid;grid-template-columns:1fr auto;gap:8px;text-align:left;color:var(--ink)}.mobile-bucket-list b,.mobile-bucket-list small{display:block}.mobile-bucket-list small{margin-top:4px;color:var(--muted)}.notify-btn.has-unread{box-shadow:0 0 0 3px rgba(179,75,80,.13);animation:notifyPulse 2s ease-in-out infinite}@keyframes notifyPulse{50%{transform:translateY(-1px);box-shadow:0 0 0 6px rgba(179,75,80,.08)}}
@media(max-width:980px){.audit-toolbar{grid-template-columns:1fr 1fr}}
@media(max-width:820px){html,body{max-width:100%;overflow-x:hidden}.shell{display:block}.sidebar{display:none!important}main{padding:12px 10px calc(112px + env(safe-area-inset-bottom));max-width:none}.topbar{position:sticky;top:0;z-index:30;margin:-12px -10px 10px;padding:10px 12px;background:rgba(245,239,232,.94);backdrop-filter:blur(12px);border-bottom:1px solid rgba(90,44,51,.08);align-items:center}.topbar>div:first-child{min-width:0}.topbar .eyebrow{display:none}.topbar h1{font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-actions{gap:6px}.account-chip{max-width:132px}.account-chip div{display:none}.icon-btn{width:42px;height:42px}.workspace-nav-wrap{position:sticky;top:63px;z-index:25;background:rgba(245,239,232,.96);margin:0 -2px 8px;padding:4px 0 7px}.workspace-strip{overflow-x:auto!important;-webkit-overflow-scrolling:touch;scrollbar-width:none}.workspace-strip::-webkit-scrollbar{display:none}.workspace-tab{min-height:44px;flex:0 0 auto}.mobile-command-center{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:7px 0 11px}.mobile-command-center button{border:1px solid #e3d2c4;background:#fffaf4;border-radius:14px;padding:10px 7px;display:grid;grid-template-columns:26px minmax(0,1fr);gap:6px;align-items:center;text-align:left;color:var(--ink);min-height:62px}.mobile-command-center button>span{width:25px;height:25px;border-radius:9px;display:grid;place-items:center;background:#f1dfd1;color:var(--wine);font-weight:1000}.mobile-command-center b,.mobile-command-center small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-command-center b{font-size:10px}.mobile-command-center small{font-size:8px;color:var(--muted);margin-top:3px}.mobile-command-center.has-alert button:nth-child(2),.mobile-command-center.has-alert button:nth-child(3){border-color:#d9a998}.section-head{gap:8px}.section-head h2{font-size:22px}.section-head .btn{width:100%;min-height:44px}.card{border-radius:16px}.pad{padding:14px}.stats,.stats.mini{gap:8px}.stat{padding:13px}.stat b{font-size:24px}.modal-card{width:min(100%,680px)!important;max-height:88dvh!important;overflow:auto!important;border-radius:22px 22px 0 0!important;margin-top:auto!important;padding-bottom:calc(20px + env(safe-area-inset-bottom))!important}#modal,#createModal{align-items:flex-end!important;padding:0!important}.modal-close{position:sticky;top:0;float:right;z-index:3}.formgrid,.two,.inline,.permission-grid{grid-template-columns:1fr!important}.edit input,.edit select,.edit textarea,input,select,textarea{font-size:16px!important;min-height:44px}.btn,.text-btn,button{touch-action:manipulation}.workflow-columns{grid-template-columns:1fr!important}.workflow-box{min-width:0}.workflow-attachment{grid-template-columns:28px minmax(0,1fr) auto}.workflow-attachment .btn{padding:9px}.org-master-calendar{border-radius:14px}.org-cal-head,.org-cal-days{min-width:660px}.audit-toolbar{grid-template-columns:1fr}.audit-kpis{grid-template-columns:repeat(3,minmax(0,1fr))!important}.audit-row{grid-template-columns:36px minmax(0,1fr);padding:10px}.audit-icon{width:34px;height:34px}.mobile-bottom-nav{padding-bottom:calc(8px + env(safe-area-inset-bottom));height:auto}.mobile-bottom-nav button{min-height:58px}.urgent-slide{min-height:132px}.file-btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center}}
@media(max-width:430px){.mobile-command-center{gap:5px}.mobile-command-center button{grid-template-columns:1fr;text-align:center;padding:8px 4px}.mobile-command-center button>span{margin:auto}.mobile-command-center b{font-size:9px}.audit-kpis{grid-template-columns:1fr 1fr!important}.audit-kpis .stat:last-child{grid-column:1/-1}}
/* ================= END V2.10 ================= */


/* ================= V2.11 · TET MONG BRAND REFRESH ================= */
body{background:radial-gradient(circle at 92% 0%,#dbeef3 0,#eef4f5 34%,#f7f3e9 100%)}
.sidebar{background:linear-gradient(180deg,#023f61 0%,#03496d 62%,#02354f 100%);box-shadow:12px 0 38px rgba(3,73,109,.12)}
.brand-logo-img{display:block;object-fit:cover;object-position:center;border-radius:14px;border:1px solid rgba(255,255,255,.28);box-shadow:0 8px 22px rgba(0,0,0,.16)}
.sidebar-logo-img{width:48px;height:48px;flex:0 0 48px}.auth-logo-img{width:58px;height:58px;flex:0 0 58px;border-radius:17px}
.brand small{color:#cae3ed}.create-main{background:linear-gradient(135deg,#fdee5e,#f4c947);color:#174055;box-shadow:0 10px 24px rgba(253,238,94,.15)}
.nav{color:#cfe3eb}.nav.active,.nav:hover{background:rgba(253,238,94,.14);color:#fff}.nav em{background:#cf6a2b;color:#fff}
.department-side-nav{border-top-color:rgba(255,255,255,.16)}.side-context-head small{color:#c5dbe4}.side-context-btn{color:#dcecf1}.side-context-btn.active{background:linear-gradient(135deg,#cf6a2b,#f0b83f);color:#16313f}
.system-mini{border-top-color:rgba(255,255,255,.16);color:#c8dbe2}.system-mini b{color:#f7fbfc}
.auth-gate{background:linear-gradient(145deg,#023f61 0%,#03496d 58%,#056b96 100%)}.auth-card{background:#fffdf7;border-color:rgba(253,238,94,.35);box-shadow:0 28px 80px rgba(0,42,63,.34)}.auth-brand b{color:#16313f}.auth-brand small{color:#657b85}.auth-demo-note{background:#edf5f6;color:#4e6773}.auth-form label{color:#274653}.auth-form input{border-color:#ccdce1}.auth-error{color:#bd4c34}
.topbar .eyebrow,.eyebrow{color:#cf6a2b}.account-chip>span{background:#03496d}.account-chip{border-color:#d6e4e7;color:#183847}.account-chip small{color:#6b7f87}
.btn.primary{background:linear-gradient(135deg,#03496d,#056b96);color:#fff;box-shadow:0 8px 18px rgba(3,73,109,.14)}.btn.soft{background:#fff4b3;color:#274653}.text-btn{color:#056b96}.tabs button.active,.workspace-tab.active{background:linear-gradient(135deg,#03496d,#056b96);border-color:#03496d;box-shadow:0 7px 18px rgba(3,73,109,.18)}
.workspace-tab:hover{background:#e5f1f4;color:#03496d}.workspace-strip{background:rgba(255,253,247,.96);box-shadow:0 10px 30px rgba(3,73,109,.07)}
.card{background:rgba(255,253,247,.97)}
.org-hero{position:relative;background:linear-gradient(112deg,#fffdf7 0%,#fff7cc 56%,#07577d 56%,#03496d 100%);border-color:#d4e1df;min-height:260px}.org-hero>div:first-child{position:relative;z-index:2}.org-hero h2{color:#15313f}.org-hero p{color:#60757e}.org-hero:after{content:"";position:absolute;right:0;top:0;width:44%;height:100%;background:repeating-linear-gradient(135deg,transparent 0 22px,rgba(253,238,94,.09) 22px 24px);pointer-events:none}
.logo-showcase{width:205px;height:205px;border-radius:34px;overflow:hidden;background:#03496d;transform:rotate(2deg);box-shadow:0 22px 55px rgba(2,62,91,.26);position:relative;z-index:2}.logo-showcase img{width:100%;height:100%;object-fit:cover;display:block}.logo-showcase small{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);margin:0!important;padding:5px 9px;border-radius:999px;background:rgba(3,73,109,.86);color:#fff!important;letter-spacing:.08em;white-space:nowrap}
.department-card:hover{border-color:#f0c447;box-shadow:0 20px 55px rgba(3,73,109,.13)}.dept-icon{background:#e5f2f4;color:#03496d}.department-card>em{color:#cf6a2b}
.mobile-command-center button>span{background:#e7f2f4;color:#03496d}.mobile-command-center.has-alert button:nth-child(2),.mobile-command-center.has-alert button:nth-child(3){border-color:#e6b13c}
.mobile-bottom-nav{background:rgba(255,253,247,.97);box-shadow:0 -12px 35px rgba(3,73,109,.11)}.mobile-bottom-nav button.active{color:#03496d;background:#e8f2f4}.mobile-bottom-nav .mobile-nav-create{background:linear-gradient(135deg,#03496d,#056b96);box-shadow:0 10px 22px rgba(3,73,109,.25)}
.dept-urgent{border-color:rgba(207,106,43,.25);background:linear-gradient(135deg,#fffdf7 0%,#fff4b8 100%);box-shadow:0 12px 30px rgba(3,73,109,.06)}.urgent-dots button.active{background:#03496d}.urgent-auto i{background:linear-gradient(90deg,#cf6a2b 0 0,#d7e5e8 0 100%)}
.tone-warn .urgent-icon,.tone-soon .urgent-icon,.tone-normal .urgent-icon{background:#fff1a8;color:#03496d}.urgent-slide.tone-danger{background:linear-gradient(135deg,#bd4c34,#d86d38);color:#fff}.urgent-slide.tone-warn{background:linear-gradient(135deg,#fff5bf,#fbdc72);color:#274653;border-color:#efd05f}.urgent-slide.tone-soon,.urgent-slide.tone-normal{background:#fffdf7;color:#16313f;border-color:#d8e4e6}
.report-progress i{background:linear-gradient(90deg,#069b5c,#056b96)}.report-dept-row strong{color:#03496d}.report-period-label{color:#03496d}.report-line span,.audit-icon{background:#e5f2f4;color:#03496d}.audit-copy em{color:#895524;background:#fff0c8}
select:focus,input:focus,textarea:focus{border-color:#2a8db5!important;box-shadow:0 0 0 3px rgba(36,141,185,.12)!important}
@media(max-width:820px){.topbar{background:rgba(238,244,245,.95);border-bottom-color:rgba(3,73,109,.10)}.workspace-nav-wrap{background:rgba(238,244,245,.97)}.org-hero{background:linear-gradient(135deg,#fffdf7,#fff4bd)}.auth-gate{background:linear-gradient(160deg,#023f61,#03496d)}}
/* ================= END V2.11 ================= */


/* ================= V2.11.1 · COLOR BALANCE FIX ================= */
:root{
  --bg:#f2f4f1;
  --panel:#fffdf8;
  --panel2:#f7f8f5;
  --ink:#172d33;
  --muted:#66767b;
  --line:#d9dfdc;
  --wine:#0a607d;
  --wine2:#147a96;
  --gold:#f1d66a;
  --gold2:#f8edb5;
  --orange:#d47836;
  --green:#17845d;
  --red:#c95a42;
  --blue:#2c839f;
  --shadow:0 14px 40px rgba(23,54,60,.07)
}
body{background:linear-gradient(135deg,#f4f2eb 0%,#f0f4f2 55%,#eef2f0 100%)}
.sidebar{
  background:linear-gradient(180deg,#17363c 0%,#1c4147 58%,#132f34 100%);
  box-shadow:12px 0 34px rgba(16,40,45,.12)
}
.brand-logo-img{border-color:rgba(255,255,255,.22);box-shadow:0 8px 20px rgba(0,0,0,.18)}
.brand b{color:#fff}.brand small{color:#c8d5d6}
.create-main{
  background:#f1d66a;
  color:#24383c;
  box-shadow:0 8px 18px rgba(0,0,0,.12)
}
.create-main:hover{background:#f6df7c;filter:none}
.nav{color:#d6e1e2}
.nav:hover{background:rgba(255,255,255,.08);color:#fff}
.nav.active{
  background:#f6f0df;
  color:#253a3e;
  box-shadow:0 7px 18px rgba(0,0,0,.13)
}
.nav.active span,.nav.active b{color:#253a3e}
.nav em{background:#d47836;color:#fff}
.department-side-nav{border-top-color:rgba(255,255,255,.13)}
.side-context-head span{background:rgba(255,255,255,.10);color:#fff}
.side-context-head b{color:#fff}.side-context-head small{color:#c7d4d5}
.side-context-btn{background:transparent;color:#dce6e7;border-left:3px solid transparent}
.side-context-btn:hover{background:rgba(255,255,255,.08);color:#fff}
.side-context-btn.active{
  background:#f6f0df;
  color:#253a3e;
  border-left-color:#d47836;
  box-shadow:0 7px 18px rgba(0,0,0,.13)
}
.side-context-btn.active span,.side-context-btn.active b{color:#253a3e}
.system-mini{border-top-color:rgba(255,255,255,.13);color:#bacbcd}.system-mini b{color:#eef4f4}
.topbar .eyebrow,.eyebrow{color:#bd6b34}
.card{background:#fffdf8;border-color:#d9dfdc;box-shadow:0 12px 34px rgba(23,54,60,.06)}
.workspace-strip{background:rgba(255,253,248,.98);box-shadow:0 8px 24px rgba(23,54,60,.06)}
.workspace-tab:hover{background:#edf3f1;color:#245765}
.workspace-tab.active,.tabs button.active{
  background:#264b52;
  border-color:#264b52;
  color:#fff;
  box-shadow:0 6px 14px rgba(23,54,60,.14)
}
.btn.primary{
  background:#0a607d;
  color:#fff;
  box-shadow:0 7px 16px rgba(10,96,125,.16)
}
.btn.primary:hover{background:#0b6b89}
.btn.soft{background:#f3e7ba;color:#39494b}
.text-btn{color:#0a607d}
.account-chip>span{background:#264b52}.account-chip{border-color:#d7dfdc;color:#263d42}.account-chip small{color:#6d7d81}
.icon-btn{background:#fffdf8;border-color:#d9dfdc;color:#29454b}
.mobile-command-center button>span{background:#e8efed;color:#264b52}
.mobile-bottom-nav{background:rgba(255,253,248,.98);box-shadow:0 -10px 30px rgba(23,54,60,.10)}
.mobile-bottom-nav button.active{color:#264b52;background:#e9efed}
.mobile-bottom-nav .mobile-nav-create{background:#264b52;box-shadow:0 9px 20px rgba(23,54,60,.22)}
.dept-urgent{border-color:#eadca4;background:linear-gradient(135deg,#fffdf8 0%,#faf3d2 100%);box-shadow:0 10px 26px rgba(23,54,60,.05)}
.urgent-dots button.active{background:#264b52}.urgent-auto i{background:linear-gradient(90deg,#d47836 0 0,#d9dfdc 0 100%)}
.tone-warn .urgent-icon,.tone-soon .urgent-icon,.tone-normal .urgent-icon{background:#f3e7aa;color:#33474b}
.report-progress i{background:linear-gradient(90deg,#17845d,#2c839f)}
.report-dept-row strong,.report-period-label{color:#315d68}.report-line span,.audit-icon{background:#e9efed;color:#315d68}
select:focus,input:focus,textarea:focus{border-color:#5d8d99!important;box-shadow:0 0 0 3px rgba(93,141,153,.12)!important}
@media(max-width:820px){
  .topbar{background:rgba(244,242,235,.96);border-bottom-color:rgba(38,75,82,.10)}
  .workspace-nav-wrap{background:rgba(244,242,235,.97)}
}
/* ================= END V2.11.1 ================= */


/* ================= V2.12 · GLOBAL SEARCH + FINAL POLISH ================= */
.search-btn{font-weight:1000;font-size:20px}.global-search{min-height:430px}.global-search h2{margin:0 0 14px}.global-search-box{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;border:1px solid var(--line);background:#fff;border-radius:15px;padding:4px 10px;box-shadow:0 9px 28px rgba(23,54,60,.05)}.global-search-box>span{font-size:22px;color:#315d68;text-align:center}.global-search-box input{border:0!important;box-shadow:none!important;background:transparent!important;min-height:48px;padding:9px 6px}.global-search-scope{font-size:11px;color:var(--muted);margin:8px 2px 10px}.global-search-tabs{display:flex;gap:6px;overflow:auto;padding-bottom:4px}.global-search-tabs button{white-space:nowrap;border:1px solid var(--line);background:#fffdf8;color:#516368;border-radius:999px;padding:7px 10px;font:inherit;font-size:10px;font-weight:850;cursor:pointer}.global-search-tabs button.active{background:#264b52;color:#fff;border-color:#264b52}.global-search-tabs span{opacity:.72;margin-left:4px}.global-search-results{display:grid;gap:7px;margin-top:8px;max-height:min(58vh,560px);overflow:auto;padding-right:2px}.global-search-result{border:1px solid var(--line);background:#fffdf8;border-radius:14px;padding:12px;display:grid;grid-template-columns:40px minmax(0,1fr) 20px;gap:10px;align-items:center;text-align:left;color:var(--ink);font:inherit;cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.global-search-result:hover,.global-search-result:focus-visible{transform:translateY(-1px);border-color:#a9bbb7;box-shadow:0 9px 24px rgba(23,54,60,.08);outline:none}.global-search-result-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#e9efed;color:#315d68;font-weight:1000}.global-search-result-head{display:flex;gap:8px;align-items:center;flex-wrap:wrap;min-width:0}.global-search-result-head b{font-size:13px;overflow-wrap:anywhere}.global-search-result-head em{font-style:normal;font-size:8px;font-weight:900;letter-spacing:.05em;background:#f3e7ba;color:#5b4b2b;border-radius:999px;padding:4px 7px}.global-search-result small{display:block;margin-top:3px;color:var(--muted);overflow-wrap:anywhere}.global-search-result p{margin:5px 0 0;font-size:11px;line-height:1.45;color:#536267;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.global-search-result>strong{color:#7f8e91}.search-empty,.search-loading{min-height:160px;border:1px dashed var(--line);border-radius:15px;background:#f8faf8;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;color:var(--muted)}.search-empty>span{font-size:30px;color:#6d858a;margin-bottom:8px}.search-empty b{color:#31494e;margin-bottom:5px}.search-empty small{max-width:440px;line-height:1.5}.search-empty.error b{color:var(--red)}
.view.active{animation:v212ViewIn .18s ease}@keyframes v212ViewIn{from{opacity:.45;transform:translateY(3px)}to{opacity:1;transform:none}}.btn,.nav,.workspace-tab,.side-context-btn,.mobile-bottom-nav button,.icon-btn{transition:background .16s ease,color .16s ease,border-color .16s ease,transform .16s ease,box-shadow .16s ease}.btn:focus-visible,.nav:focus-visible,.workspace-tab:focus-visible,.side-context-btn:focus-visible,.mobile-bottom-nav button:focus-visible,.icon-btn:focus-visible{outline:3px solid rgba(93,141,153,.28);outline-offset:2px}.empty{overflow-wrap:anywhere;line-height:1.5}.empty:not(.compact-empty){min-height:70px;display:flex;align-items:center;justify-content:center;text-align:center}.org-task h4,.workflow-comment p,.workflow-attachment b,.audit-copy p,.department-card h3,.todo-item,.rank-item,.source h3,.draft h3{overflow-wrap:anywhere;word-break:break-word}.modal-card{scrollbar-gutter:stable}.modal-card::-webkit-scrollbar,.global-search-results::-webkit-scrollbar{width:8px}.modal-card::-webkit-scrollbar-thumb,.global-search-results::-webkit-scrollbar-thumb{background:#ccd6d3;border-radius:999px}.file-btn{max-width:100%}
@media(max-width:820px){#createTop{display:none!important}.top-actions{flex:0 0 auto}.search-btn{display:grid!important}.global-search{min-height:54dvh}.global-search-results{max-height:48dvh}.global-search-result{grid-template-columns:36px minmax(0,1fr) 16px;padding:10px}.global-search-result-icon{width:34px;height:34px}.global-search-tabs{margin-right:-8px;padding-right:8px}.modal-card{overscroll-behavior:contain}.section-head>div,.section-line>div{min-width:0}.section-head h2,.section-line h3{overflow-wrap:anywhere}.workflow-attachment b,.workflow-attachment small{overflow-wrap:anywhere}.topbar h1{max-width:42vw}}
@media(max-width:430px){.account-chip{width:40px;padding:0;border:0;background:transparent}.account-chip>span{width:38px;height:38px}.top-actions{gap:4px}.icon-btn{width:39px;height:39px}.topbar h1{max-width:36vw}.global-search-box{grid-template-columns:28px minmax(0,1fr);padding-inline:7px}.global-search-tabs button{font-size:9px;padding:7px 9px}.global-search-result p{-webkit-line-clamp:3}}
@media(prefers-reduced-motion:reduce){.view.active,.global-search-result,.btn,.nav,.workspace-tab,.side-context-btn,.mobile-bottom-nav button,.icon-btn{animation:none!important;transition:none!important}}
/* ================= END V2.12 ================= */
.auth-security-note{margin:18px 0;padding:14px 16px;border:1px solid #eadab2;border-left:4px solid #cf6a2b;border-radius:14px;background:#fff8df;color:#4b4435;line-height:1.65}.auth-actions{display:grid;gap:10px;margin-top:16px}.auth-actions a.btn{text-decoration:none;display:flex;align-items:center;justify-content:center}


/* ================= HOTFIX60 · MOBILE DEPARTMENT MENU + OVERFLOW FIX ================= */
.mobile-task-menu-backdrop,.mobile-task-menu-sheet{display:none}
@media(max-width:820px){
  /* Keep the already-good header/urgent area intact; constrain only department content below it. */
  .department-page,.department-summary,.department-summary>div,.dept-summary-metrics,.review-queue,.review-queue-list,.my-tasks,.my-task-grid,.dept-deadline,.specialty-grid,.specialty-card{min-width:0;max-width:100%}
  .department-summary{width:100%;overflow:hidden;padding:14px;gap:12px}
  .department-summary>div:first-child{width:100%;min-width:0;align-items:flex-start}
  .department-summary>div:first-child>div{min-width:0;flex:1 1 auto;max-width:100%}
  .department-summary h3{max-width:100%;white-space:normal;overflow-wrap:anywhere;word-break:break-word;line-height:1.28}
  .dept-summary-metrics{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;width:100%}
  .dept-summary-metrics span{min-width:0!important;width:auto!important;padding:9px 4px!important;overflow:hidden}
  .dept-summary-metrics b{font-size:20px}.dept-summary-metrics small{white-space:normal;overflow-wrap:anywhere}
  .review-queue,.my-tasks,.dept-deadline{width:100%;overflow:hidden}
  .review-queue .empty,.my-tasks .empty{max-width:100%;width:100%;padding:12px 8px;white-space:normal!important;overflow-wrap:anywhere;word-break:break-word}
  .review-queue-list button{width:100%;min-width:0;max-width:100%}
  .review-queue-list button>div{min-width:0;max-width:100%}
  .review-queue-list b,.review-queue-list small{white-space:normal;overflow-wrap:anywhere;word-break:break-word}
  .section-line,.section-line>div{min-width:0;max-width:100%}

  /* Adaptive bottom navigation: no empty columns when role-based items are hidden. */
  .mobile-bottom-nav{display:flex!important;justify-content:center;align-items:flex-end;gap:3px}
  .mobile-bottom-nav>button{flex:1 1 0;max-width:100px;min-width:0}
  .mobile-bottom-nav .mobile-nav-create{flex:0 0 58px}

  /* Full department task menu, opened from the bottom bar. */
  .mobile-task-menu-backdrop:not([hidden]){display:block;position:fixed;inset:0;z-index:70;background:rgba(18,36,40,.42);backdrop-filter:blur(2px)}
  .mobile-task-menu-sheet:not([hidden]){display:flex}
  .mobile-task-menu-sheet{position:fixed;left:8px;right:8px;bottom:calc(72px + env(safe-area-inset-bottom));z-index:71;max-height:min(70dvh,620px);flex-direction:column;background:#fffdf8;border:1px solid #d9dfdc;border-radius:22px;box-shadow:0 24px 70px rgba(19,47,52,.25);overflow:hidden;transform:translateY(8px);opacity:0;transition:transform .18s ease,opacity .18s ease}
  .mobile-task-menu-sheet.open{transform:none;opacity:1}
  .mobile-task-menu-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 15px 11px;border-bottom:1px solid #e2e7e4;background:#f7f4e9}
  .mobile-task-menu-head p{margin:0 0 3px;color:#bd6b34;font-size:9px;font-weight:900;letter-spacing:.16em}.mobile-task-menu-head h3{margin:0;font-size:17px;color:#233b40}
  .mobile-task-menu-close{width:38px;height:38px;border:0;border-radius:12px;background:#e9efed;color:#264b52;font-size:24px;line-height:1;display:grid;place-items:center}
  .mobile-task-menu-content{padding:12px;overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
  .mobile-task-menu-sheet .side-context-head{padding:0 2px 10px;border-bottom:1px dashed #dfe5e2;margin-bottom:10px}
  .mobile-task-menu-sheet .side-context-head span{background:#264b52;color:#fff;box-shadow:none}.mobile-task-menu-sheet .side-context-head b{color:#233b40;font-size:13px}.mobile-task-menu-sheet .side-context-head small{color:#728287;font-size:10px}
  .mobile-task-menu-sheet .side-context-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  .mobile-task-menu-sheet .side-context-btn{min-width:0;min-height:47px;padding:9px 10px;border:1px solid #dde4e1;border-left:3px solid transparent;border-radius:12px;background:#fbfaf5;color:#334a4f;grid-template-columns:23px minmax(0,1fr);box-shadow:none}
  .mobile-task-menu-sheet .side-context-btn span{color:#315d68}.mobile-task-menu-sheet .side-context-btn b{font-size:11px;white-space:normal;overflow-wrap:anywhere;line-height:1.2}
  .mobile-task-menu-sheet .side-context-btn.active{background:#f6f0df;color:#253a3e;border-color:#eadfc1;border-left-color:#d47836;box-shadow:none}
  .mobile-task-menu-sheet .side-context-btn:active{transform:scale(.985)}
  body.mobile-task-menu-open{overflow:hidden;touch-action:none}
}
@media(max-width:380px){
  .mobile-task-menu-sheet .side-context-list{grid-template-columns:1fr 1fr;gap:6px}
  .mobile-task-menu-sheet .side-context-btn{padding:8px 7px}.mobile-task-menu-sheet .side-context-btn b{font-size:10px}
  .dept-summary-metrics{gap:5px}.dept-summary-metrics span{padding-inline:2px!important}.dept-summary-metrics small{font-size:8px}
}
@media(prefers-reduced-motion:reduce){.mobile-task-menu-sheet{transition:none!important}}
/* ================= END HOTFIX60 ================= */


/* Hotfix62 · Push Notifications */
.push-pref-card{border:1px solid rgba(207,106,43,.28);background:linear-gradient(135deg,#fffdf8,#f4f8f7);border-radius:18px;padding:16px;margin:12px 0 18px;display:grid;gap:12px}
.push-pref-card>div:first-child{display:flex;align-items:flex-start;gap:12px;min-width:0}.push-pref-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:#17363c;color:#fff;font-size:20px;flex:0 0 auto}.push-pref-card b{display:block;color:#17363c}.push-pref-card p{margin:4px 0 0;color:#617074;overflow-wrap:anywhere}.push-pref-card>small{color:#6e7779;line-height:1.5}.push-pref-actions{display:flex;gap:8px;flex-wrap:wrap}.push-pref-actions .btn{min-height:42px}
@media(max-width:700px){.push-pref-card{padding:14px;border-radius:16px}.push-pref-actions{display:grid;grid-template-columns:1fr}.push-pref-actions .btn{width:100%}}


/* Hotfix63 · visible Push center + Quản trị BTC broadcast composer */
.broadcast-btn{display:grid;place-items:center}
.notification-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.notification-device-panel{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:12px 0 14px;padding:13px 14px;border:1px solid #d9e4df;border-radius:15px;background:#f6faf7}
.notification-device-panel>div:first-child{display:flex;align-items:center;gap:10px;min-width:0}.notification-device-panel b,.notification-device-panel p{margin:0}.notification-device-panel p{font-size:12px;color:var(--muted);margin-top:3px;overflow-wrap:anywhere}.notification-device-panel .push-pref-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.broadcast-hint{color:var(--muted);line-height:1.55;margin:3px 0 14px}.broadcast-form{display:grid;gap:6px}.broadcast-form select{width:100%;border:1px solid var(--line);border-radius:11px;background:#fffdf9;padding:11px 12px;font:inherit;color:var(--ink);outline:none;min-height:44px}.broadcast-form textarea{min-height:132px}.broadcast-meta{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:2px}.broadcast-meta small:first-child{min-width:0;overflow-wrap:anywhere}
@media(max-width:820px){.notification-head{align-items:flex-start}.notification-head-actions{justify-content:flex-start}.notification-device-panel{align-items:flex-start;flex-direction:column}.notification-device-panel .push-pref-actions{width:100%;justify-content:flex-start}.notification-device-panel .push-pref-actions .btn{min-height:42px}.broadcast-form select{font-size:16px}.broadcast-meta{align-items:flex-start}}
@media(max-width:430px){.broadcast-btn{display:grid}.notification-head-actions{width:100%}.notification-head{flex-wrap:wrap}}


/* === Login V2 — glassmorphism / BTC Tết Mông Xuống Phố === */
.auth-gate{
  position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:22px;
  overflow:auto;
  background:
    radial-gradient(circle at 6% 4%,rgba(220,62,225,.88) 0 13%,transparent 14%),
    radial-gradient(circle at 88% 14%,rgba(116,75,255,.17) 0 18%,transparent 19%),
    radial-gradient(circle at 88% 88%,rgba(40,214,195,.68) 0 17%,transparent 18%),
    linear-gradient(145deg,#fbf8ff 0%,#f4f5ff 44%,#effdfa 100%);
}
.auth-gate[hidden]{display:none}
.auth-card{
  position:relative;width:min(430px,100%);padding:24px 22px 25px;border-radius:42px;
  background:rgba(255,255,255,.46);border:1px solid rgba(255,255,255,.86);
  box-shadow:0 30px 90px rgba(64,35,98,.20);
  backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);overflow:hidden;
}
.auth-card::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(120deg,rgba(255,255,255,.42),transparent 38%),radial-gradient(circle at 88% 88%,rgba(37,215,195,.16),transparent 30%);
}
.auth-brand.auth-brand-v2{position:relative;z-index:2;display:block;text-align:center;margin:0 0 19px}
.auth-brand-v2 .auth-logo-v2{
  width:88px;height:88px;display:block;object-fit:cover;margin:0 auto 9px;padding:5px;border-radius:23px;
  background:rgba(255,255,255,.65);border:1px solid rgba(255,255,255,.92);box-shadow:0 12px 34px rgba(67,37,103,.15)
}
.auth-brand-v2 .auth-brand-copy{display:block}
.auth-brand-v2 .auth-btc-title{
  display:block;margin:0;font-size:54px;line-height:.92;font-weight:950;letter-spacing:.15em;padding-left:.15em;
  background:linear-gradient(95deg,#542ee7,#8d35e7 50%,#e63ba7);-webkit-background-clip:text;background-clip:text;color:transparent;
  text-shadow:0 8px 24px rgba(105,54,223,.10)
}
.auth-brand-v2 .auth-event-title{
  display:block;margin-top:9px;font-size:17px;line-height:1.25;font-weight:900;letter-spacing:.08em;color:#2b2730;text-transform:uppercase
}
.auth-brand-v2 small{display:block;margin-top:7px;color:#71697a;font-size:12px;font-weight:500}
#authBody{
  position:relative;z-index:2;padding:23px 20px 20px;border-radius:30px;
  background:rgba(255,255,255,.57);border:1px solid rgba(255,255,255,.84);box-shadow:0 23px 60px rgba(50,24,80,.14);
  backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)
}
#authBody .login-v2-intro h1,#authBody>h1{margin:0;font-size:24px;line-height:1.15;font-weight:900;color:#17171e}
#authBody .login-v2-intro p,#authBody>p:not(.eyebrow){margin:6px 0 18px;color:#71697a;font-size:13px;line-height:1.45}
#authBody>.eyebrow{margin:0 0 8px;color:#743be4;font-weight:900;font-size:11px;letter-spacing:.12em}
.auth-form{display:grid;gap:11px;margin-top:15px}
.auth-form-v2{margin-top:0;gap:11px}
.auth-input-v2{position:relative}
.auth-input-v2>svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:20px;height:20px;stroke:#8d6da2;z-index:2;pointer-events:none}
.auth-input-v2 input{
  width:100%;height:56px;min-height:56px;border-radius:16px;border:1px solid rgba(126,89,172,.18);outline:none;
  background:rgba(255,255,255,.72);padding:0 46px;font-size:15px;color:#27212e;box-shadow:inset 0 1px 0 rgba(255,255,255,.82);transition:.2s ease
}
.auth-input-v2 input:focus{border-color:rgba(117,67,246,.58);box-shadow:0 0 0 4px rgba(117,67,246,.10)}
.auth-input-v2 input::placeholder{color:#8a838f}
.auth-eye-v2{
  position:absolute;right:11px;top:50%;transform:translateY(-50%);width:36px;height:36px;border:0;border-radius:11px;
  display:grid;place-items:center;background:transparent;color:#817487;cursor:pointer;font-size:17px
}
.auth-options-v2{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:2px 2px 3px;font-size:13px}
.auth-remember-v2{display:flex!important;grid-template-columns:none!important;align-items:center;gap:8px!important;color:#5f5668!important;font-weight:500!important;cursor:pointer}
.auth-remember-v2 input{
  appearance:none;width:18px!important;height:18px!important;min-height:18px!important;padding:0!important;border-radius:5px!important;
  border:1px solid rgba(114,76,159,.25)!important;background:rgba(255,255,255,.70)!important;display:grid!important;place-items:center!important;cursor:pointer
}
.auth-remember-v2 input:checked{background:linear-gradient(135deg,#6838f0,#e23ca9)!important;border-color:transparent!important}
.auth-remember-v2 input:checked::after{content:"✓";color:#fff;font-size:12px;font-weight:900}
.auth-forgot-v2{border:0;background:transparent;padding:5px 0;color:#5f45d8;font:inherit;font-weight:800;cursor:pointer}
.auth-login-v2{
  min-height:56px!important;border:0!important;border-radius:18px!important;color:#fff!important;font-weight:950!important;letter-spacing:.12em!important;font-size:15px!important;
  background:linear-gradient(100deg,#5d37ec 0%,#903be8 48%,#ec3ca7 100%)!important;box-shadow:0 16px 28px rgba(135,55,223,.28)!important
}
.auth-login-v2:hover{transform:translateY(-1px);box-shadow:0 18px 34px rgba(135,55,223,.34)!important}
.auth-form:not(.auth-form-v2) label{display:grid;gap:7px;font-weight:800;color:#4f4054}
.auth-form:not(.auth-form-v2) input{width:100%;min-height:48px;border-radius:14px;border:1px solid rgba(126,89,172,.20);background:rgba(255,255,255,.76);padding:0 14px;font-size:16px}
.auth-error{min-height:20px;color:#bd3f59;font-weight:750;font-size:13px}
.auth-demo-note{margin-top:15px;padding:12px;border-radius:14px;background:rgba(245,241,252,.82);font-size:13px;color:#66596d}
.demo-role-grid button{border-color:rgba(126,89,172,.18);background:rgba(255,255,255,.78)}
.auth-security-note{background:rgba(245,241,252,.82)!important;color:#66596d!important}

@media(max-width:720px){
  .auth-gate{padding:12px;align-items:center;background:
    radial-gradient(circle at 0% 3%,rgba(220,62,225,.75) 0 13%,transparent 14%),
    radial-gradient(circle at 100% 96%,rgba(40,214,195,.58) 0 17%,transparent 18%),
    linear-gradient(145deg,#fbf8ff,#effdfa)}
  .auth-card{width:100%;max-width:430px;border-radius:30px;padding:20px 16px 20px;max-height:none;overflow:visible}
  .auth-brand-v2 .auth-logo-v2{width:80px;height:80px}
  .auth-brand-v2 .auth-btc-title{font-size:48px}
  .auth-brand-v2 .auth-event-title{font-size:15px}
  #authBody{padding:21px 17px 18px;border-radius:26px}
  .auth-options-v2{font-size:12px}
}
