html,body{min-height:100%}
body{font-family:var(--font);background:var(--bg);color:var(--graphite);font-size:14px;line-height:1.75}
.button{border:0;border-radius:12px;min-height:44px;padding:0 19px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:600;transition:transform .2s var(--ease),box-shadow .2s,background .2s,color .2s}
.button:hover{transform:translateY(-1px)}.button:disabled{opacity:.55;cursor:not-allowed;transform:none}
.button.primary{background:linear-gradient(135deg,var(--cyan),#0a9ba8);color:#fff;box-shadow:0 10px 24px rgba(14,169,182,.2)}
.button.primary:hover{box-shadow:0 14px 30px rgba(14,169,182,.28)}
.button.ghost{background:#fff;border:1px solid var(--border);color:var(--slate-700)}.button.ghost:hover{border-color:#b7c6d4;background:var(--slate-50)}
.button.danger{background:var(--red-soft);color:var(--red-dark);border:1px solid #ffd0d6}.button.small{min-height:34px;padding:0 13px;border-radius:9px;font-size:12px}.button.wide{width:100%}
.icon-button{border:1px solid transparent;background:transparent;width:38px;height:38px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;color:inherit;transition:.2s}
.icon-button:hover{background:rgba(127,145,163,.1)}.icon-button svg{width:20px;height:20px}
.eyebrow{font-size:10px;line-height:1.3;letter-spacing:1.7px;font-weight:700;color:var(--cyan-dark);direction:ltr;display:inline-flex}
.muted{color:var(--slate-500);font-size:12px}.danger-text{color:var(--red)}.text-link{color:var(--cyan-dark);font-weight:600;font-size:12px}.text-link:hover{color:var(--cyan)}
.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs)}
.card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.card-header h2{font-size:17px;margin-top:3px;color:var(--navy-900)}
.status-pill{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(15,186,131,.2);background:rgba(15,186,131,.08);color:#087b59;border-radius:999px;padding:5px 10px;font-size:11px;font-weight:600}
.status-pill i,.live-label i{width:7px;height:7px;border-radius:50%;background:var(--emerald);box-shadow:0 0 0 5px rgba(15,186,131,.1)}
.field{display:flex;flex-direction:column;gap:7px}.field>span:first-child,.content-toolbar label>span:first-child,.report-toolbar label>span:first-child{font-size:12px;color:var(--slate-700);font-weight:600}.field b{color:var(--red)}
input,textarea,select{border:1px solid var(--border);background:#fff;border-radius:11px;min-height:44px;padding:0 13px;transition:border-color .2s,box-shadow .2s;background-color .2s}
textarea{padding-top:11px;resize:vertical}select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#8190a1 50%),linear-gradient(135deg,#8190a1 50%,transparent 50%);background-position:15px calc(50% - 2px),10px calc(50% - 2px);background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-left:29px}
input:focus,textarea:focus,select:focus{border-color:rgba(22,184,196,.7);box-shadow:0 0 0 4px rgba(22,184,196,.09);outline:0;background:#fff}
.input-wrap{position:relative;display:flex;align-items:center}.input-wrap input{width:100%;padding-inline-start:40px}.input-wrap>b,.input-wrap>svg{position:absolute;right:14px;color:var(--slate-400);z-index:1;width:17px;height:17px}
.form-grid{display:grid;gap:16px}.form-grid.two-cols{grid-template-columns:repeat(2,minmax(0,1fr))}
.inline-alert{display:flex;align-items:center;gap:10px;padding:11px 13px;border-radius:11px;font-size:12px;margin:18px 0}.inline-alert>span{width:22px;height:22px;border-radius:7px;display:grid;place-items:center;font-weight:700}.inline-alert.danger{background:var(--red-soft);color:var(--red-dark);border:1px solid #ffd5da}.inline-alert.danger>span{background:var(--red);color:#fff}
.badge{display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border-radius:999px;font-size:10px;font-weight:700;white-space:nowrap;border:1px solid transparent}.badge.approved,.badge.indexed,.badge.success{background:var(--emerald-soft);color:#087d5a;border-color:#c7f0e3}.badge.pending_review,.badge.processing,.badge.medium{background:var(--amber-soft);color:#9c6710;border-color:#f6e2bc}.badge.rejected,.badge.failed,.badge.high{background:var(--red-soft);color:var(--red-dark);border-color:#ffd5da}.badge.not_started,.badge.low{background:var(--blue-soft);color:#3768bd;border-color:#dae6ff}
.skeleton{display:block;border-radius:7px;background:linear-gradient(90deg,#edf1f4 25%,#f8fafb 50%,#edf1f4 75%);background-size:220% 100%;animation:skeleton 1.5s infinite}.skeleton.line{height:12px;margin-bottom:13px}.skeleton.line.short{width:44%}.skeleton.line.value{height:30px;width:62%}.skeleton.graph{height:38px;margin-top:20px}.skeleton-block{min-height:120px;border-radius:13px;background:linear-gradient(90deg,#eef2f5 25%,#f9fafb 50%,#eef2f5 75%);background-size:220% 100%;animation:skeleton 1.5s infinite}
@keyframes skeleton{to{background-position:-220% 0}}
.empty-state,.empty-workspace{text-align:center;display:grid;place-items:center;padding:55px 22px;color:var(--slate-500)}.empty-workspace h2{color:var(--navy-900);font-size:18px;margin:18px 0 4px}.empty-workspace p{max-width:430px}.empty-orbit{width:74px;height:74px;border:1px solid #cfe2e5;border-radius:50%;display:grid;place-items:center;position:relative;background:var(--cyan-soft)}.empty-orbit::before,.empty-orbit::after{content:"";position:absolute;border:1px solid rgba(22,184,196,.22);border-radius:50%}.empty-orbit::before{inset:8px}.empty-orbit::after{inset:20px}.empty-orbit i{width:9px;height:9px;background:var(--cyan);border-radius:50%;box-shadow:0 0 20px var(--cyan)}
.error-page{min-height:100vh;display:grid;place-items:center;background:var(--navy-950);color:#fff}.error-page main{text-align:center}.error-page main>span{font-size:82px;font-weight:700;color:var(--cyan)}.error-page h1{font-size:26px}.error-page p{color:#99aaba;margin:10px 0 25px}

/* Login */
.auth-body{background:var(--navy-950);overflow-x:hidden}.auth-shell{min-height:100vh;display:grid;grid-template-columns:1.08fr .92fr;direction:ltr}.auth-shell>*{direction:rtl}
.auth-visual{position:relative;overflow:hidden;padding:65px 7vw;display:flex;flex-direction:column;justify-content:center;color:#fff;background:radial-gradient(circle at 24% 20%,rgba(22,184,196,.18),transparent 32%),radial-gradient(circle at 76% 80%,rgba(63,91,124,.18),transparent 34%),linear-gradient(145deg,#071321,#0b1d2f)}
.auth-grid{position:absolute;inset:0;opacity:.16;background-image:linear-gradient(rgba(255,255,255,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.09) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(to left,#000,transparent 90%)}
.auth-grid::after{content:"";position:absolute;width:480px;height:480px;border:1px solid rgba(22,184,196,.17);border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 75px rgba(22,184,196,.025),0 0 0 150px rgba(22,184,196,.018)}
.auth-brand-mark{position:absolute;top:58px;right:7vw;width:51px;height:51px;border-radius:15px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);display:flex;align-items:flex-end;gap:4px;padding:12px;transform:rotate(45deg);box-shadow:0 18px 55px rgba(0,0,0,.22)}.auth-brand-mark span{width:7px;border-radius:5px;background:var(--cyan);transform:rotate(-45deg)}.auth-brand-mark span:nth-child(1){height:14px}.auth-brand-mark span:nth-child(2){height:24px}.auth-brand-mark span:nth-child(3){height:19px}
.auth-visual-copy{position:relative;z-index:1;max-width:630px}.auth-visual-copy .eyebrow{color:#66d7df;margin-bottom:20px}.auth-visual-copy h1{font-size:clamp(42px,4.3vw,69px);line-height:1.25;letter-spacing:-1.5px;font-weight:600}.auth-visual-copy h1 em{font-style:normal;color:#61d6de}.auth-visual-copy p{max-width:540px;color:#aebdca;font-size:16px;line-height:2;margin-top:23px}
.auth-signal-card{position:absolute;bottom:55px;right:7vw;left:7vw;z-index:1;display:flex;align-items:center;gap:14px;border-top:1px solid rgba(255,255,255,.08);padding-top:23px}.signal-dot{width:12px;height:12px;border-radius:50%;background:var(--emerald);box-shadow:0 0 0 8px rgba(15,186,131,.08),0 0 24px rgba(15,186,131,.5)}.auth-signal-card div{display:flex;flex-direction:column}.auth-signal-card strong{font-size:13px}.auth-signal-card small{color:#71869a}.signal-wave{margin-right:auto;width:120px;height:24px;background:linear-gradient(90deg,transparent,rgba(22,184,196,.25));clip-path:polygon(0 52%,10% 52%,16% 20%,22% 82%,30% 42%,36% 60%,43% 15%,50% 70%,58% 48%,68% 48%,76% 25%,83% 70%,90% 48%,100% 48%,100% 55%,90% 55%,83% 77%,76% 32%,68% 55%,58% 55%,50% 77%,43% 22%,36% 67%,30% 49%,22% 89%,16% 27%,10% 59%,0 59%)}
.auth-panel{display:grid;place-items:center;background:#f8fafb;padding:50px}.login-card{width:min(430px,100%)}
.brand{display:flex;align-items:center;gap:12px;color:#fff}.brand-symbol{width:42px;height:42px;border-radius:13px;display:flex;align-items:flex-end;gap:3px;padding:9px;background:linear-gradient(145deg,rgba(22,184,196,.2),rgba(22,184,196,.06));border:1px solid rgba(97,214,222,.2);transform:rotate(45deg)}.brand-symbol i{width:6px;border-radius:4px;background:var(--cyan);transform:rotate(-45deg)}.brand-symbol i:nth-child(1){height:12px}.brand-symbol i:nth-child(2){height:22px}.brand-symbol i:nth-child(3){height:17px}.brand>span:last-child{display:flex;flex-direction:column}.brand strong{font-size:16px}.brand small{font-size:8px;letter-spacing:1.3px;color:#6c8297;direction:ltr}.brand-dark{color:var(--navy-900);margin-bottom:65px;width:max-content}.brand-dark small{color:var(--slate-500)}
.login-heading .eyebrow{margin-bottom:10px}.login-heading h2{font-size:34px;color:var(--navy-900);line-height:1.35}.login-heading p{color:var(--slate-500);margin-top:7px}.login-form{display:grid;gap:17px;margin-top:26px}.login-form .input-wrap input{height:51px}.login-form .input-wrap b{font-size:13px}.password-toggle{position:absolute;left:8px;border:0;background:var(--slate-100);color:var(--slate-600);font-size:10px;border-radius:7px;height:31px;padding:0 9px}.form-row{display:flex;align-items:center;justify-content:space-between}.check{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--slate-700);cursor:pointer}.check input{position:absolute;opacity:0}.check span{width:18px;height:18px;border:1px solid var(--slate-300);border-radius:5px;background:#fff;position:relative}.check input:checked+span{background:var(--cyan);border-color:var(--cyan)}.check input:checked+span::after{content:"✓";position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-size:12px}.secure-note{font-size:10px;color:var(--slate-400)}.login-form .button{height:52px;margin-top:5px}.demo-credentials{margin-top:20px;padding:12px 15px;border:1px dashed #bcdde0;background:var(--cyan-soft);border-radius:12px;display:grid;grid-template-columns:1fr auto;gap:2px 15px;font-size:11px}.demo-credentials strong{grid-row:1/3;align-self:center;color:var(--cyan-dark)}.demo-credentials span{color:var(--slate-600)}.login-footer{text-align:center;color:var(--slate-400);font-size:10px;margin-top:27px}

