:root{--ink:#0b1b2b;--ink-2:#53677a;--paper:#f3f7fb;--white:#fff;--line:rgba(25,69,111,.14);--accent:#4f7fca;--accent-deep:#183b63;--ice:#dfeafb;--success:#55a88a;--shadow:0 22px 80px rgba(23,63,102,.14);--radius-xl:34px;--radius-lg:24px;--radius-md:16px;--font-sans:"SF Pro Display","SF Pro Text",-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Helvetica Neue","Microsoft YaHei",sans-serif;--font-mono:"SF Mono","SFMono-Regular","Cascadia Mono",ui-monospace,"Menlo","Consolas",monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-synthesis:none;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.13;z-index:10;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.11'/%3E%3C/svg%3E")}a{text-decoration:none;color:inherit}button,input{font-family:var(--font-sans)}button{font:inherit;cursor:pointer;border:0;background:none;color:inherit}.section-pad{padding-left:clamp(24px,7vw,120px);padding-right:clamp(24px,7vw,120px)}[hidden]{display:none!important}.ambient{position:absolute;z-index:-1;border-radius:50%;filter:blur(1px);opacity:.6}.ambient-one{width:650px;height:650px;top:60px;right:-280px;background:radial-gradient(circle,#cfe1fc 0,rgba(207,225,252,.25) 46%,transparent 72%)}.ambient-two{width:500px;height:500px;top:1120px;left:-290px;background:radial-gradient(circle,#d4edf0 0,rgba(212,237,240,.22) 48%,transparent 70%)}
.site-header{height:82px;position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,7vw,120px);background:rgba(243,247,251,.75);backdrop-filter:blur(20px);border-bottom:1px solid rgba(25,69,111,.09)}.brand{display:flex;align-items:center;gap:11px}.brand-mark{display:flex;gap:3px;align-items:flex-end;width:25px;height:23px}.brand-mark span{display:block;width:6px;border-radius:5px;background:var(--ink);transform:skew(-18deg)}.brand-mark span:nth-child(1){height:12px}.brand-mark span:nth-child(2){height:19px;background:var(--accent)}.brand-mark span:nth-child(3){height:15px}.brand-copy{display:flex;flex-direction:column;line-height:1}.brand-copy strong{font-size:14px;letter-spacing:.12em}.brand-copy small{font-size:10px;letter-spacing:.16em;margin-top:5px;color:var(--ink-2)}.main-nav{display:flex;gap:29px;margin-left:80px}.nav-link{font-size:12px;color:#718398;position:relative;padding:8px 0;transition:.25s}.nav-link:hover,.nav-link.active{color:var(--ink)}.nav-link.active:after{content:"";position:absolute;bottom:0;left:50%;width:4px;height:4px;border-radius:50%;background:var(--accent);transform:translateX(-50%)}.nav-lock{font-size:12px;color:var(--accent);margin-left:5px}.profile-pill{display:flex;align-items:center;gap:9px;background:rgba(255,255,255,.7);border:1px solid rgba(25,69,111,.12);border-radius:100px;padding:9px 13px;font-size:11px;transition:.25s}.profile-pill:hover{background:var(--white);box-shadow:0 5px 16px rgba(23,63,102,.1)}.status-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px rgba(79,127,202,.14)}.chevron{font-size:15px;margin-left:2px}.page-view{min-height:calc(100vh - 82px)}
.hero{min-height:calc(100vh - 82px);padding-top:clamp(70px,11vh,135px);padding-bottom:55px;position:relative}.hero-grid{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(380px,.97fr);gap:8vw;align-items:center;max-width:1400px;margin:0 auto}.eyebrow{font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;color:#748ba0;margin:0 0 22px;text-transform:uppercase}.eyebrow-line{width:36px;height:1px;background:var(--accent);display:inline-block;vertical-align:middle;margin-right:10px}.hero h1{font-size:clamp(52px,7.1vw,100px);line-height:.98;letter-spacing:-.065em;margin:0;max-width:750px;font-weight:700}.hero h1 em,.section-heading h2 em,.capability-intro h2 em,.closing-card h2 em,.apps-hero h1 em{font-style:normal;color:var(--accent)}.hero-intro{max-width:440px;font-size:15px;line-height:1.9;color:#63788c;margin:33px 0 34px}.hero-actions{display:flex;align-items:center;gap:26px}.button{display:inline-flex;align-items:center;justify-content:center;gap:32px;border-radius:100px;padding:15px 19px 15px 23px;font-size:12px;transition:transform .25s,box-shadow .25s}.button:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(23,63,102,.18)}.button span{font-size:17px;line-height:0}.button-dark{color:#fff;background:var(--accent-deep)}.button-light{color:var(--ink);background:#fff}.text-button{font-size:12px;color:#536b80;padding:10px 0}.text-button span{font-size:18px;margin-left:7px;transition:.2s}.text-button:hover span{margin-left:13px}.hero-footnote{margin-top:68px;font-size:10px;color:#8295a5;display:flex;align-items:center;gap:8px;font-family:var(--font-mono)}.hero-footnote strong{color:var(--success);font-weight:500}.signal-icon{font-size:18px;color:var(--accent);line-height:0}.footnote-dot{width:4px;height:4px;border-radius:50%;background:#b8c7d5}.hero-visual{height:580px;position:relative;display:flex;align-items:center;justify-content:center}.hero-visual:before{content:"";position:absolute;width:78%;height:78%;border-radius:50%;background:radial-gradient(circle at 35% 28%,rgba(161,199,249,.9),rgba(117,161,218,.16) 46%,transparent 70%);filter:blur(22px)}.hero-visual-card{width:min(370px,70%);height:475px;border-radius:190px 190px 22px 22px;background:linear-gradient(155deg,#213f61,#0b2038);position:relative;z-index:2;box-shadow:25px 35px 80px rgba(23,63,102,.24),inset 0 1px 0 rgba(255,255,255,.18);color:#e4edf7;display:flex;flex-direction:column;justify-content:space-between;padding:28px 25px;overflow:hidden}.hero-visual-card:after{content:"";position:absolute;width:240px;height:240px;border-radius:50%;right:-55px;bottom:75px;background:radial-gradient(circle,rgba(79,127,202,.85),rgba(79,127,202,.02) 68%,transparent)}.visual-topline,.visual-bottomline{display:flex;justify-content:space-between;font:10px var(--font-mono);color:rgba(255,255,255,.45);position:relative;z-index:1}.visual-center{display:flex;align-items:center;flex-direction:column;gap:16px;position:relative;z-index:1}.visual-kicker{font:10px var(--font-mono);line-height:1.5;letter-spacing:.14em;text-align:center;color:rgba(255,255,255,.52)}.visual-center strong{font-size:150px;font-weight:400;line-height:.8;color:rgba(255,255,255,.93);letter-spacing:-.15em;margin-left:-18px;transform:rotate(-16deg)}.visual-caption{font-size:11px;color:rgba(255,255,255,.65);letter-spacing:.08em}.orbit{position:absolute;border:1px solid rgba(55,102,157,.22);border-radius:50%;z-index:1}.orbit-back{width:530px;height:230px;transform:rotate(-36deg)}.orbit-front{width:550px;height:340px;transform:rotate(41deg);border-color:rgba(79,127,202,.34)}.floating-chip{position:absolute;z-index:3;display:flex;align-items:center;gap:9px;padding:11px 14px;border-radius:100px;background:rgba(255,255,255,.78);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.95);box-shadow:0 12px 25px rgba(23,63,102,.12);font-size:10px}.floating-chip strong{font:500 13px var(--font-mono);margin-left:8px}.chip-top{top:112px;right:1%}.chip-bottom{bottom:99px;left:4%}.chip-dot{width:8px;height:8px;border-radius:50%}.chip-dot.blue{background:var(--accent);box-shadow:0 0 0 4px rgba(79,127,202,.14)}.chip-icon{width:17px;height:17px;border-radius:50%;display:grid;place-items:center;color:#567fc1;background:#e5efff}.scroll-cue{position:absolute;bottom:43px;left:50%;transform:translateX(-50%);font:10px var(--font-mono);color:#8d9ead;display:flex;align-items:center;gap:11px}.scroll-cue span{display:block;width:25px;height:1px;background:#a2b3c1}.signal-strip{display:grid;grid-template-columns:repeat(3,1fr) 1.2fr;gap:20px;padding-top:42px;padding-bottom:42px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);max-width:1400px;margin:0 auto}.signal-item{display:flex;flex-direction:column;gap:5px}.signal-number{font-size:38px;letter-spacing:-.07em;font-weight:600}.signal-number span{font-size:17px;color:var(--accent);margin-left:3px;letter-spacing:0}.signal-label{font:10px var(--font-mono);color:#798ea1}.signal-note{font-size:12px;line-height:1.55;color:#808f9d;align-self:center;justify-self:end}.signal-note strong{color:var(--ink);font-weight:600}
.work-section{padding-top:140px;padding-bottom:150px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;max-width:1400px;margin:0 auto 58px}.section-heading h2{font-size:clamp(42px,5.5vw,72px);line-height:1.03;letter-spacing:-.065em;margin:0;font-weight:650}.section-description{max-width:260px;font-size:13px;line-height:1.8;color:#74899b;margin:0 5% 3px 0}.work-grid{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:16px}.work-card{background:#fff;border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 12px 40px rgba(23,63,102,.06);transition:transform .35s,box-shadow .35s}.work-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.work-card-art{height:300px;position:relative;overflow:hidden}.work-card-large .work-card-art{height:360px}.art-flow{background:#173b62}.art-flow:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 72% 26%,rgba(196,222,255,.95),transparent 22%),radial-gradient(circle at 25% 70%,rgba(68,134,185,.7),transparent 29%),linear-gradient(120deg,#112d4a,#2b6185)}.flow-orb{position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.35)}.orb-a{width:220px;height:220px;right:8%;top:10%;background:radial-gradient(circle at 35% 35%,rgba(255,255,255,.8),rgba(184,216,250,.1) 55%,transparent 70%);box-shadow:inset -20px -25px 40px rgba(10,34,58,.35)}.orb-b{width:115px;height:115px;left:21%;bottom:-20px;background:rgba(79,127,202,.8);filter:blur(1px)}.flow-line{position:absolute;width:90%;height:130%;border:1px solid rgba(255,255,255,.23);border-radius:50%;transform:rotate(35deg)}.line-a{left:-36%;top:-33%}.line-b{right:-37%;top:-45%;border-color:rgba(150,205,241,.5)}.art-label{position:absolute;top:22px;left:23px;color:rgba(255,255,255,.65);font:10px var(--font-mono);letter-spacing:.08em}.art-corner{position:absolute;right:22px;bottom:20px;color:rgba(255,255,255,.6);font-size:11px;line-height:1.4;text-align:right}.art-data{background:#dce9f8}.art-data:after{content:"";position:absolute;inset:0;background:linear-gradient(130deg,transparent 46%,rgba(255,255,255,.8) 46.2%,transparent 46.7%),linear-gradient(30deg,transparent 67%,rgba(255,255,255,.65) 67.2%,transparent 67.7%);opacity:.65}.data-bars{position:absolute;bottom:38px;left:22px;right:22px;height:155px;display:flex;align-items:flex-end;gap:10px}.data-bars i{display:block;flex:1;border-radius:5px 5px 0 0;background:linear-gradient(#6c99e7,#bad4fa);box-shadow:0 10px 20px rgba(65,93,190,.14)}.data-bars i:nth-child(1){height:35%}.data-bars i:nth-child(2){height:52%}.data-bars i:nth-child(3){height:75%}.data-bars i:nth-child(4){height:63%}.data-bars i:nth-child(5){height:91%;background:linear-gradient(#557fbe,#aac9f0)}.data-axis{position:absolute;bottom:14px;right:22px;font:9px var(--font-mono);color:#6f7e9c}.art-data .art-label{color:#6f7e9c}.art-ai{background:#102a47;display:grid;place-items:center}.ai-ring{position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.14)}.ring-one{width:230px;height:230px;border-color:rgba(124,178,242,.7);box-shadow:0 0 80px rgba(94,151,223,.25)}.ring-two{width:150px;height:150px;border-color:rgba(174,211,246,.7);transform:rotate(45deg);border-radius:43%}.ai-core{font:700 43px var(--font-mono);color:#fff;letter-spacing:-.13em;margin-left:-9px;z-index:1}.art-ai .art-label{color:rgba(255,255,255,.5)}.work-card-copy{display:flex;justify-content:space-between;align-items:flex-end;padding:24px 22px 25px}.card-kicker{font:10px var(--font-mono);color:#909fac;margin:0 0 9px}.work-card h3{font-size:27px;line-height:1.05;letter-spacing:-.05em;margin:0;font-weight:600}.round-arrow{width:34px;height:34px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:17px;transition:.25s}.work-card:hover .round-arrow{background:var(--accent-deep);color:#fff;transform:rotate(45deg)}.capabilities-section{padding-bottom:150px}.capabilities-panel{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:.75fr 1.25fr;background:#102a47;color:#fff;border-radius:var(--radius-xl);overflow:hidden;min-height:575px;box-shadow:var(--shadow);position:relative}.capabilities-panel:after{content:"";position:absolute;width:420px;height:420px;right:-90px;bottom:-150px;border-radius:50%;background:radial-gradient(circle,rgba(92,150,220,.7),transparent 68%);filter:blur(20px)}.capability-intro{padding:68px 48px;position:relative;z-index:1}.eyebrow.light{color:rgba(255,255,255,.47)}.capability-intro h2{font-size:clamp(40px,4.4vw,65px);letter-spacing:-.07em;line-height:1.02;margin:0 0 26px}.capability-intro>p:last-child{max-width:260px;font-size:13px;line-height:1.8;color:rgba(255,255,255,.52)}.capability-list{padding:45px 50px 45px 20px;position:relative;z-index:1;display:flex;flex-direction:column;justify-content:center}.capability-row{display:grid;grid-template-columns:50px 1fr 1fr 30px;align-items:center;gap:16px;padding:24px 0;border-bottom:1px solid rgba(255,255,255,.14);transition:.25s}.capability-row:hover{padding-left:8px;border-color:#79a8e0}.capability-row>span{font:10px var(--font-mono);color:#86b3e5}.capability-row strong{font-size:17px;font-weight:500}.capability-row small{font-size:11px;color:rgba(255,255,255,.43)}.capability-row i{font-size:18px;font-style:normal;text-align:right;color:rgba(255,255,255,.5)}
.apps-page{background:linear-gradient(180deg,#eff5fc 0,#f7faff 36%,var(--paper) 100%)}.apps-hero{max-width:1400px;margin:0 auto;padding-top:95px;padding-bottom:64px;display:flex;align-items:flex-end;justify-content:space-between;gap:30px}.apps-hero h1{font-size:clamp(52px,7vw,92px);line-height:.94;letter-spacing:-.07em;margin:0}.apps-hero>div>p:last-child{max-width:430px;color:#657f98;font-size:14px;line-height:1.8;margin:28px 0 0}.back-home{font-size:12px;color:#54708c;border-bottom:1px solid #9cb3c8;padding:8px 0}.apps-content{padding-bottom:120px}.apps-locked{max-width:760px;margin:0 auto;padding:80px 45px;text-align:center;background:rgba(255,255,255,.73);border:1px solid rgba(75,119,169,.14);border-radius:30px;box-shadow:var(--shadow);backdrop-filter:blur(15px)}.locked-orb{width:76px;height:76px;border-radius:25px;display:grid;place-items:center;margin:0 auto 24px;background:linear-gradient(145deg,#1b4a78,#112b48);color:#fff;font-size:36px;box-shadow:0 18px 36px rgba(23,63,102,.2)}.apps-locked h2{font-size:36px;letter-spacing:-.06em;margin:0 0 14px}.apps-locked>p:not(.eyebrow){max-width:460px;margin:0 auto 30px;color:#748ca1;font-size:13px;line-height:1.8}.admin-shell{max-width:1400px;min-height:640px;display:grid;grid-template-columns:230px 1fr;margin:0 auto;background:#fff;border-radius:var(--radius-xl);overflow:hidden;box-shadow:0 15px 60px rgba(23,63,102,.12);border:1px solid rgba(25,69,111,.06)}.admin-sidebar{background:#f4f8fc;padding:28px 17px 20px;display:flex;flex-direction:column}.admin-user{display:flex;align-items:center;gap:10px;padding:0 7px 30px;border-bottom:1px solid var(--line);position:relative}.avatar{width:33px;height:33px;display:grid;place-items:center;border-radius:12px;color:#fff;background:linear-gradient(145deg,#1c4672,#7294b1);font-size:13px}.admin-user strong{display:block;font-size:11px}.admin-user small{display:block;font-size:9px;color:#99a8b4;margin-top:3px}.online-dot{width:5px;height:5px;background:var(--success);border-radius:50%;position:absolute;right:3px;top:5px;box-shadow:0 0 0 4px rgba(85,168,138,.14)}.side-nav{padding-top:22px;display:flex;flex-direction:column;gap:5px}.side-link{display:flex;align-items:center;gap:12px;padding:12px 10px;border-radius:10px;text-align:left;color:#7f929f;font-size:11px;transition:.25s}.side-link span{font-size:16px;width:18px;text-align:center}.side-link:hover,.side-link.active{background:#fff;color:var(--ink);box-shadow:0 3px 11px rgba(23,63,102,.06)}.side-link.active{font-weight:600}.side-link.active span{color:var(--accent)}.sidebar-footer{margin-top:auto;border-top:1px solid var(--line);padding:18px 8px 0;display:flex;align-items:flex-start;gap:9px;color:#778b9b;font:9px var(--font-mono);line-height:1.5}.lock-mini{font-size:18px;color:var(--success)}.sidebar-footer small{color:#a8b5bf}.admin-main{padding:30px 38px 36px;background:#fff}.admin-topbar{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:25px}.admin-greeting{font-size:11px;color:#9aa9b5;margin:0 0 8px}.admin-topbar h3{font-size:25px;letter-spacing:-.05em;margin:0;font-weight:650}.admin-top-actions{display:flex;align-items:center;gap:17px}.icon-button{width:30px;height:30px;border-radius:50%;border:1px solid var(--line);font-size:14px;color:#798d9d;position:relative}.icon-button i{position:absolute;width:4px;height:4px;border-radius:50%;background:var(--accent);top:5px;right:7px}.admin-login-inline{font-size:10px;color:var(--accent);border-bottom:1px solid rgba(79,127,202,.35);padding:3px 0}.admin-login-inline span{font-size:14px;margin-left:5px}.admin-view{padding-top:28px}.view-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.view-toolbar h4{margin:0;font-size:14px}.view-toolbar p{margin:4px 0 0;color:#929fa9;font-size:10px}.view-toolbar button{font-size:10px;color:var(--accent);padding:8px 12px;border:1px solid rgba(79,127,202,.26);border-radius:100px}.dashboard-grid{display:grid;grid-template-columns:1.4fr .8fr .8fr;gap:12px;margin-bottom:14px}.dash-card{padding:19px 18px;border-radius:16px;background:#f6f9fc;min-height:108px}.dash-card:first-child{background:#163b60;color:#fff;position:relative;overflow:hidden}.dash-card:first-child:after{content:"";position:absolute;right:-28px;bottom:-47px;width:145px;height:145px;border-radius:50%;background:radial-gradient(circle,rgba(103,166,230,.7),transparent 68%)}.dash-label{font:10px var(--font-mono);color:#9aaab6;display:flex;justify-content:space-between}.dash-card:first-child .dash-label{color:rgba(255,255,255,.5)}.dash-big{font-size:30px;letter-spacing:-.06em;margin-top:19px;display:block;position:relative;z-index:1}.dash-big small{font-size:11px;color:#7dd0ab;letter-spacing:0;margin-left:4px}.dash-value{font-size:28px;letter-spacing:-.06em;margin-top:17px;display:block}.dash-value small{font-size:10px;color:#969fa5;letter-spacing:0}.dash-trend{font:9px var(--font-mono);color:var(--success);margin-top:7px}.module-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.module-card{display:flex;align-items:center;gap:13px;border:1px solid var(--line);border-radius:15px;padding:15px 16px;transition:.25s;background:#fff;cursor:pointer}.module-card:hover{border-color:rgba(79,127,202,.4);box-shadow:0 9px 23px rgba(23,63,102,.08);transform:translateY(-2px)}.module-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font:600 13px var(--font-mono);color:#fff;flex:none}.module-icon.blue{background:linear-gradient(145deg,#6998e1,#335e9f)}.module-icon.deep{background:linear-gradient(145deg,#4f789d,#162f49)}.module-icon.ice{background:linear-gradient(145deg,#76bdd2,#327e9f)}.module-icon.steel{background:linear-gradient(145deg,#7e9db7,#405c72)}.module-card strong{font-size:12px;display:block}.module-card small{font-size:9px;color:#9aa7b1;display:block;margin-top:4px}.module-status{margin-left:auto;align-self:flex-start;width:6px;height:6px;border-radius:50%;background:var(--success);box-shadow:0 0 0 4px rgba(85,168,138,.12)}.module-status.pending{background:#94a9c0;box-shadow:0 0 0 4px rgba(148,169,192,.12)}.vault-list{display:flex;flex-direction:column;gap:9px}.vault-row{display:grid;grid-template-columns:34px 1fr 1.05fr 1fr auto;align-items:center;gap:12px;padding:14px 13px;border:1px solid var(--line);border-radius:14px}.vault-site{font-size:11px;font-weight:600}.vault-meta{display:block;font:9px var(--font-mono);color:#9aa1a5;margin-top:4px}.vault-secret,.vault-username{font:10px var(--font-mono);color:#6f7f8d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vault-action{font-size:10px;color:var(--accent);text-align:right;white-space:nowrap}.vault-action + .vault-action{margin-left:8px}.vault-actions{display:flex;justify-content:flex-end;gap:8px}.empty-note{padding:28px 18px;text-align:center;background:#f6f9fc;border-radius:16px;color:#8b9aa6;font-size:11px;line-height:1.8}.notes-list{display:flex;flex-direction:column;gap:10px}.note-row{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:14px 4px;font-size:11px}.note-row small{font:9px var(--font-mono);color:#9ba8b1}
.site-footer{display:flex;justify-content:space-between;align-items:center;max-width:1400px;margin:0 auto;border-top:1px solid var(--line);padding-top:22px;padding-bottom:28px;color:#8a9aa8;font-size:10px}.footer-brand{display:flex;align-items:center;gap:10px}.brand-mark.small{transform:scale(.65);transform-origin:left center;margin-right:-6px}.site-footer a{color:var(--ink)}.closing-section{padding-bottom:100px}.closing-card{max-width:1400px;margin:0 auto;background:#102a47;border-radius:var(--radius-xl);min-height:350px;color:#fff;padding:58px 62px;position:relative;overflow:hidden}.closing-card:after{content:"";position:absolute;right:5%;top:-180px;width:530px;height:530px;border-radius:50%;border:1px solid rgba(124,182,239,.35);box-shadow:0 0 0 30px rgba(94,151,223,.04),0 0 0 70px rgba(94,151,223,.025)}.closing-card h2{font-size:clamp(42px,5vw,70px);line-height:1.02;letter-spacing:-.07em;margin:0 0 31px;position:relative;z-index:1}.closing-card .button{position:relative;z-index:1}.closing-mark{position:absolute;right:7%;bottom:32px;color:rgba(255,255,255,.35);font:12px var(--font-mono);z-index:2}.closing-mark span{color:#83b6e9;padding:0 5px}
.modal-backdrop,.credential-backdrop,.history-backdrop{position:fixed;inset:0;background:rgba(10,28,48,.55);backdrop-filter:blur(12px);z-index:50;display:grid;place-items:center;opacity:0;pointer-events:none;transition:opacity .25s}.modal-backdrop.open,.credential-backdrop.open,.history-backdrop.open{opacity:1;pointer-events:auto}.login-modal,.credential-modal,.history-modal{width:min(420px,calc(100% - 36px));background:#f7faff;border-radius:25px;padding:36px 34px 29px;position:relative;box-shadow:0 30px 100px rgba(0,0,0,.3);transform:translateY(15px);transition:.3s}.modal-backdrop.open .login-modal,.credential-backdrop.open .credential-modal,.history-backdrop.open .history-modal{transform:translateY(0)}.modal-close{position:absolute;right:17px;top:14px;font-size:24px;color:#8e9eaa}.modal-icon{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;background:#173b62;color:#fff;font-size:25px;margin-bottom:25px}.login-modal h2,.credential-modal h2,.history-modal h2{font-size:30px;letter-spacing:-.06em;margin:0 0 11px}.modal-subtitle{font-size:11px;line-height:1.65;color:#808f9d;margin:0 0 24px}.login-modal label,.credential-modal label{display:block;font-size:10px;color:#7e909e;margin-top:13px}.login-modal input,.credential-modal input{display:block;width:100%;border:1px solid var(--line);background:#fff;border-radius:10px;padding:12px 13px;margin-top:7px;outline:0;font-size:12px;color:var(--ink);font-family:inherit}.login-modal input:focus,.credential-modal input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(79,127,202,.1)}.button.full{width:100%;margin-top:23px}.demo-hint{text-align:center;color:#9ba9b3;font:9px var(--font-mono);margin:17px 0 0}.credential-modal{width:min(480px,calc(100% - 36px));max-height:90vh;overflow:auto}.history-modal{width:min(520px,calc(100% - 36px));max-height:75vh;overflow:auto}.history-list{display:flex;flex-direction:column;gap:9px;margin-top:20px}.history-item{padding:13px 14px;border:1px solid var(--line);border-radius:13px;background:#fff}.history-item strong{font-size:11px}.history-item small{display:block;font:9px var(--font-mono);color:#8c9ca8;margin-top:6px}.history-item p{font-size:10px;color:#667d92;margin:8px 0 0}.toast{position:fixed;bottom:29px;left:50%;transform:translate(-50%,20px);background:#173b62;color:#fff;padding:12px 17px;border-radius:100px;font-size:11px;box-shadow:0 12px 30px rgba(23,63,102,.25);opacity:0;pointer-events:none;transition:.3s;z-index:70}.toast.show{opacity:1;transform:translate(-50%,0)}.reveal{opacity:0;transform:translateY(24px);animation:reveal .8s forwards}.reveal-delay{animation-delay:.16s}.reveal-delay-short{animation-delay:.1s}@keyframes reveal{to{opacity:1;transform:translateY(0)}}
@media (max-width:900px){.main-nav{gap:17px;margin-left:20px}.hero-grid{grid-template-columns:1fr;gap:30px}.hero{padding-top:75px}.hero-visual{height:490px}.hero-visual-card{height:410px}.hero-footnote{margin-top:48px}.signal-strip{grid-template-columns:repeat(3,1fr)}.signal-note{grid-column:1/-1;justify-self:start}.work-grid{grid-template-columns:1fr 1fr}.work-card-large{grid-column:1/-1}.capabilities-panel{grid-template-columns:1fr}.capability-list{padding:10px 48px 45px}.admin-shell{grid-template-columns:190px 1fr}.admin-main{padding:25px}.dashboard-grid{grid-template-columns:1fr 1fr}.dash-card:first-child{grid-column:1/-1}.site-footer{gap:20px;flex-wrap:wrap}.apps-hero{align-items:flex-start;flex-direction:column}}
@media (max-width:620px){.site-header{height:70px}.main-nav{display:none}.profile-pill{font-size:10px;padding:8px 10px}.hero{min-height:auto;padding-top:62px;padding-bottom:80px}.hero h1{font-size:56px}.hero-intro{font-size:13px}.hero-actions{gap:17px}.hero-footnote{font-size:8px;flex-wrap:wrap;margin-top:42px}.hero-visual{height:380px}.hero-visual-card{height:330px;width:230px}.visual-center strong{font-size:110px}.chip-top{right:-1%;top:41px}.chip-bottom{left:0;bottom:39px}.floating-chip{font-size:9px;padding:9px 11px}.signal-strip{grid-template-columns:1fr 1fr;gap:25px;padding-top:32px;padding-bottom:32px}.signal-item:nth-child(3){grid-column:1/-1}.signal-note{grid-column:1/-1}.signal-number{font-size:31px}.work-section,.capabilities-section,.apps-content{padding-top:87px;padding-bottom:90px}.section-heading{display:block;margin-bottom:38px}.section-heading h2{font-size:47px}.section-description{margin:25px 0 0;font-size:12px}.work-grid{grid-template-columns:1fr}.work-card-large{grid-column:auto}.work-card-art,.work-card-large .work-card-art{height:280px}.capability-intro{padding:43px 28px 22px}.capability-list{padding:6px 28px 30px}.capability-row{grid-template-columns:32px 1fr 25px;gap:9px;padding:18px 0}.capability-row small{display:none}.capability-row strong{font-size:13px}.apps-hero{padding-top:62px;padding-bottom:42px}.apps-hero h1{font-size:60px}.apps-locked{padding:55px 24px}.apps-locked h2{font-size:29px}.admin-shell{grid-template-columns:1fr;border-radius:22px}.admin-sidebar{padding:18px 15px}.admin-user{padding-bottom:18px}.side-nav{flex-direction:row;overflow:auto;padding-top:15px}.side-link{white-space:nowrap;padding:9px 11px}.side-link span{display:none}.sidebar-footer{display:none}.admin-main{padding:23px 17px}.admin-topbar{gap:10px}.admin-topbar h3{font-size:21px}.admin-greeting{font-size:10px}.admin-top-actions{gap:8px}.icon-button{display:none}.admin-login-inline{font-size:9px}.dashboard-grid{grid-template-columns:1fr 1fr}.dash-card{min-height:98px;padding:16px 13px}.dash-big,.dash-value{font-size:25px}.module-grid{grid-template-columns:1fr}.vault-row{grid-template-columns:30px 1fr auto;gap:8px}.vault-username,.vault-secret{grid-column:2/-1}.vault-actions{grid-column:2/-1;justify-content:flex-start}.closing-card{padding:43px 27px;min-height:340px}.closing-card h2{font-size:47px}.closing-mark{right:27px}.site-footer{font-size:9px}.site-footer>span{display:none}.credential-modal,.history-modal{padding:32px 24px}}

/* 应用菜单是内部工作台的主入口：卡片需要清晰、可点击，并拥有足够的触控面积。 */
.apps-hero h1{font-size:clamp(48px,5.8vw,76px)}
.apps-page .admin-shell{min-height:760px}
.apps-page .admin-main{padding:38px 46px 48px}
.apps-page .module-grid{grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:16px}
.apps-page .module-card{min-height:154px;padding:22px 22px;border-radius:19px;gap:18px}
.apps-page .module-icon{width:58px;height:58px;border-radius:17px;font-size:17px}
.apps-page .module-card strong{font-size:17px}
.apps-page .module-card small{font-size:11px;margin-top:7px}
.apps-page .module-status{width:8px;height:8px}
.apps-page .view-toolbar h4{font-size:17px}
.apps-page .view-toolbar p{font-size:11px}
@media (max-width:900px){.apps-page .admin-main{padding:28px}.apps-page .module-card{min-height:140px}}
@media (max-width:620px){.apps-page .admin-main{padding:23px 17px}.apps-page .module-grid{grid-template-columns:1fr;gap:12px}.apps-page .module-card{min-height:126px;padding:18px}.apps-page .module-icon{width:50px;height:50px;border-radius:15px}.apps-page .module-card strong{font-size:16px}.apps-page .module-card small{font-size:10px}}

.apps-page .module-card{display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;gap:15px;min-height:182px;padding:21px 22px}
.module-card-main{display:flex;align-items:center;gap:18px;min-width:0}
.module-card-copy{display:flex;flex-direction:column;gap:6px;min-width:0}
.module-card-copy strong{font-size:18px}
.module-card-copy small{font-size:11px}
.module-card-main .module-status{margin-left:auto;flex:none}
.module-credential{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:11px 12px;border-radius:11px;background:#f3f7fc;color:#667d92;font:10px var(--font-mono)}
.module-credential span{max-width:44%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.module-credential button{color:var(--accent);font-size:10px;margin-left:auto}
.module-card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:12px;border-top:1px solid var(--line)}
.module-open{font-size:11px;color:var(--accent);padding:5px 0}.module-open span{font-size:15px;margin-left:4px}
.module-visibility{font-size:10px;border-radius:100px;padding:6px 9px;border:1px solid var(--line);color:#778b9b}.module-visibility.is-public{color:#4f927a;background:#eef9f4;border-color:#cbe9dc}.module-visibility.is-private{color:#7d8fa1;background:#f2f5f8}
.app-private-note{margin-top:16px}
.module-visibility{font-weight:600;min-width:96px;box-shadow:0 2px 5px rgba(23,63,102,.06)}.module-visibility:before{margin-right:5px}.module-visibility.is-public{background:#d9f6e9;border-color:#62c39e;color:#126145;box-shadow:0 3px 9px rgba(37,145,103,.12)}.module-visibility.is-public:before{content:'●'}.module-visibility.is-private{background:#e9edf4;border-color:#94a9bf;color:#344b63;box-shadow:0 3px 9px rgba(52,75,99,.1)}.module-visibility.is-private:before{content:'🔒';font-size:10px}.module-visibility:hover{transform:translateY(-1px);filter:brightness(.98)}.module-card-footer{gap:9px;flex-wrap:wrap}.module-card-footer [data-edit-app],.module-card-footer [data-delete-app],.module-card-footer [data-add-note-for]{display:inline-flex;align-items:center;padding:7px 10px;border:1px solid var(--line);border-radius:9px;background:#fff;font-weight:500;color:#58718a;line-height:1}.module-card-footer [data-edit-app]:hover,.module-card-footer [data-add-note-for]:hover{background:#edf4fb;border-color:#9bb9d5}.module-card-footer [data-delete-app]{color:#a14f5c;border-color:#e5b9c0;background:#fff8f8}.module-card-footer [data-delete-app]:hover{background:#ffedef;border-color:#d98e9b}.official-links{position:absolute;right:7%;bottom:28px;z-index:2;width:min(360px,40%)}.official-links .eyebrow{margin-bottom:10px}.official-links-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.official-link{display:flex;flex-direction:column;gap:4px;padding:11px 12px;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:rgba(255,255,255,.07);transition:.25s}.official-link:hover{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.42);transform:translateY(-2px)}.official-link span{font-size:9px;color:rgba(255,255,255,.52)}.official-link strong{font:11px var(--font-mono);color:#fff}.official-link i{font-style:normal;align-self:flex-end;color:#8fc1ef;font-size:14px;margin-top:-14px}
@media (min-width:1450px){.apps-page .admin-shell{max-width:1700px}.apps-page .module-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.apps-page .module-card{min-height:210px}.apps-page .admin-main{padding-inline:52px}}
@media (min-width:1900px){.apps-page .module-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
.module-card{cursor:pointer}.module-card-main{cursor:pointer}.app-department{color:#6686a2!important}.module-credential-empty{padding:10px 12px;border-radius:10px;background:#f5f8fc;color:#8194a4;font-size:10px}.danger-text{color:#b45d68!important}.app-editor-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:22px}.app-editor-actions .button{margin-top:0}.danger-button{font-size:11px;color:#b34e5b;border:1px solid rgba(179,78,91,.25);border-radius:100px;padding:10px 13px}.app-editor-backdrop{position:fixed;inset:0;background:rgba(10,28,48,.55);backdrop-filter:blur(12px);z-index:50;display:grid;place-items:center;opacity:0;pointer-events:none;transition:opacity .25s}.app-editor-backdrop.open{opacity:1;pointer-events:auto}.app-editor-modal{width:min(500px,calc(100% - 36px));max-height:90vh;overflow:auto;background:#f7faff;border-radius:25px;padding:36px 34px 29px;position:relative;box-shadow:0 30px 100px rgba(0,0,0,.3);transform:translateY(15px);transition:.3s}.app-editor-backdrop.open .app-editor-modal{transform:translateY(0)}.app-editor-modal label{display:block;font-size:10px;color:#7e909e;margin-top:13px}.app-editor-modal input,.app-editor-modal select{display:block;width:100%;border:1px solid var(--line);background:#fff;border-radius:10px;padding:12px 13px;margin-top:7px;outline:0;font-size:12px;color:var(--ink);font-family:var(--font-sans)}.app-editor-modal input:focus,.app-editor-modal select:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(79,127,202,.1)}
@media (max-width:620px){.apps-page .module-card{min-height:150px;padding:18px}.module-card-copy strong{font-size:16px}.module-credential{font-size:9px}.module-card-footer{padding-top:10px}}

.app-region-group{margin-top:28px}.app-region-group:first-child{margin-top:0}.app-region-title{display:flex;align-items:center;gap:10px;margin:0 0 12px;font-size:12px;color:#6e8498}.app-region-title:before{content:"";width:22px;height:1px;background:var(--accent)}.app-region-count{font:10px var(--font-mono);color:#9aabb9}.app-url{display:block;margin-top:5px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8a9eae;font:10px var(--font-mono)}.module-note{margin-top:8px;padding:8px 10px;border-radius:9px;background:#f7f9fc;color:#71869a;font-size:10px;line-height:1.55}.module-note strong{color:#516e89;font-weight:600}.module-note-action{color:var(--accent);font-size:10px;margin-left:7px}.notes-list .note-row{gap:18px}.notes-list .note-row span{line-height:1.6}.note-meta{font:9px var(--font-mono);color:#98a8b5;white-space:nowrap}.note-modal{width:min(520px,calc(100% - 36px));background:#f7faff;border-radius:25px;padding:36px 34px 29px;position:relative;box-shadow:0 30px 100px rgba(0,0,0,.3);transform:translateY(15px);transition:.3s}.note-backdrop{position:fixed;inset:0;background:rgba(10,28,48,.55);backdrop-filter:blur(12px);z-index:50;display:grid;place-items:center;opacity:0;pointer-events:none;transition:opacity .25s}.note-backdrop.open{opacity:1;pointer-events:auto}.note-backdrop.open .note-modal{transform:translateY(0)}.note-modal label{display:block;font-size:10px;color:#7e909e;margin-top:13px}.note-modal select,.note-modal textarea{display:block;width:100%;border:1px solid var(--line);background:#fff;border-radius:10px;padding:12px 13px;margin-top:7px;outline:0;font-size:12px;color:var(--ink);font-family:var(--font-sans);resize:vertical}.note-modal select:focus,.note-modal textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(79,127,202,.1)}
@media (max-width:620px){.note-modal{padding:32px 24px}.app-region-title{font-size:11px}.app-url{font-size:9px}}
@media (max-width:620px){.official-links{position:static;width:100%;margin-top:30px}.closing-card{padding-bottom:38px}.official-link strong{font-size:9px}}

/* Keep every application card within one predictable visual frame on large screens. */
.apps-page .admin-shell { width: min(calc(100% - 72px), 1680px); max-width: 1680px; margin-inline: auto; }
.apps-page .module-grid { grid-auto-rows: 360px; align-items: stretch; }
.apps-page .module-card { height: 360px; max-height: 360px; overflow: auto; }
.apps-page .module-card-copy strong { max-width: 100%; }
.apps-page .module-credential { max-height: 120px; overflow: auto; }
.apps-page .module-note { max-height: 78px; overflow: auto; }
@media (max-width:900px) { .apps-page .admin-shell { width: 100%; } .apps-page .module-grid { grid-auto-rows: 330px; } .apps-page .module-card { height: 330px; max-height: 330px; } }
@media (max-width:620px) { .apps-page .module-grid { grid-auto-rows: auto; } .apps-page .module-card { height: auto; min-height: 250px; max-height: none; overflow: visible; } .apps-page .module-credential,.apps-page .module-note { max-height: none; overflow: visible; } }

/* Server directory and per-server sorting, sharing the existing cool UI palette. */
.brand-mark.info-mark { position: relative; width: 29px; height: 29px; display: block; border-radius: 10px; background: linear-gradient(145deg,#dceaf8,#edf5fc); transform: none; overflow: hidden; }
.brand-mark.info-mark::before { content: ''; position: absolute; inset: 5px; border: 1.5px solid #4678ad; border-radius: 50%; opacity: .85; }
.brand-mark.info-mark::after { content: ''; position: absolute; width: 7px; height: 7px; left: 11px; top: 11px; border-radius: 50%; background: #4f7fca; box-shadow: 0 0 0 4px rgba(79,127,202,.13); }
.brand-mark.info-mark i { position: absolute; display: block; width: 4px; height: 4px; border-radius: 50%; background: #183b63; z-index: 1; }
.brand-mark.info-mark i:nth-child(1) { left: 4px; top: 13px; }.brand-mark.info-mark i:nth-child(2) { right: 4px; top: 7px; background: #80aecf; }.brand-mark.info-mark i:nth-child(3) { right: 5px; bottom: 6px; background: #55a88a; }
.brand-mark.info-mark.small { transform: scale(.72); transform-origin: left center; margin-right: -7px; }
.ambient-one { right: 0; width: min(650px,100vw); pointer-events: none; }
.ambient-two { left: 0; width: min(500px,100vw); pointer-events: none; }
.dialog-open { overflow: hidden; }
.portal-action {
  display: inline-flex; align-items: center; justify-content: center; gap: 6px;
  border: 1px solid #c3d3e3; border-radius: 9px; background: #fff;
  color: #325477; padding: 8px 11px; min-height: 34px; font-size: 12px;
  font-weight: 500; line-height: 1.3; white-space: nowrap; margin: 0;
}
.apps-page .module-grid { grid-auto-rows: 380px; }
.apps-page .module-card { height: 380px; min-height: 380px; max-height: 380px; overflow: visible; }
@media (max-width: 620px) { .apps-page .module-grid { grid-auto-rows: auto; } .apps-page .module-card { height: auto; min-height: 250px; max-height: none; } }

/* Compact application cards keep the directory scannable. Administrators can
   reveal the full metadata from the toolbar toggle; visitors stay compact. */
.apps-page .module-grid { grid-auto-rows: auto; }
.apps-page .module-card.is-compact {
  height: auto !important;
  min-height: 132px !important;
  max-height: none !important;
  padding: 14px 16px;
  gap: 9px;
}
.apps-page .module-card.is-compact .module-card-main .module-icon { width: 46px; height: 46px; }
.systems-toolbar-actions { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.systems-toolbar-actions .portal-action[data-toggle-details] { background: #eef5fc; border-color: #9bb8d4; color: #315d86; }
@media (max-width: 620px) {
  .apps-page .module-card.is-compact { min-height: 112px !important; padding: 12px 14px; }
  .systems-toolbar-actions { width: 100%; }
}
.apps-page .module-credential,
.apps-page .module-credential .credential-line { user-select: text !important; -webkit-user-select: text !important; cursor: text; }
.apps-page .module-credential .credential-line { display: block !important; max-width: none !important; margin: 0 !important; white-space: pre-wrap !important; overflow-wrap: anywhere; }
.apps-page .module-credential .credential-actions { user-select: none; -webkit-user-select: none; }
.apps-page .module-card-footer > [data-open-note] { min-width: 55px; }
.launch-arrow { display: none !important; }
.apps-page .apps-hero { position: relative; top: auto; background: transparent; backdrop-filter: none; }
.apps-page .apps-title-copy { opacity: 1; transform: translateY(0) scale(1); }
.apps-page.hero-condensed .apps-title-copy { transform: translateY(calc(-34px * var(--hero-collapse))) scale(calc(1 - .38 * var(--hero-collapse))); opacity: calc(1 - var(--hero-collapse)); }
.apps-page.hero-condensed .apps-title-copy h1 { font-size: clamp(48px, 5.8vw, 76px); transform: none; }
.apps-page.hero-condensed .apps-title-copy > p:last-child { margin-top: 20px; }
.apps-page .apps-hero { position: relative; top: auto; background: transparent; backdrop-filter: none; }
.apps-page .apps-title-copy { opacity: 1; transform: translateY(0) scale(1); }
.apps-page.hero-condensed .apps-title-copy { transform: translateY(calc(-34px * var(--hero-collapse))) scale(calc(1 - .38 * var(--hero-collapse))); opacity: calc(1 - var(--hero-collapse)); }
.apps-page.hero-condensed .apps-title-copy h1 { font-size: clamp(48px, 5.8vw, 76px); transform: none; }
.apps-page.hero-condensed .apps-title-copy > p:last-child { margin-top: 20px; }
.apps-page .apps-hero { position: sticky; top: 82px; z-index: 5; background: linear-gradient(180deg,rgba(239,245,252,.98),rgba(239,245,252,.88) 82%,rgba(239,245,252,0)); backdrop-filter: blur(14px); }
.apps-title-copy { transform-origin: left top; transition: transform .08s linear, opacity .08s linear; will-change: transform,opacity; }
.apps-page.hero-condensed .apps-title-copy { transform: translateY(calc(-38px * var(--hero-collapse))) scale(calc(1 - .34 * var(--hero-collapse))); opacity: calc(1 - var(--hero-collapse)); }
.apps-page.hero-condensed .apps-title-copy h1 { transform: none; font-size: clamp(48px,5.8vw,76px); }
.apps-page.hero-motion-off .apps-title-copy { transform: none !important; opacity: 1 !important; }
.apps-hero-actions { position: relative; z-index: 2; }
.group-controls .portal-action[data-collapse-server] { background: #eef5fc; border-color: #9bb8d4; color: #315d86; min-width: 78px; }
.app-region-group.is-collapsed { padding-bottom: 2px; }
.app-region-group.is-collapsed .group-toolbar { margin-bottom: 10px; }
@media (max-width:620px) { .apps-page .apps-hero { top: 78px; } }
.apps-hero-actions { display:flex; align-items:center; gap:22px; flex-wrap:wrap; }
.motion-toggle { border:1px solid #b9cde2; color:#57748e; background:rgba(255,255,255,.7); border-radius:10px; padding:9px 12px; font-size:11px; }
.motion-toggle:hover { background:#fff; border-color:#7095bb; }
@media (min-width: 621px) {
  .apps-page .apps-hero { position:sticky; top:82px; z-index:5; background:linear-gradient(180deg,rgba(239,245,252,.98),rgba(239,245,252,.90) 82%,rgba(239,245,252,0)); backdrop-filter:blur(14px); transition:padding .42s ease, min-height .42s ease; }
  .apps-page .apps-hero h1 { transition:font-size .42s ease, transform .42s ease; }
  .apps-page.hero-condensed .apps-hero { padding-top:28px; padding-bottom:22px; }
  .apps-page.hero-condensed .apps-hero h1 { font-size:clamp(42px,4.4vw,62px); transform:translateY(-6px); }
  .apps-page.hero-condensed .apps-hero > div > p:last-child { margin-top:14px; }
}
@media (max-width: 620px) {
  .apps-page .apps-hero { transition:padding .35s ease; }
  .apps-page.hero-condensed .apps-hero { padding-top:30px; padding-bottom:26px; }
  .apps-page.hero-condensed .apps-hero h1 { font-size:46px; transform:translateY(-4px); }
  .apps-hero-actions { gap:12px; }
}
.portal-action:hover:not(:disabled) { background: #eaf2fd; border-color: #759dc8; }
.portal-action:disabled { opacity: .38; cursor: default; }
[data-delete-app].portal-action { color: #a04453; border-color: #e5b5be; background: #fff6f7; }
button:focus-visible, a:focus-visible, select:focus-visible { outline: 2px solid #3978c2; outline-offset: 3px; }
.group-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin: 30px 0 12px; flex-wrap: wrap; }
.group-toolbar .app-region-title { margin: 0; font-size: 16px; color: #263f57; line-height: 1.5; flex-wrap: wrap; }
.group-controls { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; margin-left: auto; }
.group-management-actions { display: flex; align-items: center; flex: 0 0 auto; gap: 10px; margin-left: auto; }
.module-icon-image { object-fit: cover; overflow: hidden; background: #edf4fc; }
.app-icon-upload { display: flex; align-items: center; gap: 14px; margin-top: 14px; padding: 12px; border: 1px solid #d3e0ed; border-radius: 14px; background: #f7faff; }
.app-icon-preview { flex: 0 0 auto; width: 48px; height: 48px; display: grid; place-items: center; }
.app-icon-preview .module-icon { width: 48px; height: 48px; }
.app-icon-upload-controls { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 10px; min-width: 0; }
.app-icon-file-label { margin: 0 !important; color: #315d86 !important; border: 1px solid #b9cfe3; border-radius: 9px; padding: 8px 10px; background: #fff; cursor: pointer; }
.app-icon-file-label input { display: none; }
.app-icon-upload-controls small { flex-basis: 100%; color: #8195a8; font-size: 10px; line-height: 1.5; }
.app-editor-modal .app-icon-file-label input { display: none !important; width: auto; padding: 0; margin: 0; border: 0; }
.icon-crop-panel { margin-top: 14px; padding: 12px; border: 1px solid #c7d8e9; border-radius: 14px; background: #edf4fc; }
.icon-crop-panel > p { margin: 0 0 10px; color: #54718d; font-size: 11px; }
.icon-crop-stage { position: relative; max-width: 100%; background: #dce8f5; overflow: hidden; cursor: crosshair; touch-action: none; }
.icon-crop-stage > img { display: block; width: 100%; height: 100%; object-fit: fill; pointer-events: none; user-select: none; }
.icon-crop-box { position: absolute; border: 2px solid #fff; box-shadow: 0 0 0 9999px rgba(20,48,78,.38); pointer-events: none; }
.icon-crop-actions { display: flex; align-items: center; gap: 8px; margin-top: 10px; }
.icon-crop-actions .button, .icon-crop-actions .portal-action { margin-top: 0; }
.sort-control { display: flex; align-items: center; gap: 8px; color: #60768b; font-size: 12px; }
.sort-control select { appearance: auto; background: #fff; border: 1px solid #bccfe2; padding: 9px 10px; color: #274e75; border-radius: 9px; font-family: var(--font-sans); font-size: 13px; }
.sort-hint { font-size: 12px; line-height: 1.6; color: #677c90; margin: 0 0 16px; }
.order-actions { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px; padding-top: 12px; border-top: 1px dashed #d6e1ed; font-size: 11px; color: #668097; }
.order-actions > div { display: flex; gap: 8px; }
.order-actions .portal-action { padding: 6px 9px; font-size: 11px; }
.apps-page .module-card { min-width: 0; cursor: default; justify-content: flex-start; }
.application-launch { border-radius: 12px; padding: 4px; margin: -4px; transition: background .18s; }
.application-launch:hover { background: #eff5fd; }
.application-unconfigured { cursor: default; }
.launch-arrow { color: #648bb4; align-self: flex-start; margin-left: auto; font-size: 17px; }
.apps-page .module-card-main { align-items: flex-start; gap: 13px; }
.apps-page .module-card-copy { flex: 1; min-width: 0; }
.apps-page .module-card-copy strong { font-size: 17px; line-height: 1.45; overflow-wrap: anywhere; }
.apps-page .module-card-copy small { font-size: 12px; line-height: 1.6; color: #5d758c; }
.module-card-footer { margin-top: auto; justify-content: flex-start; }
.apps-page .module-credential { display: block; line-height: 1.8; padding: 12px; }
.apps-page .module-credential span { display: block; max-width: 100%; overflow-wrap: anywhere; white-space: normal; font-size: 12px; }
.credential-actions { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px; }
.module-credential .portal-action { margin: 0; font-size: 11px; }
.module-credential-empty { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; font-size: 12px; }
.module-note .note-body { font-size: 12px; color: #435e77; margin-bottom: 8px; }
.module-note .portal-action { font-size: 11px; min-height: 30px; padding: 5px 8px; }
.note-body { white-space: pre-wrap; overflow-wrap: anywhere; line-height: 1.8; }
.notes-list .note-row { align-items: flex-start; display: grid; grid-template-columns: minmax(0,1fr) auto auto; font-size: 13px; }
.empty-note-label { color: #8b9baa; font-style: italic; }
.last-used { font-size: 11px; color: #68829b; margin: 0; line-height: 1.6; }
.server-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(300px,1fr)); gap: 20px; }
.server-card { background: linear-gradient(150deg,#fff,#f7faff); border: 1px solid #d4e0ed; border-radius: 20px; padding: 24px; min-width: 0; }
.server-card-head { display: flex; align-items: flex-start; gap: 13px; flex-wrap: wrap; }
.server-card-head > div { flex: 1; min-width: 90px; }
.server-symbol { width: 42px; height: 42px; border-radius: 13px; background: #e6effa; color: #396694; font-size: 24px; display: grid; place-items: center; }
.server-card h4 { font-size: 19px; margin: 0 0 7px; line-height: 1.5; overflow-wrap: anywhere; }
.server-card-head p { margin: 0; font-size: 12px; color: #71869a; }
.server-card dl { margin: 24px 0 0; padding-top: 18px; border-top: 1px solid #d8e3ee; }
.server-card dl > div { display: flex; gap: 18px; justify-content: space-between; margin: 10px 0; }
.server-card dt { color: #698096; font-size: 12px; white-space: nowrap; }
.server-card dd { margin: 0; text-align: right; font: 13px var(--font-mono); color: #1e405f; overflow-wrap: anywhere; min-width: 0; }
.server-description { font-size: 13px; line-height: 1.8; color: #536e85; white-space: pre-wrap; }
.remote-plan { margin-top: 28px; background: #edf4fc; border: 1px solid #d4e2f1; border-radius: 20px; padding: 26px; display: flex; justify-content: space-between; flex-wrap: wrap; gap: 20px; }
.remote-plan .eyebrow { font-size: 10px; margin-bottom: 12px; }
.remote-plan h4 { font-size: 21px; margin: 0 0 10px; }
.remote-plan p:not(.eyebrow) { font-size: 13px; line-height: 1.8; color: #607b96; margin: 0; max-width: 550px; }
.plan-badge { background: #fff; border: 1px solid #cad9ea; border-radius: 30px; padding: 8px 12px; height: fit-content; font-size: 12px; color: #5c7994; }
.remote-plan-actions { width: 100%; display: flex; flex-wrap: wrap; gap: 10px; }
.remote-plan-actions button { border: 1px dashed #b1c8e0; border-radius: 10px; padding: 11px 18px; color: #8ba0b5; cursor: not-allowed; font-size: 13px; }
.server-editor-backdrop { position: fixed; inset: 0; z-index: 50; display: grid; place-items: center; background: rgba(10,28,48,.55); backdrop-filter: blur(12px); padding: 16px; }
.server-editor-modal { width: min(560px,100%); max-height: 90vh; overflow-y: auto; margin: 0; position: relative; background: #f7faff; padding: 32px; border-radius: 24px; box-shadow: 0 24px 80px #17365344; }
.server-editor-modal h2 { font-size: 28px; margin: 0 0 12px; }
.server-editor-modal label { display: block; font-size: 13px; color: #486178; margin-top: 16px; }
.server-editor-modal input,.server-editor-modal textarea { display: block; width: 100%; margin-top: 8px; border: 1px solid #c3d4e5; border-radius: 10px; background: #fff; padding: 12px; font: 14px var(--font-sans); color: #193750; }
.server-editor-modal textarea { resize: vertical; }
.server-form-row { display: grid; grid-template-columns: minmax(0,1fr) 130px; gap: 15px; }
.server-editor-modal input:focus,.server-editor-modal textarea:focus { outline: 2px solid #6292c2; outline-offset: 1px; }
.server-editor-modal .button { font-size: 14px; }
.server-ssh-settings { margin: 22px 0 0; padding: 8px 16px 18px; min-width: 0; border: 1px solid #cbdced; border-radius: 14px; background: #eff5fc; }
.server-ssh-settings legend { padding: 0 6px; color: #355b7d; font-size: 13px; font-weight: 600; }
.server-ssh-settings .ssh-help { margin: 8px 0; font-size: 11px; line-height: 1.65; color: #70869b; }
.server-ssh-status { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 10px; }
.server-ssh-status span { min-width: 0; overflow-wrap: anywhere; font-size: 12px; color: #315f88; }
.server-ssh-status button { flex-shrink: 0; font-size: 11px; padding: 6px 9px; }
.ssh-host-settings { margin-top: 16px; }
.ssh-host-settings summary { cursor: pointer; color: #4c6d8a; font-size: 12px; }
.server-editor-modal input[type=file] { font-size: 12px; padding: 9px; }
.server-editor-modal input[type=file]::file-selector-button { margin-right: 8px; padding: 6px 10px; border: 1px solid #c2d5e7; border-radius: 7px; background: #f4f8fc; color: #365e82; cursor: pointer; }
.apps-page .view-toolbar { gap: 18px; align-items: flex-start; flex-wrap: wrap; }
.apps-page .view-toolbar p { font-size: 13px; line-height: 1.65; }
.apps-page .admin-main { min-width: 0; }
@media (min-width:1100px) {
  .apps-page .apps-content { padding-inline: 36px; }
  .apps-page .admin-shell { max-width: none; grid-template-columns: 190px minmax(0,1fr); }
  .apps-page .admin-main { padding: 30px; }
  .apps-page .module-grid { grid-template-columns: repeat(auto-fit,minmax(265px,1fr)); }
}
@media (max-width:900px) {
  .apps-page .module-grid { grid-template-columns: 1fr; }
  .server-grid { grid-template-columns: 1fr; }
  .group-toolbar { align-items: flex-start; }
  .group-controls { width: 100%; justify-content: space-between; }
  .notes-list .note-row { grid-template-columns: minmax(0,1fr) auto; }
  .notes-list .note-meta { grid-column: 1; grid-row: 2; }
}
@media (max-width:620px) {
  .site-header { flex-wrap: wrap; height: auto; min-height: 78px; gap: 10px; padding: 12px 20px; }
  .main-nav { display: flex; margin: 0; gap: 20px; }
  .nav-link { font-size: 12px; }
  .brand-copy strong { font-size: 11px; }
  .apps-hero { padding-block: 35px; }
  .apps-hero h1 { font-size: 42px; }
  .apps-content { padding-top: 0; padding-inline: 16px; }
  .apps-page .module-card .module-icon { width: 42px; height: 42px; font-size: 15px; }
  .server-editor-modal { padding: 30px 22px; }
  .server-form-row { grid-template-columns: 1fr; gap: 0; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior: auto; } .reveal { animation: none; opacity: 1; transform: none; } }
.drag-grip { display: inline-block; margin-right: 5px; color: #7594b0; letter-spacing: -3px; font-size: 16px; vertical-align: -1px; }
.apps-page .module-card[draggable="true"] { cursor: grab; user-select: none; }
.apps-page .module-card[draggable="true"]:active { cursor: grabbing; }
.apps-page .module-card.is-dragging { opacity: .45; transform: scale(.98); }
.apps-page .module-card.drag-over { outline: 2px solid #4f7fca; outline-offset: 4px; background: #eef5fe; }
.apps-page .admin-shell { width: min(calc(100% - 72px), 1680px); max-width: 1680px; }
.apps-page .module-grid { grid-auto-rows: minmax(300px,360px); }
.apps-page .module-card { height: 360px; max-height: 360px; }
@media (min-width: 1900px) { .apps-page .admin-shell { width: min(calc(100% - 120px), 1680px); } }
@media (max-width: 900px) { .apps-page .admin-shell { width: 100%; } .apps-page .module-grid { grid-auto-rows: minmax(280px,330px); } .apps-page .module-card { height: 330px; max-height: 330px; } }
@media (max-width: 620px) { .apps-page .module-grid { grid-auto-rows: auto; } .apps-page .module-card { height: auto; max-height: none; } }

/* Same card geometry in every server group: extra screen width becomes whitespace. */
@media (min-width: 901px) {
  .apps-page .module-grid { grid-template-columns: repeat(auto-fill, 300px); grid-auto-rows: 360px; justify-content: start; align-items: stretch; }
  .apps-page .module-card { width: 300px; min-width: 300px; max-width: 300px; height: 360px; min-height: 360px; max-height: 360px; }
}

/* Cards expand with their content; no inner scrollbar is shown on an individual card. */
@media (min-width: 901px) {
  .apps-page .module-grid { grid-template-columns: repeat(auto-fill, 330px); grid-auto-rows: auto; }
  .apps-page .module-card { width: 330px; min-width: 330px; max-width: 330px; height: auto; min-height: 250px; max-height: none; overflow: visible; }
}
.apps-page .module-credential, .apps-page .module-note { max-height: none; overflow: visible; }
.apps-page .module-card-footer { display: flex; flex-wrap: nowrap; align-items: center; gap: 7px; width: 100%; }
.apps-page .module-card-footer > button { flex: 0 0 auto; min-height: 34px; padding: 8px 10px; border: 1px solid #c3d3e3; border-radius: 9px; background: #fff; color: #325477; font-size: 11px; font-weight: 500; white-space: nowrap; }
.apps-page .module-card-footer > button:hover { background: #eaf2fd; border-color: #759dc8; }
.apps-page .module-card-footer > .module-visibility.is-public { background: #d9f6e9; border-color: #62c39e; color: #126145; }
.apps-page .module-card-footer > .module-visibility.is-private { background: #e9edf4; border-color: #94a9bf; color: #344b63; }
.apps-page .module-card-footer > [data-delete-app] { color: #a04453; border-color: #e5b5be; background: #fff6f7; }
.apps-page .module-card-footer > [data-add-note] { color: #4e6e8e; }
.apps-page .module-card-footer > [data-edit-app] { color: #325477; }
@media (max-width: 900px) { .apps-page .module-card-footer { flex-wrap: wrap; } }
@media (max-width: 620px) { .apps-page .module-card { min-width: 0; width: 100%; } .apps-page .module-card-footer { flex-wrap: wrap; } }
/* Compact card internals keep credentials readable without creating a scrollbar. */
@media (min-width: 901px) {
  .apps-page .module-card { height: 360px; min-height: 360px; max-height: 360px; overflow: visible; gap: 9px; padding: 18px 20px; }
  .apps-page .module-card-main { min-height: 92px; }
  .apps-page .module-credential { padding: 9px 10px; line-height: 1.45; }
  .apps-page .module-credential span { display: inline-block; max-width: 100%; margin-right: 8px; font-size: 11px; }
  .apps-page .credential-actions { margin-top: 6px; }
  .apps-page .module-note { padding: 7px 9px; }
  .apps-page .module-note .note-body { line-height: 1.45; margin-bottom: 4px; }
  .apps-page .module-card-footer > button { min-height: 31px; padding: 6px 8px; font-size: 10px; }
}
.apps-page .module-grid { grid-auto-rows: 380px; }
.apps-page .module-card { height: 380px; min-height: 380px; max-height: 380px; overflow: visible; }
@media (max-width: 620px) { .apps-page .module-grid { grid-auto-rows: auto; } .apps-page .module-card { height: auto; min-height: 250px; max-height: none; } }

/* Final compact overrides, after all legacy fixed-height rules. */
.apps-page .module-grid { grid-auto-rows: 300px !important; }
.apps-page .module-card { height: 300px !important; min-height: 300px !important; max-height: 300px !important; overflow: visible; }
.apps-page .module-card.is-compact { height: 150px !important; min-height: 150px !important; max-height: 150px !important; padding: 14px 16px; gap: 9px; }
.apps-page .module-card.is-compact .module-card-copy .app-url { display: none !important; }
.apps-page .module-card.is-compact .module-credential,
.apps-page .module-card.is-compact .module-credential-empty,
.apps-page .module-card.is-compact .module-card-footer { display: none !important; }
.apps-page .module-card.is-compact .module-card-main { min-height: 0; }
.apps-page .module-card.is-compact .module-card-main .module-icon { width: 46px; height: 46px; }
.apps-page .module-grid.is-compact-grid { grid-auto-rows: 150px !important; row-gap: 12px; }
@media (max-width: 620px) { .apps-page .module-card.is-compact { height: 150px !important; min-height: 150px !important; max-height: 150px !important; padding: 12px 14px; } }

/* Equal-width action rows keep both credential and management controls tidy. */
.apps-page .credential-actions { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.apps-page .credential-actions .portal-action { width: 100%; min-width: 0; min-height: 38px; margin: 0; padding: 7px 4px; justify-content: center; }
.apps-page .module-card-footer { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; align-items: stretch; }
.apps-page .module-card-footer > button { width: 100%; min-width: 0; min-height: 38px; padding: 7px 4px; justify-content: center; }
@media (max-width: 620px) {
  .apps-page .credential-actions, .apps-page .module-card-footer { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Server operations preview */
.ops-intro { display: flex; align-items: center; gap: 14px; margin: 22px 0 18px; padding: 15px 17px; border: 1px solid #d6e4f1; border-radius: 16px; background: linear-gradient(105deg,#f0f6fc,#fbfdff); }
.ops-intro-mark { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 10px; background: #dceafb; color: #3976b4; font-size: 20px; }
.ops-intro strong { display: block; color: #244664; font-size: 13px; }
.ops-intro p { margin: 4px 0 0; color: #71889d; font-size: 11px; line-height: 1.6; }
.ops-intro .plan-badge { margin-left: auto; flex: 0 0 auto; }
.ops-server-list { display: flex; flex-direction: column; gap: 20px; }
.ops-server-switcher { display: flex; gap: 10px; margin: 20px 0 14px; padding: 5px; overflow-x: auto; border: 1px solid #d6e3ef; border-radius: 15px; background: #f4f8fc; }
.ops-server-tab { flex: 0 0 auto; display: flex; align-items: center; gap: 9px; padding: 10px 14px; border: 1px solid transparent; border-radius: 11px; color: #668198; background: transparent; font-size: 12px; white-space: nowrap; }
.ops-server-tab small { color: #9aacba; font: 9px var(--font-mono); }
.ops-server-tab:hover { color: #315d86; background: #fff; }
.ops-server-tab.is-active { color: #1f4d75; border-color: #b8cfe4; background: #fff; box-shadow: 0 3px 10px rgba(33,76,113,.08); font-weight: 600; }
.ops-server-tab.is-active small { color: #6383a0; }
.ops-server-panel { padding: 20px; border: 1px solid #d6e2ee; border-radius: 20px; background: linear-gradient(145deg,#fff,#f8fbfe); box-shadow: 0 12px 34px rgba(32,76,116,.06); }
.ops-panel-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 18px; padding-bottom: 17px; border-bottom: 1px solid #e4edf5; }
.ops-server-identity { display: flex; align-items: center; gap: 12px; min-width: 0; }
.ops-server-identity .server-symbol { width: 44px; height: 44px; flex: 0 0 auto; }
.ops-server-identity .eyebrow { margin: 0 0 5px; font-size: 9px; }
.ops-server-identity h4 { margin: 0; color: #1d3c58; font-size: 20px; overflow-wrap: anywhere; }
.ops-server-identity p:last-child { margin: 4px 0 0; color: #8298aa; font: 10px var(--font-mono); }
.ops-panel-actions { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
.ops-panel-actions .portal-action { min-height: 32px; padding: 7px 10px; font-size: 10px; }
.ops-connection { display: inline-flex; align-items: center; gap: 6px; padding: 7px 10px; border-radius: 100px; border: 1px solid #d0deea; color: #738b9f; font-size: 10px; white-space: nowrap; }
.ops-connection i { width: 6px; height: 6px; border-radius: 50%; background: #9bb0c1; }
.ops-connection.is-online { color: #17664c; border-color: #9fd3bb; background: #effaf5; }
.ops-connection.is-online i { background: #43aa7b; }
.ops-metrics { display: grid; grid-template-columns: repeat(4,1fr); gap: 10px; margin: 16px 0; }
.ops-metric { padding: 14px; border-radius: 13px; background: #f2f7fc; }
.ops-metric span { display: block; color: #7c91a2; font: 9px var(--font-mono); }
.ops-metric strong { display: block; margin-top: 9px; color: #234867; font-size: 21px; letter-spacing: -.04em; }
.ops-metric strong small { margin-left: 3px; color: #89a0b2; font-size: 10px; letter-spacing: 0; }
.ops-columns { display: grid; grid-template-columns: 1fr 1fr 1.25fr; gap: 12px; }
.ops-section { min-width: 0; padding: 15px; border: 1px solid #e1eaf2; border-radius: 14px; background: rgba(255,255,255,.7); }
.ops-section-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; margin-bottom: 11px; }
.ops-section-head .eyebrow { margin: 0 0 4px; font-size: 9px; }
.ops-section-head h5 { margin: 0; color: #2a4a65; font-size: 13px; }
.ops-section-head .portal-action { min-height: 25px; padding: 4px 7px; font-size: 9px; }
.ops-count { min-width: 24px; text-align: right; color: #6e8cab; font: 12px var(--font-mono); }
.ops-list-row { display: grid; grid-template-columns: 8px minmax(0,1fr) auto; align-items: center; gap: 8px; padding: 8px 0; border-top: 1px solid #edf2f7; }
.ops-list-row strong { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #44647d; font-size: 11px; }
.ops-list-row small { color: #91a2b0; font-size: 9px; }
.ops-status-dot { width: 6px; height: 6px; border-radius: 50%; background: #8cbca8; }
.ops-status-dot.muted { background: #b4c3cf; }
.ops-empty { margin: 20px 0 7px; color: #95a6b4; font-size: 10px; line-height: 1.6; }
.ops-log-row { display: grid; grid-template-columns: 75px minmax(0,1fr); gap: 8px; padding: 8px 0; border-top: 1px solid #edf2f7; }
.ops-log-row time { color: #9aabb8; font: 9px var(--font-mono); }
.ops-log-row span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #58748b; font-size: 10px; }
.ops-panel-note { display: flex; gap: 10px; margin-top: 14px; padding-top: 12px; border-top: 1px dashed #dce7f0; color: #7a8fa0; font-size: 10px; line-height: 1.6; }
.ops-panel-note span { flex: 1; min-width: 0; }
@media (max-width: 900px) { .ops-columns { grid-template-columns: 1fr 1fr; } .ops-log-section { grid-column: 1 / -1; } }
@media (max-width: 620px) { .ops-intro { align-items: flex-start; flex-wrap: wrap; } .ops-intro .plan-badge { margin-left: 46px; } .ops-panel-head { flex-direction: column; } .ops-panel-actions { justify-content: flex-start; } .ops-metrics { grid-template-columns: 1fr 1fr; } .ops-columns { grid-template-columns: 1fr; } .ops-log-section { grid-column: auto; } .ops-server-panel { padding: 14px; } }
.terminal-overlay { position: fixed; inset: 0; z-index: 1200; display: grid; place-items: center; padding: 20px; background: rgba(8,24,39,.62); }
.terminal-modal { width: min(900px, 100%); border-radius: 14px; overflow: hidden; background: #0d1721; color: #dce8f2; box-shadow: 0 22px 70px rgba(0,0,0,.35); font-family: var(--font-mono); }
.terminal-head { display:flex; align-items:center; justify-content:space-between; padding: 12px 16px; background:#162637; color:#b8d6eb; font-size:12px; }
.terminal-close { border:0; background:transparent; color:#abc2d3; font-size:22px; cursor:pointer; }
.terminal-output { margin:0; height: min(58vh, 520px); padding:16px; overflow:auto; white-space:pre-wrap; word-break:break-word; font-size:12px; line-height:1.5; }
.terminal-form { display:flex; gap:8px; padding:10px 12px; border-top:1px solid #22384b; }
.terminal-form input { flex:1; border:1px solid #355067; border-radius:6px; padding:9px 10px; background:#101f2d; color:#e8f3fa; font:12px var(--font-mono); }
.terminal-form button { border:0; border-radius:6px; padding:0 16px; background:#5ba4d4; color:#082033; font-weight:600; }
.terminal-modal > small { display:block; padding:0 14px 12px; color:#7693a8; font-size:10px; }
.terminal-auth-overlay { position: fixed; inset: 0; z-index: 1200; display: grid; place-items: center; padding: 20px; background: rgba(8,24,39,.58); backdrop-filter: blur(10px); }
.terminal-auth-modal { width: min(430px, 100%); position: relative; padding: 28px; border: 1px solid #d2e0ec; border-radius: 22px; background: #f7faff; box-shadow: 0 25px 80px rgba(12,40,65,.28); }
.terminal-auth-modal h3 { margin: 0 0 9px; color: #193b58; font-size: 26px; letter-spacing: -.05em; }
.terminal-auth-modal p:not(.eyebrow) { margin: 0 0 20px; color: #71879a; font-size: 12px; line-height: 1.7; }
.terminal-auth-modal label { display: block; color: #627b91; font-size: 11px; }
.terminal-auth-modal input { display: block; width: 100%; margin-top: 7px; padding: 11px 12px; border: 1px solid #c5d6e5; border-radius: 10px; background: #fff; color: #173953; font: 13px var(--font-sans); }
.terminal-auth-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 20px; }
.terminal-auth-actions .button, .terminal-auth-actions .portal-action { min-height: 34px; margin: 0; padding: 8px 13px; }
.terminal-auth-close { position: absolute; top: 12px; right: 15px; border: 0; background: none; color: #8ca0b1; font-size: 22px; cursor: pointer; }
@media (max-width:620px) { .terminal-auth-modal { padding: 24px 20px; } .terminal-modal { width: 100%; } .terminal-form input { min-width: 0; } }
