:root{color-scheme:dark;font-family:Inter,"Segoe UI","Microsoft YaHei",system-ui,sans-serif;background:#090a0d;color:#f4f4ef;--line:rgba(255,255,255,.18);--muted:#b7b9c0;--ease:cubic-bezier(.16,1,.3,1)}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#090a0d}button,input{font:inherit}.hidden{display:none!important}.bg{position:fixed;inset:-4%;z-index:0;background:#090909 center/cover no-repeat;filter:saturate(.18) contrast(1.06);animation:bg-drift 26s var(--ease) infinite alternate}.bg:after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(0,0,0,.82),rgba(10,12,17,.52) 54%,rgba(0,0,0,.76))}.grain{position:fixed;inset:0;z-index:1;pointer-events:none;opacity:.055;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='.82' numOctaves='3' stitchTiles='stitchTiles'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.shell{position:relative;z-index:2;width:100%;height:100svh}.glass{border:1px solid var(--line);background:rgba(17,19,25,.7);box-shadow:0 12px 44px rgba(0,0,0,.3),inset 0 1px rgba(255,255,255,.07);backdrop-filter:blur(20px) saturate(.82)}.nav{position:fixed;z-index:20;top:20px;left:clamp(16px,4vw,64px);right:clamp(16px,4vw,64px);display:flex;align-items:center;justify-content:space-between;min-height:58px;padding:7px 8px 7px 18px;border-radius:18px}.nav:before{content:"";position:absolute;left:18px;top:0;width:30px;height:1px;background:#e5edff}.nav-left,.nav-actions{display:flex;align-items:center;gap:12px;min-width:0}.brand{display:flex;align-items:center;min-height:40px;color:#f5f7fb;text-decoration:none;font-size:12px;font-weight:750;letter-spacing:.15em}.pulse{display:inline-block;width:7px;height:7px;margin-right:10px;border-radius:50%;background:#d7e4ff;box-shadow:0 0 0 4px rgba(186,207,255,.1),0 0 14px #d7e4ff}.identity{max-width:min(28vw,260px);padding-left:14px;overflow:hidden;border-left:1px solid rgba(255,255,255,.13);color:#f5f6f8;font-size:12px;white-space:nowrap;text-overflow:ellipsis}.admin-badge{padding:8px 10px;border:1px solid rgba(190,211,255,.42);border-radius:10px;background:rgba(126,160,232,.11);color:#dbe7ff;font-size:10px;font-weight:750;letter-spacing:.13em}.ghost{min-height:40px;padding:0 15px;border:1px solid rgba(255,255,255,.15);border-radius:11px;background:rgba(255,255,255,.06);color:#f4f4ef;cursor:pointer}.ghost:hover{border-color:rgba(216,230,255,.55);background:rgba(190,213,255,.13)}.pages,.portal-page{position:fixed;inset:0}.portal-page{display:grid;align-content:center;padding:14vh clamp(28px,10vw,170px) 10vh;opacity:0;transform:translate3d(22vw,0,0);pointer-events:none;transition:transform 900ms var(--ease),opacity 650ms ease}.portal-page.active{opacity:1;transform:none;pointer-events:auto}.portal-page.past{opacity:0;transform:translate3d(-16vw,0,0)}.portal-page:before{content:attr(data-index);position:absolute;right:7vw;top:20%;font:700 clamp(130px,22vw,330px)/.7 Arial,sans-serif;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.09);letter-spacing:-.1em}.portal-page:after{content:"";position:absolute;left:0;top:24%;bottom:14%;width:5px;background:linear-gradient(#edf2ff,transparent);opacity:.72}.home-page{justify-items:center;text-align:center}.home-page:after{display:none}.home-content{position:relative;z-index:1;max-width:1080px}.hero-title{min-height:1em;margin:0 0 27px;font-size:clamp(36px,7.4vw,112px);line-height:.92;letter-spacing:-.075em;color:#fff;text-shadow:0 0 12px rgba(255,255,255,.5),0 0 34px rgba(143,186,255,.28)}.hero-title:after{content:"_";display:inline-block;margin-left:.09em;text-shadow:0 0 10px #fff;animation:caret .8s steps(1,end) infinite}.home-content p,.page-content p{color:var(--muted);font-size:clamp(15px,1.3vw,18px);line-height:1.85}.home-content p{max-width:590px;margin:0 auto}.page-content{position:relative;z-index:1;max-width:680px}.page-kicker{display:flex;align-items:center;gap:12px;color:#aeb8cb;font-size:11px;letter-spacing:.22em;text-transform:uppercase}.page-kicker:before{content:"";width:28px;height:1px;background:currentColor}.portal-page h2{margin:21px 0 22px;font-size:clamp(46px,6vw,86px);line-height:.95;letter-spacing:-.07em}.page-content p{max-width:510px}.portal-action{display:inline-flex;align-items:center;gap:18px;margin-top:25px;padding:15px 21px;border:1px solid rgba(255,255,255,.44);border-radius:0;background:#f0f2f3;color:#101114;text-decoration:none;font-weight:750;cursor:pointer}.portal-action:after{content:"→";font-size:17px;transition:transform .35s}.portal-action:hover:after{transform:translateX(7px)}.secondary-action{background:rgba(15,17,21,.55);color:#f3f3ef}.page-meta{position:absolute;z-index:2;bottom:36px;left:clamp(28px,10vw,170px);color:#9298a5;font-size:12px;letter-spacing:.13em}.page-count{position:fixed;z-index:21;right:clamp(16px,4vw,64px);bottom:29px;display:flex;gap:8px}.page-count button{width:28px;height:3px;padding:0;border:0;border-radius:0;background:rgba(255,255,255,.2);cursor:pointer}.page-count button.active{background:#eef3ff;box-shadow:0 0 12px rgba(220,232,255,.55)}.modal{position:fixed;inset:0;z-index:40;display:none;place-items:center;padding:20px;background:rgba(2,2,2,.68);backdrop-filter:blur(12px)}.modal.show{display:grid}.panel{position:relative;width:min(500px,100%);padding:28px;border:1px solid rgba(255,255,255,.16);border-radius:24px;background:rgba(14,15,18,.94);box-shadow:0 32px 100px rgba(0,0,0,.75)}.panel h2{margin:0 0 8px;font-size:30px}.panel p{color:#aaa}.modal-close{position:absolute;right:15px;top:15px;width:40px;height:40px;border:1px solid var(--line);border-radius:50%;background:rgba(255,255,255,.04);color:#fff;cursor:pointer}.field{display:grid;gap:8px;margin:17px 0;color:#c9c9c4;font-size:14px}.field input{width:100%;min-height:48px;padding:0 14px;border:1px solid rgba(255,255,255,.15);border-radius:12px;background:rgba(5,5,5,.75);color:#fff}.primary{min-height:46px;padding:0 19px;border:0;border-radius:999px;background:#efefea;color:#111;font-weight:750;cursor:pointer}.error{min-height:20px;color:#ffb7b7;font-size:13px}@keyframes caret{50%{opacity:0}}@keyframes bg-drift{to{transform:scale(1.045) translate3d(-.8%,.5%,0)}}@media(max-width:760px){.nav{top:12px;left:12px;right:12px;min-height:52px;padding:6px 7px 6px 14px;border-radius:15px}.nav:before{left:14px}.brand{font-size:11px;letter-spacing:.1em}.identity{max-width:30vw;padding-left:8px;font-size:10px}.admin-badge{display:none!important}.ghost{min-height:38px;padding:0 11px;font-size:12px}.portal-page{padding:18vh 9vw 12vh}.portal-page:before{right:9vw;top:22%;font-size:42vw}.portal-page h2{font-size:15vw}.hero-title{font-size:clamp(31px,10vw,56px)}.home-content p,.page-content p{font-size:15px}.page-meta{bottom:28px;left:9vw}.page-count{right:12px;bottom:calc(20px + env(safe-area-inset-bottom))}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
.draw-error-notice{position:fixed;z-index:35;top:calc(22px + env(safe-area-inset-top));left:50%;width:max-content;max-width:min(560px,calc(100vw - 32px));padding:13px 18px;transform:translateX(-50%);border:1px solid rgba(255,255,255,.2);border-radius:14px;background:rgba(15,16,19,.78);box-shadow:0 16px 46px rgba(0,0,0,.36),inset 0 1px rgba(255,255,255,.06);backdrop-filter:blur(18px) saturate(.72);color:#e8e8e3;font-size:13px;line-height:1.55;text-align:center}
.maintenance-badge{display:block;width:max-content;max-width:100%;margin:18px 0 0;padding:8px 11px;border:1px solid rgba(225,187,187,.3);border-radius:999px;color:#e8cccc;background:rgba(80,35,39,.24);font-size:11px;letter-spacing:.04em}
