:root{
  --bg:#09070d;--panel:#121018;--panel2:#18131f;--text:#f8f4fb;--muted:#a99fad;
  --brand:#b600df;--brand2:#d447e5;--line:#2b2432;--ok:#44d17a;--warn:#ffbd59;--danger:#ff6978;
  --radius:18px;--shadow:0 24px 80px rgba(0,0,0,.38);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
*{box-sizing:border-box} body{margin:0;background:radial-gradient(circle at 85% 5%,rgba(182,0,223,.22),transparent 34%),var(--bg);color:var(--text)}
button,input,select,textarea{font:inherit}.hidden{display:none!important}.muted{color:var(--muted)}.small{font-size:.84rem}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.logo{max-width:310px;width:72%;height:auto}.icon-logo{width:54px;height:54px;object-fit:contain}
.hero{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);align-items:center;gap:70px;padding:60px max(6vw,30px)}
.hero h1{font-size:clamp(2.8rem,6.2vw,6.3rem);line-height:.92;letter-spacing:-.06em;margin:32px 0 20px;max-width:800px}.hero p{font-size:clamp(1.05rem,2vw,1.35rem);color:#cfc6d4;max-width:700px;line-height:1.6}
.gradient{background:linear-gradient(90deg,#fff 10%,#e667f1 58%,#b500de);-webkit-background-clip:text;color:transparent}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.btn{border:0;border-radius:14px;padding:13px 18px;cursor:pointer;background:#27202e;color:white;font-weight:700}.btn:hover{transform:translateY(-1px)}.btn.primary{background:linear-gradient(135deg,var(--brand),var(--brand2))}.btn.ghost{background:transparent;border:1px solid #403549}.btn.danger{background:#3a171d;color:#ff98a1}.btn.small{padding:8px 11px;border-radius:10px;font-size:.85rem}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}
.scan-art{position:relative;aspect-ratio:1;border-radius:36px;background:linear-gradient(145deg,#17101d,#0d0b11);border:1px solid #2d2335;box-shadow:var(--shadow);overflow:hidden}.scan-art:before,.scan-art:after{content:"";position:absolute;border-radius:50%;inset:12%;border:1px solid rgba(218,71,229,.5);box-shadow:0 0 80px rgba(182,0,223,.28)}.scan-art:after{inset:25%;border-style:dashed;animation:spin 18s linear infinite}.scan-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:34px 34px;mask-image:radial-gradient(circle,#000 32%,transparent 74%)}.scan-head{position:absolute;left:50%;top:51%;width:31%;height:48%;transform:translate(-50%,-50%);border:2px solid rgba(235,164,242,.8);border-radius:47% 47% 38% 38% / 39% 39% 56% 56%;filter:drop-shadow(0 0 16px rgba(202,53,226,.8))}.scan-head:before{content:"";position:absolute;width:42%;height:16%;border:2px solid rgba(235,164,242,.72);left:29%;bottom:19%;border-radius:45%}.scan-beam{position:absolute;left:9%;right:9%;height:2px;background:linear-gradient(90deg,transparent,#ee73f5,transparent);box-shadow:0 0 18px #c800ef;animation:scan 4s ease-in-out infinite}@keyframes scan{0%,100%{top:23%}50%{top:77%}}@keyframes spin{to{transform:rotate(360deg)}}
.auth-card,.portal-card{max-width:520px;margin:9vh auto;background:rgba(18,16,24,.96);border:1px solid var(--line);border-radius:24px;padding:30px;box-shadow:var(--shadow)}.auth-card h2,.portal-card h2{margin:10px 0 8px;font-size:2rem}.field{display:grid;gap:7px;margin:14px 0}.field label{font-size:.82rem;color:#c4b9c8}.field input,.field select,.field textarea{width:100%;background:#0c0a0f;color:var(--text);border:1px solid #31293a;border-radius:12px;padding:12px 13px;outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--brand2);box-shadow:0 0 0 3px rgba(212,71,229,.12)}
.shell{min-height:100vh;display:grid;grid-template-columns:245px 1fr}.side{position:sticky;top:0;height:100vh;border-right:1px solid var(--line);background:#0d0a10;padding:22px 16px;display:flex;flex-direction:column}.side .logo{width:180px;max-width:100%;margin:5px 4px 24px}.nav{display:grid;gap:6px}.nav button{border:0;background:transparent;text-align:left;color:#c9bfcf;padding:11px 12px;border-radius:12px;cursor:pointer}.nav button.active,.nav button:hover{background:#1d1522;color:white}.side-bottom{margin-top:auto;border-top:1px solid var(--line);padding-top:14px}.content{min-width:0;padding:25px 30px 60px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:26px}.topbar h1{font-size:1.55rem;margin:0}.role-pill,.status{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:5px 9px;font-size:.75rem;background:#2b2131;color:#ddcfe2;text-transform:capitalize}.status.ok{background:#183424;color:#8ff0ae}.status.warn{background:#392c15;color:#ffd17c}.status.danger{background:#3a181d;color:#ff9da6}
.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.card{background:linear-gradient(180deg,#16111b,#100d14);border:1px solid var(--line);border-radius:var(--radius);padding:18px}.card.metric .value{font-size:2rem;font-weight:800;letter-spacing:-.04em}.card.metric .label{color:var(--muted);font-size:.83rem;margin-top:6px}.section{margin-top:22px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.section h2{font-size:1.05rem;margin:0}
.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:16px}.table{width:100%;border-collapse:collapse;min-width:760px;background:#100d14}.table th,.table td{padding:12px 13px;text-align:left;border-bottom:1px solid #231d29;font-size:.88rem}.table th{color:#a99fad;font-size:.75rem;text-transform:uppercase;letter-spacing:.06em}.table tr:last-child td{border-bottom:0}.table tr.clickable{cursor:pointer}.table tr.clickable:hover{background:#18121d}
.toolbar{display:flex;gap:10px;flex-wrap:wrap}.search{min-width:260px;background:#0c0a0f;color:white;border:1px solid var(--line);border-radius:12px;padding:10px 12px}.empty{padding:34px;text-align:center;color:var(--muted)}
.modal-bg{position:fixed;inset:0;background:rgba(0,0,0,.72);display:grid;place-items:center;padding:20px;z-index:50}.modal{width:min(720px,100%);max-height:90vh;overflow:auto;background:#120f17;border:1px solid #352a3e;border-radius:22px;padding:24px;box-shadow:var(--shadow)}.modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.modal-head h2{margin:0}.close{border:0;background:#241c2a;color:white;border-radius:10px;width:36px;height:36px;cursor:pointer}.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.divider{height:1px;background:var(--line);margin:20px 0}.linkbox{background:#0a080c;border:1px dashed #50395d;border-radius:14px;padding:12px;word-break:break-all}.portal{min-height:100vh;padding:40px 18px}.portal-wrap{max-width:900px;margin:auto}.portal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.exam-card{background:#121018;border:1px solid var(--line);border-radius:18px;padding:18px;margin:12px 0}.exam-top{display:flex;justify-content:space-between;gap:12px}.payment-line{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid #251f2b;margin-top:10px}.progress{height:7px;background:#2a2330;border-radius:10px;overflow:hidden;margin-top:10px}.progress>span{display:block;height:100%;background:linear-gradient(90deg,var(--brand),var(--brand2))}
.toast{position:fixed;right:22px;bottom:22px;z-index:90;background:#251d2c;border:1px solid #44344f;border-radius:13px;padding:12px 15px;box-shadow:var(--shadow);opacity:0;transform:translateY(12px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:none}
@media(max-width:960px){.hero{grid-template-columns:1fr;padding-top:35px}.scan-art{max-width:600px;width:100%;justify-self:center}.grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.shell{grid-template-columns:1fr}.side{position:static;height:auto;border-right:0;border-bottom:1px solid var(--line);padding:12px}.side .logo{width:145px;margin:0 0 12px}.nav{display:flex;overflow:auto}.nav button{white-space:nowrap}.side-bottom{display:none}.content{padding:18px 14px 50px}.grid{grid-template-columns:1fr 1fr}.topbar{align-items:flex-start}.two{grid-template-columns:1fr}.hero{gap:30px;padding:30px 18px 50px}.hero h1{font-size:3.15rem}.scan-art{border-radius:24px}}
@media(max-width:480px){.grid{grid-template-columns:1fr}.actions .btn{width:100%}.auth-card,.portal-card{margin:3vh auto;padding:22px}.search{min-width:100%}}

/* MegaStom V0.3 public website + richer CRM */
a{color:inherit}.wide{width:100%}.danger-text{color:var(--danger)}.top-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.row-actions{display:flex;gap:7px;flex-wrap:wrap}.side-logo{display:block}.side-site{display:block;margin:12px 0 8px;color:#d78be5;text-decoration:none;font-size:.84rem}.qr-warning{margin-top:12px;border-color:#5b4523}.link-text{margin-top:8px}.notice-card{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.notice-card>b{font-size:1.35rem;color:#e26cf0}.notice-card .btn{margin-left:auto}
.public-site{min-height:100vh;background:radial-gradient(circle at 80% 5%,rgba(182,0,223,.22),transparent 26%),linear-gradient(180deg,#09070d 0%,#0c0910 58%,#08070a 100%)}
.public-head{max-width:1320px;margin:auto;padding:22px 34px;display:flex;align-items:center;justify-content:space-between;gap:30px;position:relative;z-index:5}.brand-link img{width:210px;display:block}.public-head nav{display:flex;align-items:center;gap:22px}.public-head nav>a{font-size:.9rem;color:#c7bccb;text-decoration:none}.public-head nav>a:hover{color:#fff}
.public-hero{max-width:1320px;margin:auto;min-height:690px;padding:65px 34px 85px;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr);gap:70px;align-items:center}.public-copy h1{font-size:clamp(3.5rem,6vw,6.8rem);line-height:.94;letter-spacing:-.065em;margin:18px 0 24px;max-width:850px}.public-copy>p{font-size:1.2rem;line-height:1.68;max-width:720px;color:#c9becd}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:#dc7fea;font-size:.72rem;font-weight:900;letter-spacing:.16em}.eyebrow:before{content:"";width:24px;height:1px;background:#d04de1}.trust-row{display:flex;gap:18px;flex-wrap:wrap;margin-top:34px;color:#aa9cae;font-size:.85rem}.landing-scan{aspect-ratio:1/1.04}.scan-orbit{position:absolute;border:1px solid rgba(218,71,229,.2);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}.orbit-a{width:75%;height:75%}.orbit-b{width:92%;height:92%;border-style:dotted}.scan-caption{position:absolute;left:0;right:0;bottom:24px;text-align:center;font-size:.68rem;letter-spacing:.17em;color:#b58cbd}
.feature-strip{max-width:1250px;margin:0 auto 40px;border:1px solid var(--line);border-radius:24px;background:rgba(17,13,21,.82);display:grid;grid-template-columns:repeat(3,1fr);overflow:hidden}.feature-strip>div{padding:24px 26px;border-right:1px solid var(--line);display:grid;gap:7px}.feature-strip>div:last-child{border-right:0}.feature-strip b{font-size:1rem}.feature-strip span{color:var(--muted);font-size:.86rem;line-height:1.5}
.public-section{max-width:1250px;margin:auto;padding:90px 28px}.public-section-head{max-width:720px;margin-bottom:35px}.public-section-head h2,.public-cta h2{font-size:clamp(2.25rem,4vw,4.1rem);letter-spacing:-.045em;line-height:1;margin:13px 0 16px}.public-section-head p,.public-cta p{color:#b8acbc;line-height:1.65;font-size:1.02rem}.price-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.price-card{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 20px;background:linear-gradient(180deg,#16111b,#100d14);border:1px solid var(--line);border-radius:15px}.price-card>div{display:grid;gap:4px}.price-card span{font-size:.74rem;color:var(--muted)}.price-card strong{white-space:nowrap;color:#f0b9f5;font-size:1.05rem}
.workflow-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.workflow-grid article{position:relative;min-height:245px;padding:24px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(150deg,#151018,#0d0a10);overflow:hidden}.workflow-grid article>span{font-size:4.8rem;line-height:1;font-weight:900;color:rgba(217,76,232,.12);position:absolute;right:13px;top:12px}.workflow-grid h3{margin-top:105px;margin-bottom:10px}.workflow-grid p{color:var(--muted);font-size:.9rem;line-height:1.55}
.public-cta{max-width:1190px;margin:60px auto 110px;padding:48px 54px;border-radius:30px;border:1px solid #493252;background:radial-gradient(circle at 85% 20%,rgba(200,30,226,.25),transparent 30%),linear-gradient(135deg,#17101e,#0f0b13);display:flex;align-items:center;justify-content:space-between;gap:50px}.public-cta>div{max-width:790px}.public-cta .btn{white-space:nowrap;padding:16px 23px}.public-foot{max-width:1250px;margin:auto;padding:28px;border-top:1px solid var(--line);display:flex;align-items:center;gap:20px;color:var(--muted);font-size:.82rem}.public-foot img{width:140px}.public-foot .btn{margin-left:auto}
.auth-layout{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);align-items:stretch}.auth-side{padding:75px max(6vw,40px);background:radial-gradient(circle at 40% 30%,rgba(179,0,217,.24),transparent 34%),#0d0911;display:flex;flex-direction:column;justify-content:center}.auth-side .logo{width:230px}.auth-side h1{font-size:clamp(3.2rem,5vw,6rem);line-height:.95;letter-spacing:-.055em;margin:55px 0 18px}.auth-side>p{font-size:1.1rem;line-height:1.65;color:#c7bbcb;max-width:620px}.auth-note{margin-top:38px;padding:18px;border:1px solid #3c2c44;border-radius:17px;display:grid;gap:5px;max-width:620px}.auth-note span{color:var(--muted);font-size:.86rem}.auth-layout>.auth-card{align-self:center;width:min(520px,calc(100% - 40px));margin:40px auto}.text-back{border:0;background:none;color:#bfaec4;padding:0;margin-bottom:24px;cursor:pointer}.auth-switch{text-align:center;color:var(--muted);margin-top:20px}.auth-switch button{border:0;background:none;color:#dc72e9;font-weight:800;cursor:pointer}
@media(max-width:1000px){.public-head nav>a{display:none}.public-hero{grid-template-columns:1fr;min-height:auto;padding-top:40px}.landing-scan{max-width:650px;width:100%;justify-self:center}.workflow-grid{grid-template-columns:repeat(2,1fr)}.auth-layout{grid-template-columns:1fr}.auth-side{padding:45px 28px}.auth-side h1{margin-top:30px}.auth-layout>.auth-card{margin:35px auto 65px}}
@media(max-width:720px){.public-head{padding:16px 18px}.brand-link img{width:155px}.public-head nav{gap:8px}.public-head .btn{padding:9px 10px;font-size:.73rem}.public-hero{padding:42px 18px 60px;gap:40px}.public-copy h1{font-size:3.3rem}.public-copy>p{font-size:1rem}.feature-strip{margin:0 18px;grid-template-columns:1fr}.feature-strip>div{border-right:0;border-bottom:1px solid var(--line)}.feature-strip>div:last-child{border-bottom:0}.public-section{padding:65px 18px}.price-grid{grid-template-columns:1fr}.workflow-grid{grid-template-columns:1fr}.workflow-grid article{min-height:210px}.public-cta{margin:35px 18px 70px;padding:30px 24px;display:block}.public-cta .btn{width:100%;margin-top:18px}.public-foot{margin:0 18px;padding:24px 0;flex-wrap:wrap}.public-foot .btn{margin-left:0}.trust-row{display:grid;gap:9px}.top-actions .role-pill{display:none}}

/* MegaStom V0.4 — light/dark themes, i18n controls, deep-link detail pages */
html{color-scheme:dark}html[data-theme="light"]{color-scheme:light}
body{transition:background .2s ease,color .2s ease}
.pref-controls{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.lang-switch{display:flex;gap:3px;padding:3px;border:1px solid var(--line);border-radius:12px;background:rgba(127,127,127,.06)}.pref-btn{border:0;background:transparent;color:var(--muted);font-size:.72rem;font-weight:800;padding:7px 9px;border-radius:9px;cursor:pointer;white-space:nowrap}.pref-btn.active,.pref-btn:hover{background:var(--panel2);color:var(--text)}.theme-btn{border:1px solid var(--line);font-size:.75rem}.app-pref{display:flex;justify-content:flex-end;margin-bottom:10px}.auth-pref{position:absolute;top:24px;left:max(6vw,40px)}.portal-pref{display:flex;justify-content:flex-end;margin-bottom:-50px;position:relative;z-index:2}.user-footer{margin-top:9px}
.tabs{display:flex;gap:7px;flex-wrap:wrap;border-bottom:1px solid var(--line);margin:4px 0 18px}.tab{border:0;background:transparent;color:var(--muted);padding:10px 13px;border-bottom:2px solid transparent;cursor:pointer;font-weight:700}.tab.active{color:var(--text);border-bottom-color:var(--brand2)}.tab b{display:inline-flex;min-width:20px;height:20px;align-items:center;justify-content:center;border-radius:999px;background:var(--panel2);font-size:.7rem;margin-left:5px}
.detail-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:14px}.detail-title{font-size:1.35rem;margin:13px 0 6px}.detail-title a{cursor:pointer;text-decoration:none}.detail-title a:hover{color:var(--brand2)}.detail-tabs{display:flex;overflow:auto;gap:4px;border-bottom:1px solid var(--line);margin-bottom:14px}.detail-tabs span{white-space:nowrap;padding:11px 13px;color:var(--muted);font-size:.82rem;font-weight:700}.detail-tabs span.active{color:var(--text);border-bottom:2px solid var(--brand2)}.detail-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.detail-columns>.card{min-width:0}.kv{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:11px 0;border-bottom:1px solid var(--line)}.kv:last-child{border-bottom:0}.kv span{color:var(--muted);font-size:.8rem}.kv b{text-align:right;font-size:.88rem;overflow-wrap:anywhere}.text-back.compact{margin:0 0 8px}

/* Light theme overrides while preserving MegaStom magenta/purple identity. */
html[data-theme="light"]:root{--bg:#f7f3f9;--panel:#ffffff;--panel2:#f0e8f3;--text:#211724;--muted:#746a78;--line:#ded4e2;--shadow:0 20px 60px rgba(56,24,66,.14);--ok:#188449;--warn:#a96800;--danger:#c63344}
html[data-theme="light"] body{background:radial-gradient(circle at 85% 5%,rgba(182,0,223,.10),transparent 32%),var(--bg)}
html[data-theme="light"] .gradient{background:linear-gradient(90deg,#291a2d 10%,#aa24c0 58%,#7e009a);-webkit-background-clip:text;color:transparent}
html[data-theme="light"] .btn{background:#eadfee;color:#2b2030}html[data-theme="light"] .btn.primary{background:linear-gradient(135deg,#9d00c3,#c632d6);color:white}html[data-theme="light"] .btn.ghost{background:transparent;border-color:#cdbfd2;color:#342739}html[data-theme="light"] .btn.danger{background:#fde7e9;color:#a52736}
html[data-theme="light"] .side{background:#fff;border-color:var(--line)}html[data-theme="light"] .nav button{color:#685d6c}html[data-theme="light"] .nav button.active,html[data-theme="light"] .nav button:hover{background:#f2e9f4;color:#2b2030}
html[data-theme="light"] .card,html[data-theme="light"] .price-card{background:linear-gradient(180deg,#fff,#fbf8fc)}html[data-theme="light"] .table{background:#fff}html[data-theme="light"] .table th,html[data-theme="light"] .table td{border-bottom-color:#e8e0eb}html[data-theme="light"] .table tr.clickable:hover{background:#faf5fb}html[data-theme="light"] .table th{color:#746a78}
html[data-theme="light"] .search,html[data-theme="light"] .field input,html[data-theme="light"] .field select,html[data-theme="light"] .field textarea{background:#fff;color:#211724;border-color:#d8cddd}html[data-theme="light"] .field label{color:#655b69}
html[data-theme="light"] .modal{background:#fff;border-color:#d8ccdc}html[data-theme="light"] .close{background:#efe6f2;color:#2b2030}html[data-theme="light"] .linkbox{background:#fbf6fc;border-color:#caa7d0}
html[data-theme="light"] .auth-card,html[data-theme="light"] .portal-card{background:rgba(255,255,255,.97)}html[data-theme="light"] .auth-side{background:radial-gradient(circle at 40% 30%,rgba(179,0,217,.12),transparent 34%),#faf6fb}html[data-theme="light"] .auth-side>p{color:#665b6a}html[data-theme="light"] .auth-note{border-color:#d7c9dc}
html[data-theme="light"] .public-site{background:radial-gradient(circle at 80% 5%,rgba(182,0,223,.10),transparent 26%),linear-gradient(180deg,#fbf8fc 0%,#f7f2f9 58%,#fff 100%)}html[data-theme="light"] .public-copy>p,html[data-theme="light"] .public-section-head p,html[data-theme="light"] .public-cta p{color:#655b69}html[data-theme="light"] .public-head nav>a{color:#655b69}html[data-theme="light"] .feature-strip{background:rgba(255,255,255,.88)}html[data-theme="light"] .workflow-grid article{background:linear-gradient(150deg,#fff,#faf6fb)}html[data-theme="light"] .public-cta{background:radial-gradient(circle at 85% 20%,rgba(200,30,226,.11),transparent 30%),linear-gradient(135deg,#fff,#f6edf8);border-color:#d5c3da}html[data-theme="light"] .scan-art{background:linear-gradient(145deg,#fbf6fc,#ede2f0);border-color:#d7c7dc}html[data-theme="light"] .scan-grid{background-image:linear-gradient(rgba(48,20,55,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(48,20,55,.05) 1px,transparent 1px)}
html[data-theme="light"] .exam-card{background:#fff}html[data-theme="light"] .payment-line{border-top-color:#e8dfeb}html[data-theme="light"] .progress{background:#e7deea}html[data-theme="light"] .toast{background:#fff;color:#211724;border-color:#d7cbdc}
html[data-theme="light"] .role-pill{background:#efe6f2;color:#5c4a62}html[data-theme="light"] .status.ok{background:#e0f4e7;color:#196d3e}html[data-theme="light"] .status.warn{background:#fff1d7;color:#8b5800}html[data-theme="light"] .status.danger{background:#fde3e6;color:#a12c39}

@media(max-width:1100px){.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-columns{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.app-pref{margin-bottom:14px}.pref-controls{justify-content:flex-end}.auth-pref{position:static;margin-bottom:24px}.portal-pref{margin-bottom:0}.detail-grid,.detail-columns{grid-template-columns:1fr}.tabs{overflow:auto;flex-wrap:nowrap}.tab{white-space:nowrap}.public-head nav .pref-controls{display:flex}.public-head nav{flex-wrap:wrap;justify-content:flex-end}.side-bottom{display:block}.side{height:auto}.side .pref-controls{justify-content:flex-start}}

/* MegaStom V0.5 — examination workflow, calendar, doctor privacy */
.workflow-counts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0 22px}.status-count-card{border:1px solid var(--line);border-radius:16px;background:var(--panel);color:var(--text);padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;text-align:left}.status-count-card span{font-size:1.55rem;font-weight:900;letter-spacing:-.04em}.status-count-card b{font-size:.78rem}.status-count-card.selected{outline:2px solid var(--brand2);outline-offset:1px}.status-count-card.reception-status{border-color:#674b72}.status-count-card.active-status{border-color:#7d6332}.status-count-card.ok{border-color:#24583b}.status-count-card.danger-status{border-color:#66313a}
.status.reception-status{background:#302237;color:#e8c7ee}.status.active-status{background:#3d3119;color:#ffd785}.status.danger-status{background:#3a181d;color:#ff9da6}.privacy-note{margin-bottom:16px;border-color:#50355a;background:linear-gradient(180deg,rgba(182,0,223,.08),var(--panel))}.workflow-hint{margin:12px 0;padding:14px}.payment-due{display:flex;justify-content:space-between;align-items:center;margin:12px 0 16px}.payment-due b{font-size:1.5rem}.payment-method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0 18px}.pay-method{border:1px solid var(--line);background:var(--panel2);color:var(--text);border-radius:14px;padding:15px 10px;cursor:pointer;font-weight:800}.pay-method.selected{border-color:var(--brand2);box-shadow:0 0 0 2px rgba(212,71,229,.16);background:rgba(182,0,223,.12)}
.calendar-toolbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;margin:8px 0 18px}.calendar-toolbar h2{margin:0;text-align:center;font-size:1.1rem}.calendar-toolbar>.segmented{justify-self:end}.segmented{display:flex;border:1px solid var(--line);border-radius:12px;padding:3px;background:var(--panel)}.segmented button{border:0;background:transparent;color:var(--muted);padding:8px 11px;border-radius:9px;cursor:pointer;font-weight:700}.segmented button.active{background:var(--panel2);color:var(--text)}
.month-calendar{display:grid;grid-template-columns:repeat(7,minmax(130px,1fr));border:1px solid var(--line);border-radius:18px;overflow:auto;background:var(--panel)}.month-day{min-height:145px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:9px;min-width:130px}.month-day:nth-child(7n){border-right:0}.month-day.outside{opacity:.45}.day-number{font-size:.8rem;font-weight:900;color:var(--muted);margin-bottom:7px}.month-events{display:grid;gap:5px}.week-calendar{display:grid;grid-template-columns:repeat(7,minmax(160px,1fr));gap:8px;overflow:auto}.week-day{min-height:420px;min-width:160px;border:1px solid var(--line);background:var(--panel);border-radius:16px;padding:10px}.cal-day-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:9px;margin-bottom:9px}.cal-day-head span{font-size:1.3rem;font-weight:900}.day-calendar{display:grid;gap:8px}.cal-event{width:100%;border:1px solid var(--line);border-left:3px solid var(--brand2);background:var(--panel2);color:var(--text);border-radius:10px;padding:7px 8px;display:grid;grid-template-columns:auto 1fr;gap:2px 7px;text-align:left;cursor:pointer;overflow:hidden}.cal-event b{font-size:.72rem}.cal-event span{font-size:.75rem;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-event small{grid-column:1/-1;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-event.active-status{border-left-color:var(--warn)}.cal-event.ok{border-left-color:var(--ok)}.cal-event.danger-status{border-left-color:var(--danger);opacity:.72}.cal-event.reception-status{border-left-color:var(--brand2)}
html[data-theme="light"] .status.reception-status{background:#f0e5f3;color:#6d3e77}html[data-theme="light"] .status.active-status{background:#fff2d7;color:#815900}html[data-theme="light"] .status.danger-status{background:#fde3e6;color:#9c2d39}html[data-theme="light"] .privacy-note{background:linear-gradient(180deg,rgba(182,0,223,.05),#fff)}html[data-theme="light"] .status-count-card,html[data-theme="light"] .month-calendar,html[data-theme="light"] .week-day{background:#fff}html[data-theme="light"] .pay-method,html[data-theme="light"] .cal-event{background:#f7f0f9}html[data-theme="light"] .pay-method.selected{background:#f1dff5}
@media(max-width:1000px){.workflow-counts{grid-template-columns:repeat(2,1fr)}.calendar-toolbar{grid-template-columns:1fr}.calendar-toolbar h2{text-align:left;order:-1}.calendar-toolbar>.segmented{justify-self:start}.month-calendar{grid-template-columns:repeat(7,minmax(115px,1fr))}}
@media(max-width:620px){.workflow-counts{grid-template-columns:1fr 1fr}.payment-method-grid{grid-template-columns:1fr}.calendar-toolbar .row-actions{display:grid;grid-template-columns:1fr 1fr 1fr}.calendar-toolbar .row-actions .btn{padding:8px 5px}.month-day{min-height:115px}.month-calendar{grid-template-columns:repeat(7,minmax(95px,1fr))}.cal-event small{display:none}}

/* MegaStom V0.5.1 — paginated lists and grouped finance */
.patient-status-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.pager{margin:14px 0 0;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}.pager-info{font-size:.82rem;color:var(--muted)}.pager-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.pager-actions label{font-size:.78rem;color:var(--muted);display:flex;align-items:center;gap:7px}.pager-actions select{border:1px solid var(--line);background:var(--panel2);color:var(--text);border-radius:9px;padding:6px 8px}.compact-search{min-width:220px}.finance-hint{margin-top:18px}.finance-tree{display:grid;gap:10px}.finance-year,.finance-month{border:1px solid var(--line);border-radius:15px;background:var(--panel);overflow:hidden}.finance-year>summary,.finance-month>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 15px}.finance-year>summary::-webkit-details-marker,.finance-month>summary::-webkit-details-marker{display:none}.finance-year>summary span,.finance-month>summary span{display:grid;gap:2px}.finance-year>summary small,.finance-month>summary small,.finance-type small{font-size:.75rem;color:var(--muted)}.finance-year>summary strong,.finance-month>summary strong,.finance-type>strong{white-space:nowrap}.finance-months{display:grid;gap:8px;padding:0 10px 10px}.finance-month{background:var(--panel2)}.finance-types{display:grid;gap:6px;padding:0 9px 9px}.finance-type{display:grid;grid-template-columns:minmax(180px,1fr) auto auto;align-items:center;gap:12px;border:1px solid var(--line);background:var(--panel);border-radius:12px;padding:10px 11px}.finance-type>div{display:grid;gap:2px;min-width:0}.finance-type b{overflow-wrap:anywhere}.toolbar .muted{align-self:center}
html[data-theme="light"] .pager,html[data-theme="light"] .finance-year,html[data-theme="light"] .finance-type{background:#fff}html[data-theme="light"] .finance-month{background:#f7f0f9}html[data-theme="light"] .pager-actions select{background:#fff}
@media(max-width:760px){.patient-status-tabs{grid-template-columns:1fr 1fr 1fr}.pager{align-items:flex-start}.pager-actions{width:100%}.finance-type{grid-template-columns:1fr auto}.finance-type .btn{grid-column:1/-1;width:100%}.compact-search{min-width:100%}}
@media(max-width:520px){.patient-status-tabs{grid-template-columns:1fr}.pager-actions{display:grid;grid-template-columns:1fr 1fr}.pager-actions label{grid-column:1/-1}.pager-actions span{grid-column:1/-1;text-align:center}.finance-year>summary,.finance-month>summary{align-items:flex-start}}
.patient-search-results{display:grid;gap:5px;max-height:230px;overflow:auto;margin-top:6px}.patient-search-row{border:1px solid var(--line);background:var(--panel2);color:var(--text);border-radius:11px;padding:9px 10px;text-align:left;display:grid;gap:2px;cursor:pointer}.patient-search-row:hover{border-color:var(--brand2)}.patient-search-row span{font-size:.76rem;color:var(--muted)}.selected-patient{border:1px solid var(--brand2);background:rgba(182,0,223,.08);border-radius:11px;padding:9px 10px}
html[data-theme="light"] .patient-search-row{background:#f7f0f9}

/* MegaStom V0.6 DICOM foundation */
.detail-tabs{display:flex;gap:8px;overflow:auto;padding-bottom:8px}
.detail-tabs button{border:1px solid var(--line);background:var(--card);color:var(--muted);padding:10px 14px;border-radius:12px;font:inherit;font-weight:700;white-space:nowrap;cursor:pointer}
.detail-tabs button.active{color:var(--text);border-color:rgba(196,72,255,.55);box-shadow:0 0 0 1px rgba(196,72,255,.2) inset;background:linear-gradient(135deg,rgba(168,63,255,.16),rgba(255,46,168,.10))}
.dicom-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.85fr);gap:16px}
.dicom-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0}
.dicom-metrics>div{padding:13px;border:1px solid var(--line);border-radius:14px;background:var(--soft);display:flex;flex-direction:column;gap:4px}
.dicom-metrics span{font-size:12px;color:var(--muted)}
.dicom-metrics b{font-size:16px}
.dicom-actions{margin-top:18px;flex-wrap:wrap}
.upload-zone{margin-top:18px;border:1px dashed rgba(190,87,255,.58);border-radius:16px;padding:18px;display:grid;gap:12px;background:linear-gradient(135deg,rgba(139,65,255,.08),rgba(255,47,159,.05))}
.upload-zone input[type=file]{width:100%;padding:11px;border-radius:10px;border:1px solid var(--line);background:var(--input);color:var(--text)}
.upload-progress-wrap{display:grid;gap:8px}
.upload-progress-head{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:12px;color:var(--muted)}
.upload-bar{height:10px;border-radius:999px;overflow:hidden;background:var(--soft);border:1px solid var(--line)}
.upload-bar span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#a346ff,#f52aa8);transition:width .15s ease}
.study-history-row,.activity-row,.media-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px solid var(--line)}
.study-history-row:last-child,.activity-row:last-child,.media-row:last-child{border-bottom:0}
.study-history-row.primary{padding:12px;border:1px solid rgba(173,78,255,.35);border-radius:12px;margin-bottom:8px;background:rgba(155,65,255,.06)}
.imaging-placeholder{min-height:260px;display:flex;align-items:center;gap:24px;padding:28px}
.imaging-icon{width:88px;height:88px;display:grid;place-items:center;border-radius:24px;background:linear-gradient(135deg,#8e42ff,#ef2ca5);color:#fff;font-weight:900;font-size:28px;box-shadow:0 18px 45px rgba(153,53,255,.25);flex:0 0 auto}
.media-list{max-height:540px;overflow:auto}
.privacy-note{margin-top:12px}
@media(max-width:900px){.dicom-layout{grid-template-columns:1fr}.dicom-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.imaging-placeholder{align-items:flex-start}.upload-progress-head{align-items:flex-start;flex-direction:column}}
@media(max-width:520px){.dicom-metrics{grid-template-columns:1fr}.imaging-placeholder{flex-direction:column}.imaging-icon{width:68px;height:68px;border-radius:18px;font-size:22px}}
