:root{--navy:#051832;--navy2:#072b55;--blue:#1769ff;--cyan:#00c2ff;--bg:#f3f7fd;--card:#fff;--text:#0f172a;--muted:#64748b;--line:#e5edf7;--green:#16a34a;--amber:#f59e0b;--red:#ef4444;--shadow:0 18px 45px rgba(8,29,61,.16);--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--header:70px;--nav:86px}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;height:100%;overflow:hidden;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--text);background:#dce6f5}.screen{height:100dvh;max-width:430px;margin:auto;background:var(--bg);overflow:hidden}.hidden{display:none!important}.toast{position:fixed;top:calc(18px + var(--safe-top));left:18px;right:18px;max-width:394px;margin:auto;background:#0f172a;color:white;padding:14px;border-radius:18px;z-index:99;box-shadow:var(--shadow)}.splash{height:100dvh;max-width:430px;margin:auto;background:radial-gradient(circle at 50% 80%,rgba(0,194,255,.28),transparent 30%),linear-gradient(160deg,#021224,#062d5b 62%,#071b36);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;text-align:center;animation:fade .5s}.shield{width:112px;height:112px;border-radius:32px;background:linear-gradient(145deg,#00c2ff,#1769ff 60%,#072b55);display:grid;place-items:center;font-size:62px;font-weight:900;box-shadow:0 25px 55px rgba(0,0,0,.28);border:1px solid rgba(255,255,255,.25);animation:pulse 1.2s}.shield.sm{width:48px;height:48px;border-radius:16px;font-size:28px;animation:none}.splash h1{font-size:50px;margin:26px 0 8px;letter-spacing:-2px}.splash p{margin:0;color:#dbeafe}.splash small{position:absolute;bottom:70px;color:#e2e8f0;font-weight:800}.bar{position:absolute;bottom:42px;width:190px;height:5px;background:rgba(255,255,255,.18);border-radius:999px;overflow:hidden}.bar span{display:block;height:100%;width:70%;background:#38bdf8;border-radius:999px;animation:load 1.2s}.auth-bg{min-height:100dvh;padding:calc(22px + var(--safe-top)) 18px calc(30px + var(--safe-bottom));background:linear-gradient(180deg,#fff 0%,#f6f9ff 56%,#edf5ff 100%);overflow:auto}.brand{display:flex;align-items:center;gap:12px;color:var(--navy);margin:4px 0 18px}.brand b{font-size:28px}.brand span{margin-left:auto;color:var(--blue);font-size:11px;font-weight:900;background:#eaf2ff;border-radius:999px;padding:6px 9px}.login-card{background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius:28px;padding:22px;box-shadow:var(--shadow);backdrop-filter:blur(12px);margin:12px 0}.animated{animation:slideUp .55s ease}.chip{display:inline-block;background:#fff7d6;color:#6b4a00;font-size:11px;font-weight:900;border-radius:999px;padding:7px 10px;margin-bottom:12px}h2{font-size:25px;margin:0 0 8px;letter-spacing:-.4px}.muted{color:var(--muted);font-size:13px;line-height:1.45}input,textarea,select{width:100%;border:1px solid var(--line);border-radius:17px;background:#fff;padding:14px 15px;margin:8px 0;font-size:15px;outline:none}input:focus,textarea:focus,select:focus{border-color:#8bb7ff;box-shadow:0 0 0 4px rgba(23,105,255,.1)}textarea{min-height:100px;resize:vertical}.btn{width:100%;border:0;border-radius:17px;background:linear-gradient(135deg,#1769ff,#0756e9);color:#fff;font-weight:900;padding:14px 16px;margin:8px 0;box-shadow:0 10px 22px rgba(23,105,255,.22)}.btn.ghost{background:#f1f7ff;color:#1769ff;box-shadow:none;border:1px solid #cfe0ff}.btn.danger{background:#fee2e2;color:#b91c1c;box-shadow:none}.btn.ok{background:#dcfce7;color:#166534;box-shadow:none}.link{border:0;background:transparent;color:#1769ff;font-weight:900;margin:10px auto;display:block}.split{display:flex;align-items:center;gap:10px;justify-content:center;color:#94a3b8;font-size:12px;margin:8px 0}.split span{height:1px;background:#e5edf7;flex:1}.center{text-align:center}.otp-row{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.otp-row input{text-align:center;font-size:22px;font-weight:900;padding:12px 0}.top{height:calc(var(--header) + var(--safe-top));padding:var(--safe-top) 15px 10px;background:linear-gradient(135deg,#04162d,#083765);color:#fff;display:flex;align-items:flex-end;justify-content:space-between;box-shadow:0 10px 28px rgba(5,24,50,.2);position:sticky;top:0;z-index:5}.top b{font-size:19px;display:block}.top span{font-size:12px;color:#bfdbfe}.top button{border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.12);color:#fff;border-radius:999px;padding:8px 12px}.content{height:calc(100dvh - var(--header) - var(--safe-top));padding:15px 14px calc(var(--nav) + var(--safe-bottom) + 36px);overflow:auto;-webkit-overflow-scrolling:touch}.nav{position:fixed;bottom:0;left:0;right:0;max-width:430px;margin:auto;min-height:calc(var(--nav) + var(--safe-bottom));padding:8px 8px calc(9px + var(--safe-bottom));display:grid;grid-template-columns:repeat(5,1fr);background:rgba(255,255,255,.94);border-top:1px solid var(--line);backdrop-filter:blur(16px);box-shadow:0 -10px 25px rgba(15,23,42,.08);z-index:10}.nav button{border:0;background:transparent;color:#64748b;border-radius:16px;font-size:18px;font-weight:800;display:flex;flex-direction:column;align-items:center;gap:2px}.nav button span{font-size:11px}.nav button.active{background:#eaf2ff;color:#1769ff}.card{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:16px;box-shadow:0 9px 25px rgba(8,29,61,.08);margin:12px 0}.hero-card{background:linear-gradient(135deg,#061832,#0a4b8f);color:#fff;border:0;overflow:hidden;position:relative}.hero-card:after{content:'◆';position:absolute;right:18px;bottom:8px;font-size:72px;color:rgba(255,255,255,.08)}.row{display:flex;align-items:center;justify-content:space-between;gap:10px}.avatar{width:54px;height:54px;border-radius:19px;background:linear-gradient(135deg,#dbeafe,#bfdbfe);display:grid;place-items:center;font-weight:900;color:#0d47a1;overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover}.grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.stat{background:#fff;border:1px solid var(--line);border-radius:21px;padding:15px;box-shadow:0 7px 18px rgba(8,29,61,.06)}.stat b{font-size:26px;display:block}.stat span{font-size:12px;color:var(--muted)}.pill{display:inline-block;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:900;background:#eaf2ff;color:#1769ff}.pill.green{background:#dcfce7;color:#166534}.pill.amber{background:#ffedd5;color:#9a3412}.pill.red{background:#fee2e2;color:#991b1b}.list .item{background:#fff;border:1px solid var(--line);border-radius:21px;padding:14px;margin:10px 0;box-shadow:0 7px 18px rgba(8,29,61,.06)}.item h3{margin:6px 0;font-size:17px}.item p{color:#334155}.action-row{display:grid;grid-template-columns:1fr 1fr;gap:9px}.safe-note{background:#ecfdf5;border:1px solid #bbf7d0;color:#166534;border-radius:17px;padding:12px;margin:10px 0}.warning{background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;border-radius:17px;padding:12px;margin:10px 0}.mini{font-size:12px}.footer-gap{height:60px}@keyframes pulse{50%{transform:scale(1.04)}}@keyframes load{from{width:0}to{width:70%}}@keyframes fade{from{opacity:0}to{opacity:1}}@keyframes slideUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}@media(max-height:720px){.splash h1{font-size:42px}.login-card{padding:18px}.content{padding-bottom:calc(var(--nav) + var(--safe-bottom) + 70px)}}
.mini-actions{display:flex;gap:10px;justify-content:space-between;margin:10px 0 2px}.mini-actions .link{font-size:13px;padding:6px 4px}.safe-note{background:#ecfdf5;border:1px solid #bbf7d0;color:#065f46;border-radius:16px;padding:12px;margin-top:12px;line-height:1.45}.safe-note b{color:#064e3b}.recovery-list{margin:8px 0 0;padding-left:18px}.recovery-list li{margin:4px 0}

/* v3.0.4 Full Workspace Activation */
.chat-list{display:flex;flex-direction:column;gap:10px;margin:10px 0}.bubble{max-width:86%;padding:12px;border-radius:18px;border:1px solid var(--line);background:#fff;box-shadow:0 6px 16px rgba(8,29,61,.06)}.bubble.mine{align-self:flex-end;background:#eaf2ff;border-color:#cfe0ff}.bubble.theirs{align-self:flex-start}.bubble small{display:block;color:#64748b;margin-top:6px}.mini-link{border:0;background:transparent;color:#1769ff;font-weight:800;font-size:12px;margin:5px 8px 0 0}.chat-compose textarea{min-height:70px}.file-chip{display:block;text-decoration:none;color:#0f172a;background:#f8fbff;border:1px solid var(--line);border-radius:14px;padding:9px 10px;margin:6px 0}.file-chip small{color:#64748b;margin-left:6px}.attachments{margin:8px 0}.tree{display:flex;flex-direction:column;gap:8px}.tree-row{border-left:4px solid #dbeafe;background:#fff;border:1px solid var(--line);border-radius:18px;padding:12px}.tree-row.role-SUPER_ADMIN,.tree-row.role-ORG_ADMIN{border-left-color:#1769ff}.tree-row.role-SUPERIOR{border-left-color:#00c2ff}.tree-row.role-OFFICER{border-left-color:#16a34a}.tree-row small{color:#64748b}.verify-box{background:#f8fbff;border:1px solid var(--line);border-radius:16px;padding:10px;margin-top:10px}.verify-box summary{font-weight:900;color:#0f172a}.mini-rec{border-top:1px solid var(--line);padding:9px 0}.mini-rec:first-of-type{border-top:0}.mini-rec span{display:block;font-weight:800}.mini-rec .btn{padding:9px 10px;margin:6px 0 0}.chat-head .link{width:auto;margin:0}.chat-head h2{font-size:19px}.center{text-align:center}

/* v3.0.7 Stable: automatic device recognition + animated home clock */
.secure-line{text-align:center;color:#64748b;font-weight:800;font-size:12px;margin:8px 0 0;letter-spacing:.2px}.home-clock{margin-top:16px;padding:16px;border-radius:24px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);box-shadow:inset 0 1px 0 rgba(255,255,255,.12);animation:clockGlow 2.4s ease-in-out infinite}.home-clock span{display:block;color:#bfdbfe;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.7px}.home-clock b{font-size:38px;line-height:1.05;letter-spacing:-1px;color:#fff;text-shadow:0 8px 26px rgba(0,0,0,.18)}.home-clock em{font-style:normal;font-size:22px;color:#93c5fd;display:inline-block;min-width:34px;animation:tickPulse 1s ease-in-out infinite}.home-clock p{margin:6px 0 0;color:#e0f2fe;font-weight:800;font-size:13px}@keyframes clockGlow{50%{transform:translateY(-1px);box-shadow:0 14px 34px rgba(0,194,255,.16),inset 0 1px 0 rgba(255,255,255,.14)}}@keyframes tickPulse{50%{opacity:.55;transform:scale(.96)}}

/* v3.0.8 Productive UI refresh - same style across layers */
.screen{background:#f7fbff}.content{padding:16px 14px calc(var(--nav) + var(--safe-bottom) + 36px)}
.neo-hero,.neo-card{border-radius:28px;box-shadow:0 16px 38px rgba(8,29,61,.10);margin:14px 0;border:1px solid rgba(225,235,248,.9)}
.neo-hero{background:#fff;padding:20px 18px 18px;overflow:hidden;position:relative}.neo-hero:before{content:'';position:absolute;right:-44px;top:-55px;width:170px;height:170px;border-radius:50%;background:rgba(247,176,64,.10)}.neo-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;position:relative;z-index:1}.neo-top h1{margin:0;font-size:26px;line-height:1.14;color:#123047;letter-spacing:-.6px}.neo-top h1 span{color:#f7a928}.neo-top p{margin:8px 0 0;color:#64748b;font-weight:700}.bell{position:relative;width:44px;height:44px;border-radius:16px;background:#f6fbff;display:grid;place-items:center;box-shadow:inset 0 0 0 1px #e8f0fa}.bell em{position:absolute;right:-4px;top:-5px;background:#ff7a00;color:#fff;border-radius:999px;font-style:normal;font-size:11px;font-weight:900;padding:3px 6px}.neo-clock{margin-top:18px;border-radius:24px;background:linear-gradient(135deg,#063145,#0a4f66);color:#fff;padding:18px 20px;box-shadow:0 14px 32px rgba(6,49,69,.24);position:relative;z-index:1}.neo-clock span{display:block;font-size:13px;color:#c7eaff;font-weight:900;letter-spacing:.4px;text-transform:uppercase}.neo-clock b{display:block;font-size:42px;letter-spacing:-1px;line-height:1.08;margin-top:8px}.neo-clock em{font-size:24px;color:#f7b040;font-style:normal;animation:tickPulse 1s infinite}.neo-clock p{margin:8px 0 0;color:#e7f7ff;font-weight:700}.neo-card{background:#fff;padding:17px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.section-title h2,.neo-card h2{font-size:19px;margin:0 0 12px;color:#0d2240}.section-title a{font-size:12px;color:#1769ff;font-weight:900;text-decoration:none}.overview-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.overview-tile{border-radius:18px;background:#f3f8ff;min-height:96px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #e8f0fa}.overview-tile.green{background:#f1fbf4}.overview-tile.orange{background:#fff6ef}.overview-tile.purple{background:#f6f2ff}.overview-tile i{font-style:normal;font-size:21px}.overview-tile b{font-size:25px;margin:7px 0 1px;color:#0d2240}.overview-tile span{font-size:12px;color:#52637c}.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.quick-grid button{height:94px;border-radius:20px;border:1px solid #e6eef8;background:#fff;box-shadow:0 8px 18px rgba(8,29,61,.06);font-weight:900;color:#0d2240}.quick-grid i{display:block;font-style:normal;font-size:28px;margin-bottom:8px}.soft-list{display:flex;flex-direction:column;gap:10px}.soft-item{display:flex;align-items:center;gap:12px;background:#fbfdff;border:1px solid #e8f0fa;border-radius:20px;padding:12px}.soft-item b{color:#0d2240}.soft-item p{margin:3px 0 0;color:#64748b;font-size:12px}.round-icon{width:42px;height:42px;border-radius:15px;display:grid;place-items:center;background:#eaf2ff;color:#1769ff;font-weight:900}.chev{margin-left:auto;color:#9aa8bb;font-size:26px}.alert-line{display:grid;grid-template-columns:42px 1fr auto;gap:10px;align-items:center;padding:11px 0;border-top:1px solid #eef3fa}.alert-line:first-of-type{border-top:0}.alert-line i{font-style:normal;width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:#f8fafc}.alert-line b{font-size:13px}.alert-line p{margin:2px 0 0;color:#334155;font-size:13px}.alert-line time{font-size:12px;color:#64748b}.crucial b{color:#ef4444}.urgent b{color:#f97316}.normal b{color:#1769ff}.official-hero{background:linear-gradient(135deg,#063145,#0a4f66);color:#fff}.official-hero .neo-top h1,.official-hero .neo-top p{color:#fff}.live-pill{font-size:11px;font-weight:900;background:rgba(34,197,94,.2);border:1px solid rgba(34,197,94,.35);color:#d9ffe6;border-radius:999px;padding:8px 10px}.official-summary{margin-top:18px;display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.official-summary div{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.15);border-radius:16px;text-align:center;padding:11px 5px}.official-summary b{font-size:22px}.official-summary span{display:block;font-size:11px;color:#d6eef8;margin-top:3px}.status-row{display:flex;align-items:center;gap:10px;border-top:1px solid #eef3fa;padding:12px 0;color:#334155;font-weight:800}.status-row b{margin-left:auto;color:#0d2240}.status-dot{width:12px;height:12px;border-radius:50%;display:inline-block;background:#f59e0b}.status-dot.accepted{background:#3b82f6}.status-dot.process{background:#f59e0b}.status-dot.done{background:#22c55e}.card{border-radius:26px}.item{border-radius:22px!important}.nav button.active{background:#fff;color:#063d67;box-shadow:0 9px 22px rgba(8,29,61,.09)}
@media(max-width:360px){.overview-grid,.official-summary{grid-template-columns:repeat(2,1fr)}.neo-clock b{font-size:36px}}

.consent-line{display:flex;align-items:flex-start;gap:10px;margin:10px 0 6px;color:#334155;font-size:12px;line-height:1.35}.consent-line input{width:auto;margin:2px 0 0;accent-color:#1769ff}.consent-line a{color:#1769ff;font-weight:900;text-decoration:none}.legal-page{height:100dvh;max-width:430px;margin:auto;background:#f3f7fd;overflow:auto;padding:22px 18px 40px}.legal-page h1{font-size:28px;margin:10px 0;color:#051832}.legal-page h2{font-size:18px;margin-top:22px}.legal-page p,.legal-page li{font-size:14px;line-height:1.55;color:#334155}.legal-page .brand-line{font-weight:900;color:#1769ff}.legal-page .back-link{display:inline-block;margin:12px 0;color:#1769ff;font-weight:900;text-decoration:none}.settings-list .item{display:flex;justify-content:space-between;gap:10px;align-items:center}.policy-links{display:grid;grid-template-columns:1fr 1fr;gap:10px}.policy-links a{background:#f1f7ff;border:1px solid #cfe0ff;border-radius:16px;padding:12px;text-decoration:none;color:#1769ff;font-weight:900;text-align:center}
/* v3.1.2 final polish: header, bottom nav, official modules, collapsed hierarchy */
.top{align-items:center;justify-content:space-between;padding:calc(var(--safe-top) + 10px) 16px 10px;height:calc(76px + var(--safe-top))}.top-left{display:flex;align-items:center;gap:11px;min-width:0}.top-left>div:last-child{min-width:0}.top-avatar .avatar{width:42px;height:42px;border-radius:16px;border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.14);color:#fff}.top-actions{display:flex;align-items:center;gap:9px}.icon-btn{position:relative;width:42px;height:42px;border:1px solid rgba(255,255,255,.18)!important;background:rgba(255,255,255,.12)!important;border-radius:16px!important;color:#fff!important;padding:0!important;display:grid;place-items:center}.icon-btn em{position:absolute;top:-6px;right:-5px;min-width:18px;height:18px;background:#ff7a00;color:#fff;border-radius:999px;font-size:11px;font-style:normal;font-weight:900;display:grid;place-items:center}.content{height:calc(100dvh - 76px - var(--safe-top));padding-bottom:calc(var(--nav) + var(--safe-bottom) + 42px)}.nav button{font-size:20px;color:#8b96aa}.nav button span{font-size:11px}.nav button.active{color:#0a3b78}.nav button.active span{font-weight:900;color:#0a3b78}.bell{border:0;background:rgba(255,255,255,.85);border-radius:20px;position:relative;width:54px;height:54px;font-size:22px;box-shadow:0 12px 24px rgba(8,29,61,.11)}.bell em{position:absolute;top:5px;right:6px;background:#ff7a00;color:#fff;min-width:21px;height:21px;border-radius:999px;font-size:12px;font-style:normal;display:grid;place-items:center;font-weight:900}.module-card{padding:14px}.module-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.module-btn{border:1px solid #e7eef9;background:#fff;border-radius:18px;min-height:76px;padding:9px 4px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;font-weight:900;color:#193152;box-shadow:0 8px 18px rgba(8,29,61,.05)}.module-btn i{font-style:normal;font-size:22px}.module-btn span{font-size:11px}.module-btn.active{background:linear-gradient(135deg,#05295a,#0b4d8b);color:#fff;border-color:#0b4d8b}.memo{display:inline-block;background:#eef6ff;color:#0854bd;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:900;margin-right:6px}.cmd-item h3{margin:8px 0 6px}.action-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:8px}.action-row .btn{margin:0}.status-dot.crucial{background:#ef4444}.info-form{background:#f7fbff;border:1px solid #e5edf7;border-radius:22px;padding:12px;margin:10px 0}.info-crucial{border-left:4px solid #ef4444}.info-urgent{border-left:4px solid #f59e0b}.info-normal{border-left:4px solid #1769ff}.tree{display:flex;flex-direction:column;gap:9px;margin-top:12px}.tree-node{margin-left:calc(var(--level) * 13px);border:1px solid #e5edf7;border-radius:18px;background:#fff;overflow:hidden;box-shadow:0 8px 16px rgba(8,29,61,.04)}.tree-node summary{list-style:none;display:flex;align-items:center;gap:10px;padding:12px;cursor:pointer}.tree-node summary::-webkit-details-marker{display:none}.tree-caret{width:20px;color:#0b4d8b;font-weight:900}.tree-node[open]>.tree-caret{transform:rotate(90deg)}.tree-node p{margin:2px 0 0;color:#64748b;font-size:12px}.tree-node .avatar{width:36px;height:36px;border-radius:14px}.tree-status{margin-left:auto;background:#f1f7ff;color:#0b4d8b;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:900}.policy-links{display:grid;grid-template-columns:1fr 1fr;gap:8px}.policy-links a{padding:12px;background:#f8fbff;border:1px solid #e5edf7;border-radius:15px;color:#1769ff;text-decoration:none;font-weight:900;text-align:center}.warning{background:#fff7ed;color:#9a3412;border:1px solid #fed7aa;border-radius:14px;padding:10px;margin-top:8px}.safe-note{background:#ecfdf5;color:#166534;border:1px solid #bbf7d0;border-radius:14px;padding:10px;margin-top:8px}.verify-box{border:1px solid #e5edf7;border-radius:16px;padding:10px;background:#fbfdff;margin-top:10px}.verify-box summary{font-weight:900;color:#0b4d8b}.mini-rec{border-top:1px dashed #d8e4f4;padding:9px 0;display:grid;gap:5px}.mini-rec:first-of-type{border-top:0}.mini-rec span{font-weight:800}.mini-rec small{color:#64748b}.file-chip{display:inline-flex;gap:6px;align-items:center;text-decoration:none;background:#eef6ff;color:#0b4d8b;border-radius:999px;padding:7px 10px;margin:4px 4px 4px 0;font-size:12px;font-weight:900}.file-chip small{color:#64748b}.legal-page{max-width:760px;margin:auto;padding:28px 18px 70px;background:#fff;min-height:100dvh}.legal-page h1{color:#051832}.legal-page h2{font-size:20px;margin-top:24px}.back-link{display:inline-block;margin-bottom:12px;color:#1769ff;text-decoration:none;font-weight:900}.brand-line{font-weight:900;color:#0b4d8b}.quick-grid{grid-template-columns:repeat(2,1fr)}@media(max-width:360px){.module-grid{grid-template-columns:repeat(3,1fr)}.overview-grid{grid-template-columns:repeat(2,1fr)}.top b{font-size:16px}.top span{font-size:11px}}
/* v3.1.2 security/final fixes */
.overview-tile,.alert-line,.module-btn,.soft-item{cursor:pointer}.icon-btn em.hidden,.bell em.hidden{display:none!important}.crop-box{background:#f7fbff;border:1px solid #e5edf7;border-radius:20px;padding:12px;margin:10px 0}.crop-preview{width:170px;height:170px;border-radius:32px;overflow:hidden;margin:8px auto 12px;background:#dbeafe;display:grid;place-items:center}.crop-preview img{width:100%;height:100%;object-fit:cover;transition:transform .15s ease}.crop-box label{display:block;font-size:12px;color:#475569;font-weight:800;margin:8px 0}.crop-box input[type=range]{padding:0;margin:6px 0}.upload-box{border:1px dashed #cfe0ff;border-radius:22px;padding:12px;margin:12px 0;background:#fbfdff}.settings-list .item,.mini-rec{word-break:break-word}.alert-line{border-radius:16px;padding:11px}.alert-line:hover{background:#f8fbff}

/* v3.1.5 stable candidate: safe multilingual + chat refresh only; routing untouched */
.lang-select{width:auto!important;min-width:62px;height:42px;margin:0!important;padding:0 8px!important;border-radius:16px!important;background:rgba(255,255,255,.12)!important;color:#fff!important;border:1px solid rgba(255,255,255,.18)!important;font-weight:900;font-size:12px;outline:none}.lang-select option{color:#0f172a;background:#fff}.chat-hero{background:linear-gradient(135deg,#062044,#0a61b8 62%,#00a5d6);color:#fff}.chat-hero .neo-top h1,.chat-hero .neo-top p{color:#fff}.chat-dot{font-size:18px;color:#34d399;text-shadow:0 0 16px rgba(52,211,153,.8)}.chat-search-card{margin-top:-8px}.chat-search-row{display:grid;grid-template-columns:1fr 94px;gap:9px;align-items:center}.chat-search-row input,.chat-search-row .btn{margin:0}.conversation-list{display:flex;flex-direction:column;gap:10px}.conv-card{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #e5edf7;border-radius:22px;background:linear-gradient(180deg,#fff,#f8fbff);box-shadow:0 8px 18px rgba(8,29,61,.06);cursor:pointer}.conv-card.search-result{background:#fff}.conv-avatar-wrap{position:relative;flex:0 0 auto}.conv-avatar-wrap .avatar{width:48px;height:48px;border-radius:18px}.conv-avatar-wrap>span{display:none}.conv-main{min-width:0;flex:1}.conv-main b{display:block;color:#0d2240;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conv-main p{margin:3px 0 0;color:#64748b;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conv-meta{display:flex;flex-direction:column;align-items:flex-end;gap:4px;color:#9aa8bb}.conv-meta small{font-size:11px}.conv-meta span{font-size:22px}.btn.compact{width:auto!important;margin:0;padding:10px 13px!important}.chat-empty{text-align:center;background:#f7fbff;border:1px dashed #cfe0ff;border-radius:22px;padding:24px 14px;color:#64748b}.chat-empty i{display:block;font-size:36px;font-style:normal;margin-bottom:6px}.chat-empty b{display:block;color:#0d2240;margin-bottom:4px}.chat-empty p{margin:0}.chat-window{display:flex;flex-direction:column;gap:10px;min-height:calc(100dvh - 76px - var(--nav) - var(--safe-top) - var(--safe-bottom));}.chat-titlebar{position:sticky;top:0;z-index:3;background:rgba(243,247,253,.96);backdrop-filter:blur(12px);border:1px solid #e5edf7;border-radius:24px;padding:10px;display:flex;align-items:center;gap:8px;box-shadow:0 8px 18px rgba(8,29,61,.06)}.back-pill,.meet-pill{border:0;background:#eef6ff;color:#0b4d8b;border-radius:999px;padding:10px 12px;font-weight:900}.meet-pill{margin-left:auto}.chat-title-person{display:flex;align-items:center;gap:9px;min-width:0;flex:1}.chat-title-person .avatar{width:42px;height:42px;border-radius:16px}.chat-title-person h2{font-size:16px;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-title-person p{margin:2px 0 0;color:#64748b;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pro-chat-list{background:linear-gradient(180deg,#eef6ff,#f8fbff);border:1px solid #e5edf7;border-radius:26px;padding:12px;min-height:260px;max-height:none;overflow:visible}.pro-bubble{position:relative;max-width:84%;border:0!important;box-shadow:0 10px 22px rgba(8,29,61,.08)}.pro-bubble.mine{background:linear-gradient(135deg,#1769ff,#0b55d9);color:#fff;border-bottom-right-radius:7px}.pro-bubble.theirs{background:#fff;color:#0f172a;border-bottom-left-radius:7px}.pro-bubble.mine .file-chip{background:rgba(255,255,255,.18);color:#fff;border-color:rgba(255,255,255,.28)}.pro-bubble.mine small,.pro-bubble.mine .mini-link{color:#dbeafe}.bubble-text{white-space:pre-wrap;word-break:break-word}.bubble-meta{display:flex;justify-content:flex-end}.bubble-actions{margin-top:4px}.pro-compose{position:sticky;bottom:calc(var(--nav) + var(--safe-bottom) + 6px);z-index:4;margin-bottom:0;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);border:1px solid #dfe9f8}.quick-reply-row{display:flex;align-items:center;gap:6px;overflow:auto;padding-bottom:6px}.quick-reply-row span{font-size:12px;font-weight:900;color:#64748b;white-space:nowrap}.quick-reply-row button{white-space:nowrap;border:1px solid #cfe0ff;background:#eef6ff;color:#0b4d8b;border-radius:999px;padding:7px 10px;font-weight:900;font-size:12px}.pro-compose textarea{min-height:66px;margin:6px 0}.attach-label{display:block;border:1px dashed #cfe0ff;border-radius:16px;background:#f8fbff;color:#0b4d8b;font-weight:900;font-size:13px;text-align:center;padding:11px;margin:7px 0;cursor:pointer}.attach-label input{display:none}.send-btn{margin-top:7px!important}.setting-label{display:block;color:#334155;font-weight:900}.setting-label select{margin-top:8px}.settings-card select{width:100%}
@media(max-width:360px){.chat-search-row{grid-template-columns:1fr}.meet-pill{padding:9px 10px;font-size:12px}.back-pill{padding:9px 10px;font-size:12px}.chat-titlebar{gap:6px}.pro-bubble{max-width:90%}}

/* v3.1.6 stability patch: in-app secure attachment preview */
.file-preview-overlay{position:fixed;inset:0;z-index:999;background:rgba(3,16,35,.72);display:flex;align-items:center;justify-content:center;padding:18px;backdrop-filter:blur(7px)}
.file-preview-card{width:min(420px,100%);max-height:88dvh;background:#fff;border-radius:26px;overflow:hidden;box-shadow:0 24px 70px rgba(0,0,0,.35);display:flex;flex-direction:column}
.file-preview-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 15px;border-bottom:1px solid #e5edf7;color:#0d2240}.file-preview-head b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-preview-head button{border:0;background:#eef6ff;color:#0b4d8b;border-radius:999px;width:36px;height:36px;font-weight:900}.file-preview-body{min-height:240px;max-height:58dvh;overflow:auto;background:#f8fbff;display:grid;place-items:center}.file-preview-body img{max-width:100%;height:auto;display:block}.file-preview-body iframe{width:100%;height:58dvh;border:0}.file-preview-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:12px}.file-preview-actions .btn{text-align:center;text-decoration:none;margin:0!important}


/* v3.2.0 RC1 - Communication OS release polish */
.commos-card{background:linear-gradient(180deg,#ffffff,#f7fbff)}
.workspace-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.workspace-grid button{border:1px solid #d9e8ff;background:#fff;border-radius:22px;padding:14px;text-align:left;box-shadow:0 8px 18px rgba(8,29,61,.06)}
.workspace-grid i{font-style:normal;font-size:25px;display:block;margin-bottom:7px}
.workspace-grid b{display:block;color:#0d2240}
.workspace-grid span{display:block;color:#64748b;font-size:12px;line-height:1.35;margin-top:3px}
.no-space-card{text-align:center}
.no-space-icon{width:68px;height:68px;border-radius:24px;background:linear-gradient(135deg,#1769ff,#00c2ff);display:grid;place-items:center;margin:0 auto 12px;font-size:32px;box-shadow:0 15px 32px rgba(23,105,255,.22)}
.meeting-hero{background:linear-gradient(135deg,#29115c,#7c3aed 58%,#00c2ff);color:#fff}
.meeting-hero .neo-top h1,.meeting-hero .neo-top p{color:#fff}
.no-space-card .soft-list{text-align:left;margin:12px 0}
.no-space-card .info-form{text-align:left}
@media(max-width:360px){.workspace-grid{grid-template-columns:1fr}}

/* v3.2.1 RC2 - Google Auth + profile completion */
.google-login-box{margin:12px 0;padding:12px;border:1px solid #dbeafe;background:#f8fbff;border-radius:22px}
.google-btn{background:#fff!important;color:#0f172a!important;border:1px solid #d0d7de!important;box-shadow:0 8px 20px rgba(15,23,42,.07)!important}
.google-btn:before{content:'G';display:inline-grid;place-items:center;margin-right:8px;width:22px;height:22px;border-radius:50%;background:linear-gradient(135deg,#4285f4,#34a853,#fbbc05,#ea4335);color:#fff;font-weight:900}
.google-slot{display:flex;justify-content:center;margin-top:10px;min-height:44px;overflow:hidden}
.google-consent{margin-bottom:8px}
.profile-complete{text-align:left}
.profile-complete .no-space-icon{margin-left:0}
.profile-complete input[readonly]{background:#eef5ff;color:#64748b}


/* v3.2.2 RC3 - Mobile chat bottom composer fix */
.content.chat-mode{
  height:calc(100dvh - var(--header) - var(--safe-top));
  padding:8px 10px 0;
  overflow:hidden;
}
.content.chat-mode .chat-window{
  height:calc(100dvh - var(--header) - var(--safe-top) - var(--nav) - var(--safe-bottom) - 10px);
  min-height:0!important;
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  gap:8px;
}
.content.chat-mode .chat-titlebar{
  position:relative!important;
  top:auto!important;
  z-index:3;
  border-radius:20px;
  padding:8px;
}
.content.chat-mode .pro-chat-list{
  min-height:0!important;
  max-height:none!important;
  height:auto;
  overflow-y:auto!important;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior:contain;
  margin:0!important;
  border-radius:22px;
  padding:10px 10px 12px;
}
.content.chat-mode .pro-compose{
  position:relative!important;
  bottom:auto!important;
  z-index:4;
  margin:0!important;
  padding:8px;
  border-radius:22px;
  background:rgba(255,255,255,.98);
  box-shadow:0 -8px 22px rgba(8,29,61,.08);
}
.content.chat-mode .pro-compose textarea{
  min-height:42px!important;
  max-height:96px!important;
  resize:none;
  overflow-y:auto;
  margin:4px 0!important;
  padding:11px 13px;
  border-radius:16px;
}
.content.chat-mode .quick-reply-row{
  padding-bottom:3px;
}
.content.chat-mode .quick-reply-row span{
  font-size:11px;
}
.content.chat-mode .quick-reply-row button{
  padding:6px 9px;
  font-size:11px;
}
.content.chat-mode .attach-label{
  padding:8px;
  margin:4px 0!important;
  font-size:12px;
  border-radius:14px;
}
.content.chat-mode .send-btn{
  margin:4px 0 0!important;
  padding:12px 14px!important;
}
.content.chat-mode .footer-gap{
  display:none!important;
}
.content.chat-mode .bubble{
  margin-bottom:2px;
}
@supports (height:100svh){
  .content.chat-mode{height:calc(100svh - var(--header) - var(--safe-top));}
  .content.chat-mode .chat-window{height:calc(100svh - var(--header) - var(--safe-top) - var(--nav) - var(--safe-bottom) - 10px);}
}

/* v3.2.3 RC4 - Official dashboard touch filters + report forms */
.official-touch-summary button{
  appearance:none;border:0;background:rgba(255,255,255,.12);color:#fff;border-radius:20px;
  padding:13px 8px;min-width:0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.16);
}
.official-touch-summary button b{display:block;font-size:28px;line-height:1.1}
.official-touch-summary button span{display:block;font-size:12px;opacity:.9}
.dash-filter-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px}
.dash-filter-grid button{
  border:1px solid #dbeafe;background:#fff;border-radius:18px;padding:12px 8px;text-align:center;color:#0f2a44;
  box-shadow:0 8px 18px rgba(15,23,42,.06);
}
.dash-filter-grid button.active{background:#0b4a7e;color:#fff;border-color:#0b4a7e}
.dash-filter-grid i,.dash-filter-grid b,.dash-filter-grid span{display:block}
.dash-filter-grid i{font-style:normal;font-size:22px}.dash-filter-grid b{font-size:20px}.dash-filter-grid span{font-size:11px}
.dash-status-lines .status-row{cursor:pointer}
.report-builder{border:1px solid #dbeafe;border-radius:20px;padding:12px;background:#f8fbff;margin:12px 0}
.report-builder summary,.soft-details summary{font-weight:800;cursor:pointer;margin-bottom:10px}
.report-field-row{display:grid;grid-template-columns:1fr 112px;gap:8px;padding:10px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;margin:8px 0}
.report-field-row .rf-options{grid-column:1/3}
.report-field-row label{font-size:12px;font-weight:700;display:flex;align-items:center;gap:6px}
.report-field-row button{border:0;border-radius:12px;background:#fee2e2;color:#991b1b;font-weight:900}
.report-form-card .action-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.report-form-card .action-row .btn{width:auto;min-width:96px}
.report-fill-form label{display:block;font-weight:800;margin:12px 0 6px;color:#0f2a44}
.report-fill-form input,.report-fill-form textarea,.report-fill-form select{margin-top:6px}
@media(max-width:420px){
  .dash-filter-grid{grid-template-columns:repeat(2,1fr)}
  .report-field-row{grid-template-columns:1fr}
  .report-field-row .rf-options{grid-column:1}
}

/* v3.2.4 RC5 - live chat + official workspace */
.live-pill.live-on{background:#dcfce7!important;color:#166534!important;box-shadow:0 0 0 4px rgba(34,197,94,.14)}
.typing-line{min-height:20px;font-size:12px;color:#64748b;padding:0 12px 2px;font-weight:700}
.live-activity-card{border:1px solid #dbeafe;background:linear-gradient(180deg,#fff,#f8fbff)}
.live-row{padding:10px 0;border-bottom:1px solid #e5eefb}
.live-row:last-child{border-bottom:0}
.live-row b,.live-row span{display:block}
.live-row span{font-size:12px;color:#64748b;margin-top:2px;text-transform:capitalize}
.instruction-thread h3{margin:8px 0 6px}
.thread-status-box{margin-top:12px}
.thread-list{display:grid;gap:10px}
.thread-comment{padding:12px;border:1px solid #e2e8f0;border-radius:18px;background:#fff}
.thread-comment p{white-space:pre-wrap;margin:8px 0}
.thread-comment small{color:#64748b}
.bubble-meta small{letter-spacing:.1px}

/* v3.2.5 RC6 - Official Channels */
.channel-grid{display:grid;gap:12px;margin-top:12px}
.channel-card{
  width:100%;text-align:left;border:1px solid #dbeafe;background:#fff;border-radius:22px;padding:14px;
  box-shadow:0 10px 24px rgba(15,23,42,.07);color:#0f2a44;
}
.channel-card i{font-style:normal;font-size:28px;display:inline-block;margin-right:8px}
.channel-card b{font-size:17px}
.channel-card span,.channel-card small{display:block;color:#64748b;margin-top:4px}
.channel-card.announcement{border-color:#fde68a;background:#fffbeb}
.channel-card.urgent{border-color:#fecaca;background:#fff1f2}
.pinned-box{margin:10px 0;padding:10px;border-radius:16px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;font-weight:800}
.channel-create{border:1px solid #dbeafe;border-radius:18px;background:#f8fbff;padding:12px;margin:12px 0}
.channel-create summary{font-weight:900;cursor:pointer}
.channel-msg-list{display:grid;gap:10px;margin:12px 0;max-height:56vh;overflow:auto}
.channel-msg{padding:12px;border:1px solid #e2e8f0;border-radius:18px;background:#fff}
.channel-msg.urgent{border-color:#fecaca;background:#fff1f2}
.channel-msg p{white-space:pre-wrap;margin:8px 0}
.channel-compose{position:sticky;bottom:calc(var(--nav) + var(--safe-bottom) + 8px);background:#fff;border:1px solid #dbeafe;border-radius:22px;padding:10px;box-shadow:0 -8px 22px rgba(8,29,61,.08)}
.channel-compose textarea{min-height:76px}
