/* REALIS theme 0.2. Cosmetic changes belong here; app.css supplies base layout.
   Edit the tokens below for future palette, corner and shadow changes. */
:root {
  --ink:#101934; --muted:#75819b; --teal:#4266d9; --paper:#f9faff;
  --line:#e5eaf4; --white:#fff; --brand-blue:#2d76f3; --brand-purple:#684de8;
  --brand-gradient:linear-gradient(107deg,var(--brand-blue),var(--brand-purple));
  --brand-navy:#131e48; --corner-card:17px; --corner-control:11px;
  --shadow-soft:0 7px 20px rgba(23,44,103,.025);
}
body{font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;-webkit-font-smoothing:antialiased}
.topbar{height:77px;padding-inline:max(5%,calc((100vw - 1200px)/2));gap:28px}
.brand{display:flex;align-items:center;gap:7px;font-size:21px;letter-spacing:.13em;font-weight:850}.brand:hover{text-decoration:none}.brand img{width:43px;height:47px;object-fit:contain}.brand span{color:#0e1536}
.lab{font-size:9px;color:#7c88a1;padding-left:24px;letter-spacing:.14em}.version{color:#8f9ebc}.beta{border:0;background:#eef3ff;color:#5267bd;border-radius:20px;font-size:9px;padding:7px 11px}.topright{gap:22px}
.my-cases{display:flex;align-items:center;gap:13px;font-size:12px;font-weight:700;color:#243557;border:1px solid #dfe5f2;border-radius:10px;padding:9px 14px;box-shadow:0 2px 5px #0b205008}.my-cases:hover{background:#f3f6fd;text-decoration:none}.textbutton{color:#647694;font-weight:650}
.primary{background:var(--brand-gradient);border-radius:var(--corner-control);box-shadow:0 9px 22px rgba(67,86,222,.18);min-height:45px;font-size:12px;font-weight:750;padding:13px 19px}.primary:hover{background:var(--brand-gradient);box-shadow:0 12px 28px rgba(67,86,222,.28)}.primary:disabled{background:#ccd3e4;box-shadow:none;color:#65728c}
button:focus-visible,a:focus-visible,input:focus-visible,.dropzone:focus-within{outline-color:#6887db}.eyebrow,.panel-number{color:#5e72b5;font-size:10px;letter-spacing:.15em;font-weight:800}
.login-layout{max-width:1110px;min-height:640px;margin:50px auto 70px;padding:0;gap:0;grid-template-columns:1fr 1fr;align-items:stretch}
.intro{background:linear-gradient(135deg,#131e48,#253c80);border-radius:22px 0 0 22px;padding:54px 48px 100px;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden;color:white}
.intro::before,.intro::after{content:'';pointer-events:none;position:absolute;border:1px solid #ffffff22;border-radius:50%}.intro::before{width:490px;height:490px;right:-220px;top:-70px}.intro::after{width:320px;height:320px;right:-125px;top:150px}
.intro .eyebrow{color:#a9c2ff;position:relative}.intro h1{font-size:clamp(49px,4.8vw,66px);letter-spacing:-.065em;line-height:1.1;margin:24px 0 18px;color:#fff;position:relative;font-weight:750}.intro p{font-size:14px;color:#c5d2ef;line-height:1.8;max-width:370px;position:relative}
.story-footer{position:absolute;bottom:49px;left:48px;display:flex;align-items:center;gap:13px;color:#b9caf4;font-size:11px}.story-footer span{width:25px;height:1px;background:#97b2ff}
.login-card{border-radius:0 22px 22px 0;padding:42px 55px;box-shadow:none;display:flex;flex-direction:column;justify-content:center}.auth-mark{width:61px;height:61px;background:#f7f9ff;display:grid;place-items:center;border-radius:13px;margin-bottom:26px}.auth-mark img{width:46px;height:52px;object-fit:contain}
.login-card .eyebrow{margin-bottom:0}.login-card h2{font-size:35px;letter-spacing:-.053em;margin:12px 0 8px;font-weight:750}.login-card>p{font-size:13px;color:#6f7d97;line-height:1.75}.login-card label{font-size:11px;font-weight:750;margin:15px 0 8px}.login-card input{border-color:#dce3f0;border-radius:10px;padding:13px;font-size:13px;height:47px;background:#fff}.login-card .wide{margin-top:21px}
.auth-divider{display:flex;align-items:center;gap:15px;margin:25px 0 0;color:#7b89a6;font-size:9px;font-weight:750;letter-spacing:.06em;text-align:center}.auth-divider::before,.auth-divider::after{content:'';height:1px;background:#e6eaf4;flex:1}.login-card .fine{font-size:11px!important}
.workspace{max-width:1320px;margin-top:38px}.workspace-hero{text-align:center;padding:10px 0 42px;position:relative}.workspace-hero::before{content:'';position:absolute;z-index:-1;inset:-40px -5vw -20px;background:radial-gradient(ellipse at 8% 55%,#517eff0d,transparent 55%),radial-gradient(ellipse at 95% 28%,#8f63eb0d,transparent 55%)}
.workspace-hero .eyebrow{font-size:10px}.workspace-hero h1{font-size:clamp(44px,5.4vw,66px);font-weight:780;letter-spacing:-.064em;line-height:1.04;margin:15px 0}.workspace-hero em{font-style:normal;background:var(--brand-gradient);color:transparent;background-clip:text;-webkit-background-clip:text}.workspace-hero p{color:#6b7892;font-size:14px;line-height:1.7;margin:0 auto}
.heading h2{font-size:34px;letter-spacing:-.05em;margin:0 0 8px;font-weight:750}.heading .eyebrow{margin-bottom:12px}.title-dot{color:#5a6fec}.account{background:#fff;border:1px solid var(--line);border-radius:20px;padding:7px 13px;font-size:11px}
.notice{background:#f0f4ff;border:1px solid #dbe3f4;border-radius:13px;padding:16px 20px}.notice strong{color:#405ca8}.notice span{color:#657695}.stats{gap:16px}.stats>div{border-radius:15px;padding:20px 24px}.stats>div>span{font-size:9px;letter-spacing:.07em}.stats strong{font-size:34px;font-weight:650;letter-spacing:-.05em;margin-top:10px}
.workspace-grid{grid-template-columns:350px minmax(0,1fr);gap:22px}.panel{border-radius:var(--corner-card);box-shadow:var(--shadow-soft);padding:26px}.panel h2{font-weight:720;letter-spacing:-.04em;font-size:21px}
.dropzone{border-color:#c7d1e6;border-radius:12px;background:#fcfdff;padding:24px 14px}.dropzone:hover,.dropzone.dragging{background:#f4f7ff;border-color:#93aaf0}.dropzone .upload-icon{background:linear-gradient(125deg,#e7efff,#eee8ff);width:50px;height:50px;border-radius:14px;color:#4065e9;margin-bottom:10px}.check input{accent-color:#5769df}
.privacy{padding-top:16px}.privacy strong{color:#526b9c}.privacy p{font-size:10px;line-height:1.8}.empty-symbol{color:#6880cb;background:#eff3ff;width:58px;height:58px;font-size:36px;line-height:58px;border-radius:16px}.job{border-radius:12px;padding:18px}.job h3{font-size:13px;font-weight:720}.job-stage{color:#6c7e9e}
.status{background:#f0f2f7;color:#606c85;font-weight:650;padding:5px 11px}.status.complete{background:#eaf6f2;color:#327463}.status.running{background:#eef3ff;color:#5267bd}.status.failed{background:#fff0e9;color:#9d5438}
.method-strip{gap:25px;padding-top:30px}.method-strip>div:not(.panel-number){background:white;border:1px solid var(--line);border-radius:var(--corner-card);padding:23px}.method-strip h3{font-size:14px;color:#273653}.method-strip p{font-size:12px;line-height:1.8}
.report h1{font-weight:750;letter-spacing:-.05em}.report .measurement{color:#4961c7;font-size:48px;font-weight:650}.report th{background:#f9faff;font-size:10px;letter-spacing:.04em}.report td{color:#5b6881}.report .panel>ul{font-size:12px;line-height:1.9}.flash{background:#edf3ff;color:#405ca8}
footer{padding-top:28px;font-size:10px}.footer-brand{font-size:13px;letter-spacing:.13em;color:#263552}.footer-brand small{display:block;color:#75819b;letter-spacing:0;font-size:10px;font-weight:400;margin-top:5px}
@media(max-width:1150px){.login-layout{margin-inline:5%}.login-card{padding-inline:35px}}
@media(max-width:1000px){.workspace-grid{grid-template-columns:300px minmax(0,1fr)}.intro{padding-inline:34px}.story-footer{left:34px}.topbar .lab{display:none}}
@media(max-width:740px){.topbar{height:68px;gap:12px}.brand{font-size:17px;gap:4px}.brand img{width:34px;height:39px}.topright{gap:13px}.topright .beta{display:none}.my-cases{font-size:11px;padding:8px 10px;gap:7px}.login-layout{min-height:0;grid-template-columns:1fr;margin:28px 20px 45px;padding:0;gap:0}.intro{border-radius:17px 17px 0 0;padding:34px}.intro h1{font-size:44px}.intro p{margin-bottom:25px}.story-footer{position:relative;bottom:auto;left:auto}.intro::before{right:-280px}.intro::after{right:-180px}.login-card{border-radius:0 0 17px 17px;padding:32px}.login-card h2{font-size:32px}.workspace{margin-top:26px}.workspace-hero{padding:6px 0 30px}.workspace-hero h1{font-size:clamp(38px,8.5vw,56px)}.workspace-hero p{font-size:13px}.heading h2{font-size:30px}.stats{grid-template-columns:1fr 1fr;gap:10px}.stats>div{padding:17px}.stats strong{font-size:29px}.workspace-grid,.report-grid{grid-template-columns:1fr}.panel{padding:22px}.method-strip{grid-template-columns:1fr;gap:14px}.method-strip>.panel-number{grid-column:auto}.method-strip>div:not(.panel-number){padding:21px}.job-actions{flex-wrap:wrap}.report .heading .primary{width:100%}.footer-brand{width:100%}}
@media print{.topbar,footer,.back,.report .heading .primary{display:none}body{background:#fff}.workspace{padding:0;margin:0}.panel{box-shadow:none;break-inside:avoid}.report-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
