/* A shared working surface for touch, keyboard and large displays. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body #app>main{width:100%;max-width:1800px;margin-inline:auto!important;box-sizing:border-box;padding-inline:clamp(14px,3vw,56px)!important;padding-bottom:100px}
#screen,.panel,.card-pad,.studio-grid>*,.workflow-board>*,.chat-layout>*{min-width:0}
#screen{overflow-wrap:anywhere}
body #app>main>header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px}
.header-actions,.section-head,.context-bar,.split{flex-wrap:wrap}
.header-actions{display:flex;gap:8px}
img,video,canvas{max-width:100%}
input,select,textarea{max-width:100%;min-width:0;box-sizing:border-box}
button,a,summary,input,select,textarea{touch-action:manipulation}
button,select,summary{min-height:44px}
button{white-space:normal}
button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #ffb9a7!important;outline-offset:4px;box-shadow:0 0 0 6px #180e0f!important}
:focus-visible{scroll-margin-block:80px}
body .workflow-board{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))!important;gap:18px}
.workflow-task strong{display:block;line-height:1.7;font-size:1.05rem}
.task-card-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.task-card-actions button{padding:10px 6px;font-size:14px;min-width:0}
.task-card-actions [data-action=trashTask]{color:#ffb5ab;border-color:#894b44}
body dialog{box-sizing:border-box;width:min(800px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow:auto;overscroll-behavior:contain}
.task-details-dialog .content-text{white-space:pre-wrap}
body .table-wrap{max-width:100%;overflow:auto;overscroll-behavior-inline:contain}
body #backToTop{right:max(12px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));width:44px;height:44px;opacity:.85}
@media(min-width:700px) and (max-width:1100px){body #app .studio-grid,body #app .studio-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))!important}body #app .workflow-board{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:699px){body #app .studio-grid,body #app .studio-grid.three,body #app .workflow-board{grid-template-columns:1fr!important}.context-bar label{flex-basis:100%}.context-bar select{width:100%}.row-item{flex-wrap:wrap}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.header-actions{width:100%}.header-actions button{flex:1}.card-pad{padding:16px}.chat-layout{grid-template-columns:1fr}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}body #app .sidebar .wordmark{max-width:calc(100% - 100px);overflow-wrap:anywhere}body #app .sidebar .wordmark b{font-size:clamp(16px,5vw,24px)!important}.task-card-actions button{font-size:14px}}
@media(min-width:1600px){body{font-size:18px}body #app>main{max-width:2200px;padding-inline:4vw!important}body #app>main>header h2{font-size:36px}body #app .sidebar #nav{grid-template-columns:repeat(5,minmax(0,1fr))!important}button,input,select,textarea,summary{font-size:18px;min-height:52px}.actions button,.task-card-actions button{font-size:16px}.workflow-task strong{font-size:22px}.workflow-task p,.workflow-task small,.row-item small,.context-bar label{font-size:16px}.card-pad{padding:24px}.section-head h3,.panel-head h3{font-size:24px}}
@media(min-width:2400px){body{font-size:24px}body #app>main{max-width:3000px}body #app>main>header h2{font-size:48px}button,input,select,textarea,summary,.actions button,.task-card-actions button{font-size:24px;min-height:64px}.workflow-task strong{font-size:30px}.workflow-task p,.workflow-task small,.row-item small,.context-bar label,.sidebar #nav button{font-size:22px!important}.section-head h3,.panel-head h3{font-size:32px}.workflow-task{padding:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
#emergencyEdges{position:fixed;inset:0;z-index:1200;pointer-events:none;border:4px solid var(--alarm-edge);box-shadow:inset 0 0 32px 10px var(--alarm-glow);--alarm-edge:#ff4558;--alarm-glow:#ed173c99;animation:edge-alarm 2s ease-in-out infinite}
#emergencyEdges[data-level=working]{--alarm-edge:#ffbd32;--alarm-glow:#ff960080;animation-duration:2.8s}
#emergencyEdges[data-level=resolved]{--alarm-edge:#43e79a;--alarm-glow:#21cd8280;animation:edge-clear 6s ease-out both}
@keyframes edge-alarm{0%,100%{opacity:.4}50%{opacity:.95}}
@keyframes edge-clear{0%,70%{opacity:1}100%{opacity:0}}
.emergency-countdown{font-variant-numeric:tabular-nums;font-size:1rem;line-height:1.6;font-weight:700;padding:8px 12px;border:1px solid currentColor;border-radius:8px;white-space:nowrap;margin-block:8px;color:#fff1ce;background:#0004}
.emergency-countdown.expired{color:#ffc1c7}
#countdownFields{margin-block:18px;border:1px solid #775049;border-radius:12px;padding:16px}#countdownFields[hidden],#countdownAmount[hidden],#updateCountdown[hidden]{display:none}#countdownFields small{display:block;margin:10px 0;font-size:14px}#countdownFields input{width:100%}
@media(max-width:699px){#sosBanner .emergency-countdown{flex-basis:100%;text-align:center}#emergencyEdges{border-width:3px;box-shadow:inset 0 0 22px 5px var(--alarm-glow)}}
@media(prefers-reduced-motion:reduce){#emergencyEdges{animation:none;opacity:.65}#emergencyEdges[data-level=resolved]{opacity:1}}
.private-files{margin-block:24px}.private-file-filters{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin-top:20px}.private-file-filters label{display:grid;gap:6px;flex:1 1 180px;min-width:0}.private-file-filters input,.private-file-filters select{width:100%}.file-upload-button,.file-download{display:inline-flex;align-items:center;justify-content:center;border:1px solid #ba6656;border-radius:10px;background:#8d302a;color:white;padding:10px 16px;min-height:44px;cursor:pointer;text-decoration:none;box-sizing:border-box}.file-upload-button{position:relative;overflow:hidden}.file-upload-button input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}.file-upload-button:focus-within{outline:3px solid #ffb9a7;outline-offset:3px}.private-file b{overflow-wrap:anywhere}#officeFileEditor label{display:grid;gap:8px;margin-block:14px}#officeFileEditor input,#officeFileEditor select{width:100%}
#presenceDirectory{background:linear-gradient(135deg,#251719,#100e10)!important;border:1px solid #85483f!important;color:#f8d4cc;border-radius:12px;padding:10px 14px;box-shadow:0 4px 20px #0003}#presenceDirectory summary{color:#f4c3b9!important;font-family:inherit!important;font-size:16px!important;font-weight:700;min-height:24px;display:flex;align-items:center;gap:10px;list-style:none}#presenceDirectory summary::-webkit-details-marker{display:none}#presenceDirectory summary::before{content:'＋';color:#de8b7b}#presenceDirectory[open] summary::before{content:'−'}#presenceDirectory[open]{padding:16px}#presenceTeam .presence-person{background:#151113;border:1px solid #51312e;border-radius:10px;padding:12px;gap:10px}#presenceTeam .presence-person small{color:#e7b5a9}#presenceDirectory>small{color:#d7b2aa!important}#editorFields label[hidden]{display:none!important}
@font-face{font-family:VNLENSNeo;src:url('/fonts/NeoSansArabic.woff') format('woff');font-style:normal;font-weight:400;font-display:swap}
html,body,body *,body *::before,body *::after{font-family:VNLENSNeo,Arial,sans-serif!important;letter-spacing:normal!important}

.game-categories{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.game-categories [aria-pressed="true"]{background:#51201b;border-color:#d76758;color:#fff}.game-cards>[hidden]{display:none!important}.bonus-board{display:grid!important;grid-template-columns:repeat(var(--bonus-cols),minmax(0,1fr))!important;gap:6px;max-width:560px!important;direction:ltr;margin:24px auto}.bonus-board button{min-width:0;min-height:42px;padding:8px;font-size:clamp(16px,3vw,28px)}.bonus-board .island{border:2px solid #b9594b;border-radius:50%;padding:12px;text-align:center}.bonus-board .selected,#gameControls .selected{background:#74392b;border-color:#ffe080}.bonus-board .legal{border-color:#75dfb2}.bonus-board .danger{background:#351b1b}.bonus-board input{width:100%;min-width:0}.bonus-board p,.bonus-board h3{overflow-wrap:anywhere}.row-item>.actions{display:flex;flex-wrap:wrap;gap:8px}html[dir="ltr"] body{text-align:left}html[dir="ltr"] .item-main{text-align:left}.language-switch{margin:8px;min-width:100px}

#securityLock{position:fixed;inset:0;z-index:9999;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:24px;border:8px solid #ff354c;box-shadow:inset 0 0 90px #d5203b88;background:#13090c;color:#ff586d}#securityLock h1{font-size:clamp(32px,8vw,90px)}#securityBinary{max-width:100%;overflow:hidden;font-size:clamp(10px,2vw,18px);opacity:.55;letter-spacing:2px!important}#securityCountdown{font-size:50px}.security-blank{background:#080808!important}.security-blank>*{display:none!important}.security-meta{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px}
.access-request{min-height:100dvh;padding:32px 16px;background:radial-gradient(ellipse at top,#581621,#090809 65%);color:#ffe8e5}.access-request .auth-card{margin:auto;max-width:640px}.access-request fieldset{border:1px solid #71372e;border-radius:12px;padding:20px}.access-request fieldset[hidden]{display:none!important}.access-request input,.access-request textarea{width:100%;margin:8px 0 20px}.access-request .access-consent{display:flex;align-items:flex-start;gap:12px;margin:20px 0}.access-request .access-consent input{width:20px;min-width:20px;margin:6px 0}.access-request [hidden]{display:none!important}

#securityLock.recovery-terminal{display:block;overflow-y:auto;background:#030605;color:#dcebe2;border:0;border-top:3px solid #bc433f;box-shadow:none;text-align:start;padding:clamp(20px,5vw,64px) 18px;min-height:100dvh}
.recovery-shell{max-width:820px;margin:0 auto}.recovery-terminal .terminal-chrome{color:#e5ba53;font:14px monospace;letter-spacing:.12em}.recovery-terminal .terminal-status{font:14px monospace;color:#ff796f;margin-top:30px}
#securityLock.recovery-terminal h1{font-size:clamp(24px,5vw,42px);margin:20px 0}#securityLock.recovery-terminal pre{font:clamp(12px,2.8vw,17px)/1.65 monospace;color:#519a6c;opacity:1;letter-spacing:0!important;white-space:pre;overflow:hidden;border-inline-start:2px solid #254f32;padding:16px;margin:24px 0}
.recovery-terminal form{max-width:420px}.recovery-terminal input{display:block;width:100%;font-size:24px;letter-spacing:.3em;margin-top:12px;background:#0c1510;color:#effaf3;border:1px solid #60896e;border-radius:5px;padding:14px}.recovery-terminal button{margin:12px 0;padding:12px 20px}.recovery-terminal #recoveryHelp{font-size:14px;color:#a8b8ae}.recovery-terminal #recoveryError{color:#ff948a;min-height:1.5em}.recovery-terminal [hidden]{display:none!important}#recoverySuccess{padding:24px;background:#072516;color:#87f2ac;border:2px solid #e8c85d;border-radius:8px}#recoverySuccess strong{font-size:24px}.access-terms{font-size:14px;line-height:1.9;white-space:pre-wrap;border:1px solid #77534e;padding:16px;border-radius:8px;max-height:420px;overflow:auto}.access-terms:focus{outline:2px solid #efc86b}

/* Recovery remains the first locked screen, using the VNLENS red palette. */
#securityLock.recovery-terminal{background:radial-gradient(ellipse at top,#421513 0,#1c0909 48%,#0c0505 100%);color:#ffd7cf;border-top:3px solid #bd4439}
.recovery-terminal .terminal-chrome{color:#f1a295}.recovery-terminal .terminal-status{color:#ff7669}.recovery-terminal .recovery-step{font-size:14px;color:#e8a99e}
#securityLock.recovery-terminal pre{color:#ed7d6b;border-color:#9b3b32;background:#21090966}
.recovery-terminal input{color:#ffe3df;background:#270c0b;border-color:#b85043}.recovery-terminal #recoveryHelp{color:#dfada5}
.recovery-terminal button{color:#ffe0d8;background:#962f27;border-color:#c45d4f}.recovery-terminal #requestAccessLink{background:#32100d;color:#f3b4a5}.recovery-terminal button:focus-visible,.recovery-terminal input:focus-visible{outline:2px solid #ffb3a0;outline-offset:3px}
.sidebar .wordmark .account-identity{display:inline-flex!important;flex-direction:row;align-items:center;flex-wrap:nowrap;gap:9px;max-width:100%;font:inherit;letter-spacing:normal;margin:0}.account-identity #accountName{min-width:0;overflow-wrap:anywhere}.account-identity #ownPresence{flex:0 0 11px;margin:0!important}.presence-person b{display:inline-flex;align-items:center;gap:6px;min-width:0}.presence-dot{flex-shrink:0}
.access-request fieldset>label:not(.access-consent),.mail-connect-form>label{display:flex;flex-direction:column;align-items:stretch;gap:8px;font-size:16px}.access-request fieldset>label input,.access-request fieldset>label textarea{box-sizing:border-box;min-width:0}.mail-connect-dialog{border:1px solid #a6473c;border-radius:14px;max-height:90dvh;overflow:auto;padding:24px;color:#ffe1d9}.mail-connect-dialog::backdrop{background:#000b}.mail-connect-form{display:grid;gap:18px}.mail-connect-form input{width:100%;box-sizing:border-box}.mail-connect-form p{margin:0;font-size:14px}.mail-connect-form a{color:#f1a295}.mail-connect-form [hidden]{display:none!important}

body #app .sidebar .wordmark .account-identity{display:inline-flex!important;visibility:visible!important;opacity:1!important;color:#f2e7e3;align-items:center;gap:9px;font-size:24px!important}body #app .sidebar .wordmark #accountName{display:block!important;color:inherit}.login-audit-table textarea{min-height:70px;width:240px}.login-audit-table td{vertical-align:top}.login-audit-table .audit-ok{color:#7fe1a3}.login-audit-table .audit-fail{color:#ff998b}.login-audit-table small{display:block}.audit-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:16px 0}.recovery-settings label,#editUserDialog label{display:flex;flex-direction:column;gap:8px;margin:12px 0}

.mail-free-connect{display:grid;gap:14px;padding:18px;border:1px solid #94463b;border-radius:10px;margin:18px 0}.mail-free-connect a{color:#f0b3a5}.mail-connect-dialog>details>summary{cursor:pointer;font-size:14px;padding:16px 0}
