:root{
  font-family:Inter,"Pretendard","Segoe UI","Malgun Gothic",sans-serif;
  color:#f8f7ff;background:#05070a;font-size:15px;
  --void:#05070a;--navy:#08101d;--ink:#171b2b;--violet:#8f7cff;--lavender:#c9bdf2;
  --mauve:#d7b8d5;--ice:#b9d7ff;--pearl:#f8eefb;--dusk-a:#d4c7d6;--dusk-b:#c9c8d8;
  --dusk-c:#b5bad0;--line-dark:rgba(230,226,255,.22);--line-light:rgba(88,75,122,.22);
  --peach:#f0cdb4;--container-max:1280px;--header-height:72px;
  --gradient-prism:linear-gradient(108deg,#b9cef4 0%,#dad4f5 52%,#ecd6e9 84%,#f4eef7 100%);
  --scene-progress:0;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--void);color:inherit}[hidden]{display:none!important}a{color:inherit}button,input,select{font:inherit}
.site-header{height:72px;position:absolute;z-index:50;inset:0 0 auto;display:flex;align-items:center;gap:34px;padding:0 max(3vw,24px);border-bottom:1px solid var(--line-dark);background:rgba(5,7,10,.24);backdrop-filter:blur(16px) saturate(150%)}
.brand{display:flex;align-items:center;gap:11px;color:#fff;text-decoration:none;font-size:19px;font-weight:800;letter-spacing:-.03em}.brand small{font-size:13px;font-weight:450;color:#c5c1db;margin-left:4px}.brand-mark{display:grid;place-items:center;width:37px;height:37px;border:1px solid rgba(255,255,255,.34);border-radius:12px;background:linear-gradient(145deg,rgba(188,174,255,.42),rgba(84,104,196,.18));box-shadow:inset 0 1px rgba(255,255,255,.4);font-size:17px}
.site-nav{display:flex;align-items:center;gap:28px}.site-nav a{color:#dddaf0;text-decoration:none;font-size:13px}.site-nav a:hover{color:#fff}.header-actions{margin-left:auto;display:flex;align-items:center;gap:14px}.header-label{color:#b6b3c9;font-size:12px}.header-download{border:1px solid rgba(247,243,255,.72);border-radius:999px;padding:9px 15px;color:#fff;text-decoration:none;font-size:12px;font-weight:700;background:rgba(255,255,255,.06);transition:transform .25s ease,background .25s ease}.header-download:hover{transform:translateY(-1px);background:rgba(255,255,255,.13)}
body.is-authenticated .site-nav{display:none}body.is-authenticated .site-header{position:absolute;border-bottom-color:rgba(255,255,255,.45);background:linear-gradient(120deg,rgba(43,34,78,.72),rgba(32,36,72,.66))}body.is-authenticated .header-label{color:#dedaf0}
main{min-height:calc(100vh - 154px)}#notice{position:fixed;z-index:80;top:86px;left:50%;transform:translateX(-50%);width:min(920px,calc(100vw - 36px));border:1px solid rgba(214,204,250,.55);color:#f9f7ff;border-radius:12px;background:rgba(46,40,75,.88);backdrop-filter:blur(18px);padding:14px 18px;line-height:1.55}#notice.error{background:rgba(83,30,51,.92);color:#ffeef5;border-color:rgba(255,181,210,.55)}

/* Marketing hero: midnight violet with pearl reflections. */
.hero{position:absolute;z-index:4;inset:0;min-height:0;overflow:hidden;display:flex;flex-direction:column;justify-content:center;gap:clamp(30px,4.4vh,54px);padding:calc(var(--header-height) + 34px) max(3vw,24px) 54px;background:radial-gradient(ellipse 62% 54% at 68% 44%,#191a35 0,#0c0d1c 38%,#05070a 74%),radial-gradient(ellipse 50% 40% at 8% 22%,#1a1430 0,transparent 68%),#05070a;opacity:clamp(0,calc((.20 - var(--scene-progress))*8.333),1);will-change:opacity}
.midnight-field,.dusk-field{position:absolute;inset:0;overflow:hidden;pointer-events:none}.bloom{position:absolute;border-radius:50%;filter:blur(90px);opacity:.44}.bloom-a{width:45vw;height:34vw;left:-14vw;top:2vh;background:radial-gradient(circle,#7554b8 0,rgba(79,87,169,.48) 43%,transparent 72%)}.bloom-b{width:48vw;height:40vw;right:-16vw;top:16vh;background:radial-gradient(circle,#4d78ad 0,rgba(146,98,150,.34) 46%,transparent 73%)}.bloom-c{width:30vw;height:24vw;right:6vw;top:-6vh;opacity:.3;background:radial-gradient(circle,var(--peach) 0,rgba(226,160,146,.3) 38%,transparent 70%)}
.light-ribbon{position:absolute;width:86vw;height:190px;left:5vw;top:58%;border:2px solid rgba(209,196,255,.32);border-color:rgba(210,198,255,.62) transparent rgba(176,205,255,.22) transparent;border-radius:50%;filter:blur(.2px) drop-shadow(0 0 18px rgba(158,128,255,.32));transform:rotate(-14deg)}.ribbon-b{top:24%;left:24vw;width:68vw;height:130px;opacity:.54;transform:rotate(23deg)}.ribbon-c{top:8%;left:-12vw;width:74vw;height:250px;opacity:.4;border-color:rgba(240,205,180,.5) transparent transparent transparent;filter:drop-shadow(0 0 20px rgba(228,163,133,.3));transform:rotate(-27deg)}
.glint{position:absolute;width:5px;height:5px;border-radius:50%;background:#fff;box-shadow:0 0 9px 3px rgba(205,213,255,.65)}.glint:before,.glint:after{content:"";position:absolute;inset:50% auto auto 50%;background:rgba(255,255,255,.8);transform:translate(-50%,-50%)}.glint:before{width:1px;height:22px}.glint:after{width:22px;height:1px}.glint-a{left:13%;top:26%}.glint-b{right:9%;top:62%;transform:scale(.65)}.glint-c{left:47%;top:13%;transform:scale(.5)}
/* Hero: left copy, right rim-lit glass object — the desktop mockup's framing. */
.hero-grid{position:relative;z-index:4;width:min(var(--container-max),94vw);margin-inline:auto;display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,1fr);gap:clamp(24px,3vw,48px);align-items:center}
.hero-copy{position:relative;z-index:4;max-width:640px}.eyebrow{margin:0 0 17px;color:#c5baf2;font-size:12px;line-height:1.2;font-weight:800;letter-spacing:.18em}.hero h1{margin:0;color:#fff;font-size:clamp(40px,4.9vw,74px);line-height:1.02;letter-spacing:-.055em;font-weight:850;text-shadow:0 2px 34px rgba(0,0,0,.55)}.hero h1 span{color:transparent;text-shadow:none;background:linear-gradient(96deg,#f6f2ff 0%,#c8d9ff 38%,#d7bdf2 72%,#f6e2ec 100%);background-clip:text;-webkit-background-clip:text}.hero-body{margin:26px 0 0;color:#dad7e8;font-size:17px;line-height:1.65;max-width:520px}.hero-meta{margin:20px 0 0;color:#b2aec6;font-size:13px;letter-spacing:.04em}.hero-actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:28px}
.button,button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;border-radius:9px;padding:11px 18px;border:1px solid transparent;font-size:14px;font-weight:750;text-decoration:none;cursor:pointer;transition:transform .28s cubic-bezier(.25,1,.5,1),filter .2s ease,background .2s ease}.button:hover,button:hover{transform:translateY(-2px);filter:brightness(1.03)}.hero-actions .button{min-height:52px;border-radius:999px;padding:14px 26px;font-size:15px}.button-arrow{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:rgba(21,23,44,.14);border:1px solid rgba(21,23,44,.22)}.button-arrow:before{content:"";width:6px;height:6px;border:1.5px solid currentColor;border-width:1.5px 1.5px 0 0;transform:translateX(-1px) rotate(45deg)}
.iridescent,.workspace button:not(.secondary):not(.quiet):not(.danger),#email-button,#consume-login{color:#141626;border-color:rgba(255,255,255,.66);background:var(--gradient-prism);box-shadow:inset 0 1px rgba(255,255,255,.85),0 8px 28px rgba(91,72,160,.18)}.ghost{color:#f9f7ff;border-color:rgba(244,239,255,.64);background:rgba(255,255,255,.06);backdrop-filter:blur(12px)}
.hero-orb{position:relative;justify-self:center;width:min(42vw,560px);aspect-ratio:1;perspective:1100px;pointer-events:none}.orb-shell{position:absolute;inset:4%;border-radius:50%;transform-style:preserve-3d;background:radial-gradient(circle at 66% 28%,rgba(233,226,255,.2),rgba(63,66,124,.16) 34%,rgba(9,11,24,.62) 68%);box-shadow:inset -22px -16px 60px rgba(96,150,214,.16),inset 26px 14px 60px rgba(228,186,214,.14),0 0 120px rgba(124,104,214,.22);animation:orb-float 6s ease-in-out infinite,orb-spin 26s linear infinite}.orb-shell:before{content:"";position:absolute;inset:0;border-radius:50%;padding:1.6px;background:conic-gradient(from 130deg,transparent 0deg,rgba(255,246,238,.95) 38deg,rgba(240,205,180,.72) 76deg,transparent 128deg,transparent 246deg,rgba(185,206,244,.85) 298deg,rgba(215,189,242,.62) 332deg,transparent 360deg);-webkit-mask:linear-gradient(#000,#000) content-box,linear-gradient(#000,#000);-webkit-mask-composite:xor;mask:linear-gradient(#000,#000) content-box,linear-gradient(#000,#000);mask-composite:exclude;filter:drop-shadow(0 0 22px rgba(213,180,240,.38))}.orb-caustic{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 210deg,transparent 0deg,rgba(240,205,180,.5) 26deg,transparent 62deg,rgba(201,189,242,.42) 118deg,transparent 168deg,rgba(185,206,244,.4) 228deg,transparent 286deg,rgba(244,238,247,.34) 330deg,transparent 360deg);mask:radial-gradient(circle,transparent 52%,#000 62%,#000 96%,transparent 99%);-webkit-mask:radial-gradient(circle,transparent 52%,#000 62%,#000 96%,transparent 99%);filter:blur(5px);opacity:.92}.caustic-b{inset:12%;transform:rotate(58deg) scaleY(.82);opacity:.68;filter:blur(9px)}
.orb-ring{position:absolute;border-radius:50%;inset:6%;border:1px solid rgba(236,231,255,.4);box-shadow:inset 8px 6px 25px rgba(255,238,250,.14),0 0 26px rgba(131,118,255,.2)}.ring-a{transform:rotateX(68deg) rotateZ(18deg);border-top-width:4px;border-top-color:rgba(238,214,233,.86)}.ring-b{inset:14%;transform:rotateY(70deg) rotateZ(-22deg);border-right-width:4px;border-right-color:rgba(185,206,244,.8)}.ring-c{inset:22%;transform:rotateX(36deg) rotateY(57deg);border-bottom-color:rgba(255,218,242,.7)}.orb-pearl{position:absolute;inset:26%;border-radius:44% 56% 51% 49%/59% 42% 58% 41%;background:radial-gradient(circle at 70% 22%,rgba(255,255,255,.74),rgba(196,182,239,.26) 18%,rgba(95,92,166,.08) 49%,rgba(7,10,22,.44) 72%);border:1px solid rgba(239,235,255,.4);box-shadow:inset 18px 3px 28px rgba(224,201,245,.16),inset -16px -9px 30px rgba(101,162,217,.19),0 0 44px rgba(171,144,255,.16);backdrop-filter:blur(4px)}
.orb-caption{position:absolute;z-index:2;left:0;right:0;top:50%;margin:0;transform:translateY(-50%);display:grid;justify-items:center;gap:2px;text-align:center;color:#f4eef7;text-shadow:0 2px 24px rgba(5,7,15,.8)}.orb-caption strong{font-size:clamp(26px,3vw,42px);font-weight:800;letter-spacing:.06em}.orb-caption span{font-size:clamp(14px,1.5vw,21px);font-weight:450;color:#ded9f1;letter-spacing:.02em}
@keyframes orb-float{50%{transform:translateY(-17px) rotateX(5deg)}}@keyframes orb-spin{to{rotate:y 360deg}}
/* Dark violet glass cards, straight from the desktop mockup's feature row. */
.hero-cards{position:relative;z-index:4;width:min(var(--container-max),94vw);margin-inline:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.glass-card{padding:22px;border:1px solid rgba(214,208,255,.22);border-radius:14px;background:linear-gradient(160deg,rgba(38,40,78,.62),rgba(15,18,38,.54));backdrop-filter:blur(18px) saturate(150%);box-shadow:inset 0 1px rgba(236,231,255,.3),0 18px 44px rgba(5,7,18,.42);transition:border-color .16s ease,transform .16s ease}.glass-card:hover{border-color:rgba(226,214,255,.44);transform:translateY(-2px)}.glass-card h2{margin:15px 0 7px;color:#f6f3ff;font-size:17px;font-weight:700;letter-spacing:-.025em}.glass-card p{margin:0;color:#c3bfd8;font-size:13px;line-height:1.6}.card-icon{display:grid;place-items:center;width:40px;height:40px;border:1px solid rgba(219,211,255,.3);border-radius:11px;background:linear-gradient(150deg,rgba(176,164,238,.32),rgba(88,106,180,.18));box-shadow:inset 0 1px rgba(255,255,255,.3)}.card-icon:before{content:"";width:17px;height:17px;border:1.6px solid #e4dcff;border-radius:3px}.icon-cloud:before{border-radius:50% 50% 40% 40%;border-bottom-width:0;height:13px}.icon-clinic:before{border-radius:2px;box-shadow:inset 0 5px 0 -3.4px #e4dcff,inset 0 0 0 5.6px transparent}.icon-device:before{border-radius:3px;height:13px;box-shadow:0 5px 0 -3.6px #e4dcff}
.hero-note{position:relative;z-index:4;width:min(var(--container-max),94vw);margin:-8px auto 0;color:#9d99b4;font-size:12px}

/* One sticky scene and one normalized progress value. */
.story{height:240svh;position:relative;background:#05070a}.story-sticky{height:100svh;position:sticky;top:0;overflow:hidden;display:grid;place-items:center;border-block:1px solid var(--line-dark);color:#fff}.story-layer{position:absolute;inset:0;pointer-events:none}.story-midnight{background:radial-gradient(circle at 72% 45%,rgba(95,78,166,.32),transparent 30%),radial-gradient(circle at 15% 68%,rgba(50,87,137,.28),transparent 34%),#05070a}.story-twilight{background:radial-gradient(circle at 63% 31%,rgba(226,195,231,.72),transparent 30%),linear-gradient(135deg,#403b66,#696690 48%,#8c7f9c);opacity:clamp(0,calc((var(--scene-progress) - .42)*2.8),1)}.story-dusk{background:radial-gradient(ellipse 46% 42% at 84% 8%,rgba(246,232,243,.95),transparent 68%),radial-gradient(ellipse 40% 38% at 60% 26%,rgba(236,214,233,.55),transparent 70%),radial-gradient(ellipse 52% 46% at 4% 76%,rgba(185,206,244,.6),transparent 72%),linear-gradient(155deg,var(--dusk-a),var(--dusk-b) 51%,var(--dusk-c));opacity:clamp(0,calc((var(--scene-progress) - .63)*4.762),1)}.story-ribbon{position:absolute;width:82vw;height:210px;border:2px solid rgba(210,194,255,.42);border-color:rgba(237,224,255,.64) transparent rgba(173,204,255,.36) transparent;border-radius:50%;filter:drop-shadow(0 0 22px rgba(130,110,213,.24));transform:rotate(-12deg) translateY(calc((var(--scene-progress) - .5)*60px));opacity:calc(.36 + var(--scene-progress)*.38)}
.story-grid{position:relative;z-index:3;width:min(var(--container-max),92vw);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.04fr);gap:clamp(24px,3.4vw,56px);align-items:center;opacity:clamp(0,calc((var(--scene-progress) - .18)*8.333),1);will-change:opacity}.story-copy{min-height:402px;position:relative}.story-scene{position:absolute;inset:0;padding:30px 34px;display:flex;flex-direction:column;justify-content:center;opacity:0;transform:translateY(28px);transition:opacity .45s ease,transform .55s cubic-bezier(.25,1,.5,1)}.story-scene.active{opacity:1;transform:none}.story-scene small{color:#e2d8ff;font-size:13px;letter-spacing:.16em;font-weight:800}.story-scene h2{font-size:clamp(34px,3.6vw,52px);line-height:1.06;letter-spacing:-.045em;margin:16px 0}.story-scene p{color:#e8e4f4;font-size:17px;line-height:1.65;max-width:470px}.story-stage{height:min(68vh,660px);position:relative;perspective:1300px}.story-object{position:absolute;width:min(52vw,620px);aspect-ratio:1;left:50%;top:34%;transform:translate(-50%,-50%) rotateX(calc(18deg + var(--scene-progress)*42deg)) rotateY(calc(-24deg + var(--scene-progress)*250deg));transform-style:preserve-3d}.object-ring,.object-surface,.object-rim{position:absolute;border-radius:50%}.object-ring-a{inset:4%;border:1px solid rgba(244,235,255,.58);border-top-width:6px;transform:rotateX(69deg) rotateZ(22deg);box-shadow:0 0 28px rgba(163,128,255,.25)}.object-ring-b{inset:16%;border:1px solid rgba(168,202,255,.58);border-right-width:5px;transform:rotateY(67deg) rotateZ(-18deg)}.object-surface{inset:22%;background:radial-gradient(circle at 68% 22%,rgba(255,255,255,.74),rgba(209,190,242,.2) 19%,rgba(95,107,179,.08) 52%,rgba(8,11,25,.58) 74%);border:1px solid rgba(236,228,255,.48);box-shadow:inset 26px 4px 46px rgba(224,196,239,.19),inset -26px -6px 48px rgba(94,142,202,.2),0 0 54px rgba(153,123,255,.2)}.object-rim{inset:25%;border:2px solid transparent;border-top-color:rgba(255,255,255,.92);border-right-color:rgba(193,175,255,.72);transform:translateZ(42px)}
/* Per-scene demo screens. Decorative (`aria-hidden` on .story-stage) and driven
   by the same scene index as the copy, so no extra engine or listener. The glass
   deepens with --scene-progress, the way .story-copy does, to stay readable once
   the backdrop reaches luminous dusk. */
.story-screens{position:absolute;inset:0;z-index:2;display:grid;place-items:center;pointer-events:none}
.story-screen{position:absolute;width:min(100%,560px);margin:0;border:1px solid rgba(244,238,255,calc(.2 + var(--scene-progress)*.16));border-radius:16px;overflow:hidden;background:linear-gradient(152deg,rgba(31,24,64,calc(.62 + var(--scene-progress)*.3)),rgba(14,18,44,calc(.58 + var(--scene-progress)*.3)));backdrop-filter:blur(22px) saturate(150%);box-shadow:inset 0 1px rgba(244,238,255,.24),0 30px 70px rgba(6,8,22,calc(.3 + var(--scene-progress)*.2));opacity:0;transform:translateY(22px) scale(.985);transition:opacity .45s ease,transform .55s cubic-bezier(.25,1,.5,1)}
.story-screen.active{opacity:1;transform:none}
.screen-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 18px;border-bottom:1px solid rgba(244,238,255,.16);background:rgba(255,255,255,.05)}.screen-brand{font-size:13px;font-weight:800;letter-spacing:-.02em;color:#f3efff}.screen-brand b{margin-left:5px;font-weight:450;color:#c9c3e4}.screen-tag{font-size:11px;color:#bcb6d6}
.screen-shot{display:block;width:100%;height:auto;max-height:clamp(230px,44vh,410px);object-fit:cover;object-position:top center;border-block:1px solid rgba(244,238,255,.14);background:rgba(255,255,255,.04)}
.screen-body{padding:18px}.screen-split{display:grid;grid-template-columns:1fr 1fr;gap:16px}.screen-split .screen-col:last-child{padding-left:16px;border-left:1px solid rgba(244,238,255,.14)}
.screen-label{margin:0;font-size:10px;font-weight:800;letter-spacing:.13em;color:#c6bfe3}.screen-head-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.screen-pill{padding:4px 9px;border:1px solid rgba(244,238,255,.24);border-radius:999px;background:rgba(255,255,255,.07);color:#ded8f4;font-size:10px;font-weight:700}
.file-list,.task-list{list-style:none;margin:12px 0 0;padding:0}
.file-list li{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid rgba(244,238,255,.1);font-size:12px;color:#ebe8f6}.file-list li:last-child{border-bottom:0}.file-chip{flex:none;display:grid;place-items:center;width:26px;height:26px;border:1px solid rgba(244,238,255,.22);border-radius:7px;background:rgba(150,140,220,.2);color:#d7d0f5;font-size:8px;font-style:normal;font-weight:800;letter-spacing:.06em}.file-list span{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-family:ui-monospace,Consolas,monospace}.file-list em{flex:none;color:#aaa4c8;font-size:10px;font-style:normal}
.folder{margin-top:12px;padding:14px;border:1px solid rgba(244,238,255,.18);border-radius:11px;background:rgba(255,255,255,.05)}.folder-name{display:flex;align-items:center;gap:8px;margin:0;color:#f4f1ff;font-size:12px;font-weight:700}.folder-icon{flex:none;width:15px;height:11px;border:1px solid rgba(233,226,255,.66);border-top:3px solid rgba(200,214,255,.9);border-radius:3px}
.tree{list-style:none;margin:10px 0 0;padding-left:5px;color:#cfc9e8;font-family:ui-monospace,Consolas,monospace;font-size:11.5px}.tree li{position:relative;padding:5px 0 5px 20px}.tree li:before{content:"";position:absolute;left:0;top:0;bottom:50%;width:13px;border-left:1px solid rgba(233,226,255,.34);border-bottom:1px solid rgba(233,226,255,.34);border-bottom-left-radius:4px}.tree li:not(:last-child):after{content:"";position:absolute;left:0;top:50%;bottom:0;border-left:1px solid rgba(233,226,255,.34)}
.task-list li{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px 10px;padding:10px 0;border-bottom:1px solid rgba(244,238,255,.1);font-size:12px}.task-list li:last-child{border-bottom:0}.task-name{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:#ebe8f6;font-family:ui-monospace,Consolas,monospace}
.task-state{padding:4px 9px;border-radius:999px;white-space:nowrap;font-size:10.5px;font-weight:700}.task-state.done{border:1px solid rgba(150,224,193,.32);background:rgba(66,150,116,.24);color:#c3e9d8}.task-state.live{border:1px solid rgba(175,203,255,.36);background:rgba(83,116,196,.28);color:#d2e2ff}.task-state.wait{border:1px solid rgba(244,238,255,.2);background:rgba(255,255,255,.07);color:#ded8f2}
.task-bar{grid-column:1/-1;height:4px;border-radius:999px;background:rgba(255,255,255,.12);overflow:hidden}.task-bar i{display:block;height:100%;border-radius:999px;background:var(--gradient-prism)}.fill-62{width:62%}
.export-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;padding-top:14px;border-top:1px solid rgba(244,238,255,.14)}.export-file{color:#ebe8f6;font-family:ui-monospace,Consolas,monospace;font-size:12px}
.metric-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.metric{padding:12px;border:1px solid rgba(244,238,255,.16);border-radius:10px;background:rgba(255,255,255,.05)}.metric span{display:block;color:#b8b1d6;font-size:10px;letter-spacing:.03em}.metric strong{display:block;margin-top:5px;color:#f5f2ff;font-size:16px;font-weight:750;letter-spacing:-.025em}
.screen-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;border-top:1px solid rgba(244,238,255,.16);background:rgba(8,10,26,.3);color:#bcb6d6;font-size:11px}.screen-note{color:#d8cffa;font-weight:750}
.scene-progress{position:absolute;z-index:5;right:30px;top:50%;transform:translateY(-50%);display:grid;gap:11px;opacity:clamp(0,calc((var(--scene-progress) - .20)*10),1)}.scene-dot{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.28);transition:.3s}.scene-dot.on{background:#fff;box-shadow:0 0 12px rgba(207,190,255,.9);transform:scale(1.5)}

/* Stable luminous dusk account entry and authenticated workspace. */
.account-access,.workspace{position:relative;isolation:isolate;color:var(--ink);background:radial-gradient(ellipse 46% 42% at 84% 8%,rgba(246,232,243,.95),transparent 68%),radial-gradient(ellipse 40% 38% at 60% 26%,rgba(236,214,233,.55),transparent 70%),radial-gradient(ellipse 52% 46% at 4% 76%,rgba(185,206,244,.6),transparent 72%),linear-gradient(150deg,var(--dusk-a),var(--dusk-b) 48%,var(--dusk-c));overflow:hidden}.account-access{min-height:100svh;padding:130px 28px 100px;display:grid;place-items:center}.dusk-field i{position:absolute;border:1px solid rgba(255,255,255,.5);border-radius:50%;filter:drop-shadow(0 0 20px rgba(139,115,192,.18))}.dusk-field i:first-child{width:65vw;height:26vw;right:-15vw;top:12%;transform:rotate(-15deg)}.dusk-field i:last-child{width:58vw;height:24vw;left:-17vw;bottom:3%;transform:rotate(18deg)}.access-wrap{position:relative;z-index:2;width:min(1120px,100%);display:grid;grid-template-columns:1fr minmax(360px,470px);gap:9vw;align-items:center}.intro h2{font-size:clamp(42px,5vw,68px);line-height:1.02;letter-spacing:-.055em;margin:0;color:#17182a}.lead{font-size:17px;color:#43455f;margin:27px 0 0;line-height:1.65}.intro-note{font-size:13px;margin-top:37px;color:#4d426f;display:flex;align-items:center;gap:9px}.status-dot{width:8px;height:8px;background:#7767c8;border-radius:50%;box-shadow:0 0 12px rgba(113,88,195,.55)}
.card{background:linear-gradient(145deg,rgba(249,246,255,.54),rgba(224,217,239,.37));border:1px solid rgba(255,255,255,.61);border-radius:18px;padding:28px;backdrop-filter:blur(22px) saturate(145%);box-shadow:inset 0 1px rgba(255,255,255,.74)}.login-card{padding:38px}.card h2{font-size:21px;letter-spacing:-.04em;margin:0 0 10px}.muted,.hint{color:#5d5d76}.hint{font-size:12px;margin:13px 0 0;line-height:1.65}.login-card .eyebrow,.workspace .eyebrow{color:#6755a4}.login-card form{margin-top:24px}label{display:block;font-size:13px;font-weight:700;margin-bottom:8px}input,select{width:100%;min-height:46px;border:1px solid rgba(85,74,122,.25);border-radius:9px;padding:12px;background:rgba(249,247,255,.58);color:#1e2032}input:focus,select:focus{outline:2px solid rgba(115,92,205,.55);outline-offset:2px}.google-primary{width:100%;margin-top:16px;color:#211d35;border-color:rgba(113,91,179,.34);background:linear-gradient(110deg,rgba(244,239,255,.9),rgba(215,204,247,.82),rgba(225,237,255,.9));box-shadow:inset 0 1px rgba(255,255,255,.9)}button:disabled{opacity:.48;cursor:not-allowed;transform:none}.divider{display:flex;gap:14px;align-items:center;color:#77748c;font-size:12px;margin-top:24px}.divider:before,.divider:after{content:"";height:1px;background:rgba(76,67,104,.18);flex:1}#email-button,#consume-login{width:100%;margin-top:16px}
.workspace{min-height:calc(100svh - 72px);padding:126px max(5vw,28px) 82px}.workspace:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(120deg,rgba(168,151,212,.17),transparent 38%,rgba(126,165,215,.17));pointer-events:none}.workspace>*{max-width:1180px;margin-inline:auto}.workspace-heading,.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.workspace-heading{margin-bottom:25px}.workspace-heading h1{font-size:40px;letter-spacing:-.055em;margin:7px 0}.actions{display:flex;gap:8px}.workspace button{color:#17192a}.workspace .secondary{color:#352e51;background:rgba(249,246,255,.39);border-color:rgba(91,73,137,.32)}.workspace .quiet{color:#4f4d68;background:transparent;border-color:transparent}.workspace .danger{color:#8a314d;background:rgba(255,239,246,.54);border-color:rgba(160,66,96,.3)}.clinic-picker{display:flex;gap:16px;align-items:center;margin:24px auto 20px}.clinic-picker label{margin:0;white-space:nowrap}.clinic-picker select{max-width:360px}.badge{font-size:12px;border:1px solid rgba(103,81,168,.27);border-radius:999px;padding:5px 12px;background:rgba(229,219,249,.55);color:#594394}.summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.summary-grid h2{font-size:27px}.summary-grid p:last-child{margin:0;font-size:13px}.section-card{margin-top:20px}.tabs{display:flex;gap:8px;margin-top:16px}.tab-button{padding:9px 16px;min-height:37px;font-size:13px}.section-heading p{font-size:13px;margin:0}.table-wrap{overflow:auto;margin-top:22px}table{border-collapse:collapse;width:100%;text-align:left;font-size:14px;white-space:nowrap}th{font-size:12px;font-weight:650;color:#615f78;background:rgba(235,229,246,.44)}td,th{padding:14px;border-bottom:1px solid rgba(79,69,111,.15)}td button{padding:7px 12px;min-height:34px;font-size:12px}td select{min-width:130px;padding:7px;min-height:34px;font-size:13px}.registration-form{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end}.code-box,.request-state{background:rgba(226,219,241,.55);border:1px solid rgba(255,255,255,.45);padding:18px;margin-top:18px;border-radius:11px}.code-box output{display:block;font-family:monospace;font-size:16px;overflow-wrap:anywhere;user-select:all}.empty{text-align:center;color:#77758b;padding:28px}.request-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-divider{height:1px;background:rgba(72,62,103,.16);margin:28px 0}.approval-list{display:grid;gap:12px;margin-top:20px}.approval-item{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid rgba(83,70,122,.17);border-radius:12px;padding:16px;background:rgba(248,245,255,.2)}.approval-item p{margin:2px 0}.approval-actions,.operator-actions{display:flex;flex-wrap:wrap;gap:7px;flex-shrink:0}.operator-device-panel{border:1px solid rgba(83,70,122,.17);background:rgba(248,245,255,.26);border-radius:12px;padding:18px;margin-top:18px}.operator-device-panel h3{font-size:16px;margin:0 0 8px}.operator-device-panel p{font-size:13px;margin:0 0 10px}.hint a{color:#51408f}
footer{padding:24px;text-align:center;color:#6e6c82;background:#b5bad0;font-size:12px;line-height:1.9}footer a{color:#51408f}

/* The reading panel is driven by the same --scene-progress as the backdrop: it
   deepens into violet glass exactly as the dusk layer brightens, so the white
   copy keeps its contrast without swapping text colour mid-transition. */
.story-copy{border:1px solid rgba(244,238,255,calc(.18 + var(--scene-progress)*.16));border-radius:18px;background:linear-gradient(152deg,rgba(28,21,58,calc(.30 + var(--scene-progress)*.44)),rgba(13,17,42,calc(.24 + var(--scene-progress)*.44)));backdrop-filter:blur(15px) saturate(145%);box-shadow:inset 0 1px rgba(244,238,255,calc(.16 + var(--scene-progress)*.2)),0 26px 62px rgba(12,10,36,calc(.14 + var(--scene-progress)*.2))}
.scene-progress{padding:11px 9px;border-radius:999px;border:1px solid rgba(240,234,255,calc(.16 + var(--scene-progress)*.16));background:rgba(20,15,46,calc(.2 + var(--scene-progress)*.42));backdrop-filter:blur(10px)}.scene-dot.on{background:var(--gradient-prism)}
.account-access .eyebrow{color:#6755a4}.intro h2{font-size:clamp(38px,3.9vw,56px)}

@media(max-width:900px){.site-nav,.header-label{display:none}.site-header{padding-inline:18px}.header-download{padding:8px 11px}.hero{gap:34px;padding:calc(var(--header-height) + 26px) 20px 44px}.hero-grid{grid-template-columns:1fr;gap:20px}.hero h1{font-size:clamp(34px,9.4vw,46px)}.hero-orb{order:-1;width:min(74vw,360px)}.hero-body{font-size:15px}.hero-actions .button{flex:1 1 auto}.hero-cards{grid-template-columns:1fr 1fr;gap:12px}.glass-card{padding:17px}.glass-card h2{font-size:15px;margin-top:12px}.glass-card p{font-size:12px}.story-grid{display:block;width:100%}.story-copy{position:absolute;z-index:4;left:6vw;right:6vw;bottom:8svh;min-height:250px}.story-scene{padding:20px 22px;justify-content:flex-end}.story-scene h2{font-size:34px}.story-scene p{font-size:15px}.story-stage{height:100svh}.story-object{width:82vw;top:32%}.story-screens{place-items:start center;padding:14svh 14px 0}.story-screen{width:100%}.screen-split{grid-template-columns:1fr;gap:14px}.screen-split .screen-col:last-child{padding:14px 0 0;border-left:0;border-top:1px solid rgba(244,238,255,.14)}.screen-shot{max-height:34svh}.metric-row{grid-template-columns:1fr}.screen-body{padding:15px}.screen-foot span:first-child{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.scene-progress{left:50%;right:auto;top:auto;bottom:calc(8svh + 258px);transform:translateX(-50%);grid-auto-flow:column;gap:10px;padding:8px 11px}.access-wrap{grid-template-columns:1fr;gap:38px}.account-access{padding:110px 18px 70px}.intro h2{font-size:38px}.intro .lead,.intro-note{display:none}.login-card{padding:27px}.workspace{padding:108px 18px 64px}.workspace-heading,.section-heading{align-items:flex-start;flex-direction:column}.summary-grid,.request-fields{grid-template-columns:1fr}.registration-form{grid-template-columns:1fr}.clinic-picker{flex-wrap:wrap}.card{padding:22px}.approval-item{align-items:flex-start;flex-direction:column}.operator-actions{min-width:230px}}
@media(max-width:560px){.hero{gap:16px;padding-bottom:30px}.hero-orb{width:min(46vw,190px)}.hero-body,.hero-cards,.hero-note{display:none}.hero-actions{margin-top:20px;flex-direction:column}.hero-actions .button{min-height:46px;padding-block:11px}.hero-meta{margin-top:12px}}
@media(max-width:900px) and (max-height:900px){.hero-cards,.hero-note{display:none}.hero-orb{width:min(48vw,250px)}}
/* Reduced motion: no pin spacer, no scrub. The section settles straight into the
   luminous dusk end state and the three scenes read as ordinary document flow. */
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.orb-shell{animation:none}.story{height:auto}.story-sticky{position:relative;height:auto;min-height:100svh;padding:0 0 86px;--scene-progress:1;display:block}.hero{position:relative;inset:auto;min-height:100svh;opacity:1}.story-grid{opacity:1;margin:86px auto 0}.story-twilight{opacity:0}.story-dusk{opacity:1}.story-ribbon{transform:rotate(-12deg)}.story-copy{position:static;min-height:0;padding:30px 34px}.story-scene{position:static;padding:0;opacity:1;transform:none;transition:none}.story-scene+.story-scene{margin-top:32px;padding-top:28px;border-top:1px solid rgba(244,238,255,.2)}.story-stage{height:auto;perspective:none}.story-object{position:relative;left:auto;top:auto;width:min(58vw,300px);margin:0 auto 24px;transform:rotateX(36deg) rotateY(44deg)}.story-screens{position:static;display:grid;gap:18px;place-items:stretch}.story-screen{position:static;width:100%;opacity:1;transform:none;transition:none}.scene-progress{display:none}.button,button{transition:none}}
