/* LedExpert Workspace 5.0 · visual layer Alpha 1.
   Preserve backend, role visibility, forms, PWA and API contracts. */
html.ws5{color-scheme:dark;
 --bg:#090a14;--card:#121321;--text:#f3f1ff;--muted:#a2a2bd;
 --line:#2a293f;--nav:#0b0b18;--nav2:#221b43;--accent:#7958f1;
 --soft:#191a2b;--danger:#ff8190;--ok:#56d7a4;--warn:#facb81;
 --shadow:0 16px 46px rgba(0,0,0,.17);
 --ws5-glow:rgba(127,88,246,.22);
}
html.ws5 body{background:var(--bg);color:var(--text);font-family:Inter,Manrope,system-ui,-apple-system,"Segoe UI",sans-serif}
html.ws5 :is(button,input,select,textarea){font-family:inherit}
html.ws5 :is(button,a,input,select,textarea):focus-visible{outline:2px solid #b69dff;outline-offset:3px}
html.ws5 :is(input,select,textarea){color:var(--text);background:#181928;border:1px solid #34324b;border-radius:11px}
html.ws5 :is(input,textarea)::placeholder{color:#777895}
html.ws5 select option{background:#181928;color:#f3f1ff}
html.ws5 .app{grid-template-columns:250px minmax(0,1fr);min-height:100dvh;background:var(--bg)}
html.ws5 .sidebar{background:radial-gradient(ellipse at 10% 0%,#21164e 0%,transparent 38%),linear-gradient(180deg,#0e0c1d,#0a0a14 67%);border-right:1px solid #211f35;box-shadow:none;padding:23px 13px 15px}
html.ws5 .sidebar .brand{border-bottom:1px solid #26223c;font-size:23px;font-weight:850;letter-spacing:-.06em;padding:12px 9px 19px;margin:0 3px 8px;line-height:1.15}
html.ws5 .sidebar .brand::before{content:"✦";font-size:29px;display:inline-block;width:30px;height:32px;line-height:30px;background:none;border-radius:0;box-shadow:none;color:#aa91ff;margin-right:7px;text-shadow:0 0 22px #7b5af880;vertical-align:middle}
html.ws5 .sidebar .brand small{font-size:9px;text-transform:uppercase;letter-spacing:.105em;color:#aaa4d3;margin:5px 0 0 39px}
html.ws5 .sidebar .nav{scrollbar-color:#36314f transparent;padding:4px 3px 16px}
html.ws5 .sidebar .nav .nav-section-label{color:#777397;font-size:10px;letter-spacing:.12em;margin-top:18px}
html.ws5 .sidebar .nav button{color:#acabc7;font-size:13px;border-radius:12px;min-height:42px;padding:10px 12px;transition:background .16s,color .16s}
html.ws5 .sidebar .nav button:hover{transform:none;background:#221c39;border-color:#392d5c;color:#fff}
html.ws5 .sidebar .nav button.active{transform:none;background:linear-gradient(105deg,#6042d7,#312754);border:1px solid #7760e3;color:#fff;box-shadow:0 6px 20px #2e1d633b,inset 3px 0 #af9eff}
html.ws5 .sidebar .sidebar-foot{border-top-color:#27233f;background:transparent}
html.ws5 .sidebar .user-mini{background:#151323;border:1px solid #2f294c;border-radius:16px}
html.ws5 .sidebar .user-mini b{color:#fff}
html.ws5 .sidebar .user-mini span{color:#aba4c9}
html.ws5 .main{min-width:0;max-width:none;padding:23px clamp(15px,2.2vw,34px) 46px;background:radial-gradient(ellipse at 68% 0%,rgba(62,38,129,.08),transparent 47%),var(--bg)}
html.ws5 .topbar{position:relative;display:flex;align-items:center;min-height:54px;padding:0 0 16px;border-bottom:1px solid #232238;margin-bottom:20px;gap:16px}
html.ws5 .topbar .title{flex:1;min-width:110px}
html.ws5 .title h1{font-weight:800;font-size:23px;letter-spacing:-.045em;color:#f7f5ff}
html.ws5 .title p{color:#9796b3;font-size:12px}
html.ws5 .ws5-search{position:relative;display:flex;align-items:center;flex:0 1 360px;min-width:120px;max-width:360px}
html.ws5 .ws5-search svg{position:absolute;left:14px;width:18px;height:18px;fill:none;stroke:#a196c4;stroke-width:1.7;pointer-events:none}
html.ws5 .ws5-search input{width:100%;padding:12px 12px 12px 41px;background:#111222;border:1px solid #302b49;border-radius:13px;font-size:12px;min-height:44px;outline:0}
html.ws5 .ws5-search input:focus{border-color:#8465f0;box-shadow:0 0 0 3px #7759e322}
html.ws5 .top-actions{gap:7px}
html.ws5 .le-header-clock{background:#141426;border:1px solid #302d49;border-radius:12px;padding:5px 12px;color:#fff}
html.ws5 .le-header-date{color:#a7a2c8}
html.ws5 .btn,html.ws5 .icon-btn{border-radius:11px;font-weight:740;transition:filter .15s,box-shadow .15s}
html.ws5 .btn:hover,html.ws5 .icon-btn:hover{filter:brightness(1.10)}
html.ws5 .btn.primary{color:#fff;background:linear-gradient(120deg,#7c5bf1,#6048d9);box-shadow:0 5px 14px #6846e82a}
html.ws5 .btn.secondary{background:#1b1a2e;color:#d2cce9;border:1px solid #34304c}
html.ws5 .btn.danger{background:#3b202f;color:#ff9cab}
html.ws5 .icon-btn{background:#1b1a2e;color:#d5cee9;border:1px solid #34304c}
html.ws5 .le-it-top-button{background:#191729;color:#d9d1f1;border:1px solid #383152;border-radius:11px}
html.ws5 .workspace-bell-button{background:#211b37;color:#dccdff;border:1px solid #48396e}
html.ws5 .workspace-bell-tray{background:#191828;color:#efecfa;border:1px solid #37314f;box-shadow:0 25px 80px #0505129e}
html.ws5 .card{background:linear-gradient(155deg,#151524,#11131f 86%);border:1px solid #2c293f;box-shadow:0 9px 30px rgba(0,0,0,.13);border-radius:18px;color:var(--text)}
html.ws5 .card h2{color:#f8f6ff;letter-spacing:-.025em}
html.ws5 .section-head{margin-bottom:17px}
html.ws5 .section-head h2{font-size:17px;font-weight:760}
html.ws5 .muted,html.ws5 .person-info span{color:#aaa7c0}
html.ws5 .stat .label{color:#b4b0d0}
html.ws5 #panel-home .stats{gap:13px;margin-bottom:4px}
html.ws5 #panel-home .stats > .stat{position:relative;background:linear-gradient(145deg,#181629,#121421)!important;border:1px solid #302b4b!important;box-shadow:none!important;min-height:110px;padding:20px}
html.ws5 #panel-home .stats > .stat::before{content:"";position:absolute;inset:auto 16px 0;height:1px;background:linear-gradient(90deg,transparent,#7153c566,transparent);pointer-events:none}
html.ws5 #panel-home .stats > .stat::after{background:#2b234c!important;color:#aa92ff!important;border-radius:12px;box-shadow:none!important}
html.ws5 #panel-home .stats > .stat .label{color:#a8a2c2!important;font-size:12px;font-weight:650}
html.ws5 #panel-home .stats > .stat .value{color:#f7f5ff!important;font-size:29px}
html.ws5 #panel-home .stats > .stat[data-metric="overdue"][data-active="yes"] .value{color:#ff97a9!important}
html.ws5 #panel-home .stats > .stat[data-metric="unread"][data-active="yes"] .value{color:#8ce6c4!important}
html.ws5 .grid2{gap:16px}
html.ws5 .column{background:#1a192b;border:1px solid #27263b}
html.ws5 .column-title{color:#dad5ef}
html.ws5 .task{background:#151626;border:1px solid #302d49;color:#f3f1ff}
html.ws5 .task:hover{box-shadow:0 8px 22px #06061255;border-color:#7b5af1}
html.ws5 .task p,html.ws5 .task-meta{color:#aeabc4}
html.ws5 .task-colored{background:linear-gradient(115deg,color-mix(in srgb,var(--task-tone) 13%,#141523),#141523 86%)!important;border-left:4px solid var(--task-tone);color:#f4f3ff}
html.ws5 .task-progress-track{background:#343148}
html.ws5 .task-status{color:#f6f2ff!important;background:#35314b!important}
html.ws5 .task-status-done{background:#193c34!important;color:#9decce!important}
html.ws5 .priority{background:#252338;color:#d6cee9}
html.ws5 .priority.high,html.ws5 .priority.urgent{background:#3e2634;color:#ffb6c0}
html.ws5 .priority.low{background:#193b33;color:#9ae5c4}
html.ws5 .project{border-bottom-color:#2a283e}
html.ws5 .progress,html.ws5 .bar{background:#302d48}
html.ws5 .progress i,html.ws5 .bar i{background:linear-gradient(90deg,#795af2,#b69aff)}
html.ws5 .avatar{background:#2d244f;color:#dbcaff;border-radius:13px}
html.ws5 .person,.ws5 .integration{border-color:#2c293f}
html.ws5 .tag{background:#302a49;color:#e6defd}
html.ws5 .tag.ok{background:#194139;color:#84edc5}
html.ws5 .list-item,html.ws5 .event{background:#191827;border-color:#2d2944}
html.ws5 .list-item p{color:#a8a6c2}
html.ws5 .toolbar input,html.ws5 .toolbar select{background:#191827;color:#f6f2ff;border:1px solid #3a3351}
html.ws5 .table th{color:#b6afd0}
html.ws5 .table td,html.ws5 .table th{border-bottom-color:#302c42}
html.ws5 .table tr:hover td{background:#1d1b30}
html.ws5 .task-assignee-cell,html.ws5 .task-progress-editor small{color:#d1cde2}
html.ws5 .notice{background:#201b33;border-left:3px solid #9473fa;color:#e3dbfa}
html.ws5 .empty{color:#a9a4bf}
html.ws5 .delivery-livebar{background:#191927;border-color:#342e48}
html.ws5 .delivery-table-wrap{background:#131320;border-color:#38324f}
html.ws5 .delivery-table th{background:#212037;color:#c5beda;border-color:#35314b}
html.ws5 .delivery-table td{border-color:#302b42}
html.ws5 .delivery-table .delivery-cell{color:#f6f2ff;background:#191827}
html.ws5 .delivery-table .delivery-cell:focus{background:#2a2444;box-shadow:inset 0 0 0 2px #9a77ff}
html.ws5 .delivery-table .delivery-cell:disabled{background:#181727;color:#aaa5bd}
html.ws5 .delivery-actions select{background:#1b192d;color:#f6f3ff;border-color:#3d3357}
html.ws5 .task-member-picker,html.ws5 .task-status-history{background:#181729;border-color:#342e48}
html.ws5 .task-member-option,html.ws5 .task-history-entry{background:#242037;border-color:#3d3358;color:#f5f1ff}
html.ws5 .task-member-option:has(input:checked){background:#383057;border-color:#a08af3}
html.ws5 .task-history-entry p,html.ws5 .task-member-option small{color:#c3bbd4}
html.ws5 .modal{background:#161524;color:#f5f2ff;border:1px solid #39324f}
html.ws5 .modal .field label{color:#c4bfdf}
html.ws5 .modal .field :is(input,select,textarea){background:#222032;color:#fff;border-color:#413a5a}
html.ws5 .modal-actions{background:transparent}
html.ws5 .messenger-shell{background:#10111e}
html.ws5 #panel-messenger .messenger-shell{background:#11111f;border-color:#302b48;box-shadow:0 14px 35px #0003}
html.ws5 .messenger-chat{background:#191829;border-color:#302b45;color:#f5f1ff}
html.ws5 .messenger-chat:hover,html.ws5 .messenger-chat.active{background:#322852;border-color:#8c69ef}
html.ws5 .messenger-message{background:#252238;color:#e9e6f8}
html.ws5 .messenger-message.own{background:linear-gradient(120deg,#6b4ed0,#4e3ca8);color:#fff}
html.ws5 .messenger-emoji-choice{background:#242038;color:#fff}
html.ws5 .messenger-group-picker{border-color:#3d3456}
html.ws5 .messenger-group-person{border-color:#342d48}
html.ws5 .video-archive-card{background:#191827;border-color:#342d46}
html.ws5 .video-archive-controls label{color:#c8c0dc}
html.ws5 .video-archive-controls :is(input,select){background:#211e32;color:#f4f1ff;border-color:#3d3651}
html.ws5 .video-archive-item.selected{background:#403167;color:#fff;outline-color:#a388ff}
html.ws5 .workspace-bell-count{background:#e879a1;color:#150d1a}
html.ws5 .mobile-bottom-nav button.active{color:#e9dfff;background:#35285d}
html.ws5 .toast{background:#211a3a;color:#fff;border-left-color:#9579ff}
html.ws5 .ws5-welcome{position:relative;isolation:isolate;overflow:hidden;min-height:216px;border:1px solid #332650;border-radius:20px;padding:27px 30px;margin-bottom:18px;display:flex;align-items:center;background:radial-gradient(ellipse at 76% 65%,#3e2779c5,transparent 46%),linear-gradient(119deg,#11101d 0%,#1a1036 64%,#110e25 100%)}
html.ws5 .ws5-welcome:before{content:"";position:absolute;inset:-45% -12% auto 45%;height:175%;transform:rotate(-27deg);background:repeating-linear-gradient(90deg,#6b4be900 0 31px,#9e74fa09 32px 35px);z-index:-1}
html.ws5 .ws5-welcome-content{position:relative;z-index:1;max-width:660px}
html.ws5 .ws5-eyebrow{display:block;color:#b8a3fa;font-size:10px;font-weight:800;letter-spacing:.17em;margin-bottom:14px}
html.ws5 .ws5-welcome h2{color:#fff;font-size:clamp(23px,2.5vw,35px);font-weight:820;letter-spacing:-.052em;line-height:1.18;margin:0}
html.ws5 .ws5-welcome h2 span{color:#b7a0ff}
html.ws5 .ws5-welcome p{font-size:13px;color:#bfb5d7;margin:13px 0 20px;line-height:1.55}
html.ws5 .ws5-actions{display:flex;flex-wrap:wrap;gap:9px}
html.ws5 .ws5-actions .btn{min-height:40px}
html.ws5 .ws5-orbit{position:absolute;right:3%;top:50%;width:210px;height:210px;border:2px solid #8b63ed60;border-radius:54% 46% 64% 36%;transform:translateY(-48%) rotate(31deg);background:radial-gradient(circle at 34% 36%,#a783ffbb,#3b2168 40%,#0c0b1b 68%);box-shadow:0 0 60px #8753f14a,inset 12px 15px 22px #c59dff20;z-index:0}
html.ws5 .ws5-orbit:before{content:"";position:absolute;inset:17px -13px;border:12px solid #9d79fb31;border-radius:48% 52% 38% 62%;transform:rotate(-47deg)}
html.ws5 .ws5-orbit:after{content:"5.0";position:absolute;inset:0;display:grid;place-items:center;color:#efddff;font-size:52px;font-weight:800;letter-spacing:-.09em;transform:rotate(-31deg);text-shadow:0 0 34px #ba92fe77}
html.ws5 .login-screen-modern{background:#090a14;color:#f4f1ff}
html.ws5 .login-screen-modern .login-stage{background:#10101f;border:1px solid #272441;box-shadow:0 35px 85px #0006}
html.ws5 .login-screen-modern .login-auth-panel{background:#121321;color:#f4f1ff}
html.ws5 .login-screen-modern .login-brandline strong{color:#fff}
html.ws5 .login-screen-modern .login-brandline small{color:#b4a4e6}
html.ws5 .login-screen-modern .login-brand-mark,html.ws5 .login-screen-modern .login-visual-symbol{color:#b49dff;background:#231a3f}
html.ws5 .login-screen-modern h1{color:#f8f6ff}
html.ws5 .login-screen-modern .login-overline{color:#a48cec}
html.ws5 .login-screen-modern .login-subtitle{color:#b1abc7}
html.ws5 .login-screen-modern .login-box{background:transparent;border:none;box-shadow:none}
html.ws5 .login-screen-modern .login-box .field label{color:#cfc8e4}
html.ws5 .login-screen-modern .login-box .field>input,html.ws5 .login-screen-modern .login-password-wrap input{background:#1c1b2e;color:#fff;border:1px solid #40375b}
html.ws5 .login-screen-modern .login-password-toggle{background:#262239;color:#c6b8f4}
html.ws5 .login-screen-modern .login-remember{color:#bcb5d1}
html.ws5 .login-screen-modern .login-forgot{color:#b29aff}
html.ws5 .login-screen-modern .login-submit{background:linear-gradient(120deg,#886afa,#6247d8)}
html.ws5 .login-screen-modern .login-panel-footer,html.ws5 .login-screen-modern .login-auth-method>div{color:#8d86ab}
html.ws5 .login-screen-modern .login-visual-panel{background:linear-gradient(155deg,#20113d,#100e22)}
html.ws5 .login-screen-modern .login-visual-content p{color:#beb4d8}
html.ws5 .login-screen-modern .login-night-sky{opacity:.55}
@media(min-width:1025px){html.ws5 .sidebar{height:100dvh;overflow:hidden}html.ws5 .sidebar .nav{flex:1;min-height:0}html.ws5 .main{max-width:100%;overflow:hidden}}
@media(max-width:1300px){html.ws5 .ws5-orbit{right:-50px;opacity:.55}html.ws5 .ws5-welcome-content{max-width:80%}}
@media(max-width:1024px){
 html.ws5 .app{display:block;grid-template-columns:1fr}
 html.ws5 .main{padding:17px 17px 100px}
 html.ws5 .topbar{gap:8px}
 html.ws5 .ws5-search{display:none}
 html.ws5 .ws5-orbit{opacity:.35}
}
@media(max-width:768px){
 html.ws5 .main{padding:0 12px calc(78px + env(safe-area-inset-bottom))}
 html.ws5 .sidebar{background:linear-gradient(145deg,#17102b,#0b0b18 70%)}
 html.ws5 .sidebar .sidebar-foot{background:#0d0b1b!important;border-color:#302849!important}
 html.ws5 .topbar{position:sticky;top:0;z-index:35;margin:0 -12px 13px;padding:calc(9px + env(safe-area-inset-top)) 12px 10px;background:#111020ed;border-bottom:1px solid #2f2a47;backdrop-filter:blur(15px);min-height:0}
 html.ws5 .title h1{font-size:19px}
 html.ws5 .top-actions{gap:5px}
 html.ws5 .top-actions #leItRequestButton,html.ws5 .top-actions #pushEnableBtn,html.ws5 .top-actions #refreshBtn{display:none}
 html.ws5 .top-actions #quickTaskBtn{display:grid;place-items:center}
 html.ws5 .le-header-clock{display:none}
 html.ws5 .mobile-bottom-nav{background:#121020f8;border-top:1px solid #352d52;box-shadow:0 -10px 30px #0006}
 html.ws5 .mobile-bottom-nav button{color:#aaa1c7}
 html.ws5 .mobile-bottom-nav button.active{background:#3c2d65;color:#f5f0ff}
 html.ws5 .ws5-welcome{min-height:180px;padding:20px 17px;border-radius:16px}
 html.ws5 .ws5-welcome h2{font-size:23px;max-width:340px}
 html.ws5 .ws5-welcome p{font-size:12px}
 html.ws5 .ws5-welcome-content{max-width:100%}
 html.ws5 .ws5-orbit{right:-106px;opacity:.18;width:185px;height:185px}
 html.ws5 #panel-home .stats > .stat{min-height:130px;padding:16px}
 html.ws5 .card{padding:15px;border-radius:15px}
 html.ws5 .modal-actions{background:#161524!important}
 html.ws5 .messenger-composer textarea{font-size:16px}
 html.ws5 .mobile-menu-btn{color:#e5dafa}
}
@media(max-width:400px){
 html.ws5 .ws5-welcome{padding:16px 14px}
 html.ws5 .ws5-welcome h2{font-size:21px}
 html.ws5 .ws5-actions .btn{font-size:11px;padding:9px 10px}
 html.ws5 .top-actions #installPwaBtn,html.ws5 .top-actions #refreshBtn{display:none}
}
@media(prefers-reduced-motion:reduce){html.ws5 .task,html.ws5 .btn,html.ws5 .sidebar .nav button{transition:none}}

/* Keep the header usable on common 1280–1440px laptops. */
@media (max-width:1420px) and (min-width:1025px) {
  html.ws5 .ws5-search{display:none}
  html.ws5 .main{padding-left:19px;padding-right:19px}
  html.ws5 .top-actions{gap:5px}
  html.ws5 .title h1{font-size:21px}
}
