/* Shared Aurora theme: loaded after the original styles. */
:root{--accent:#1679f5;--teal:#089eab;--ink:#102847;--muted:#5b7087}
body{color:var(--ink)}
.migration-page,.login-page{min-height:100svh;background:radial-gradient(ellipse at 15% 15%,#164b78 0,transparent 48%),radial-gradient(ellipse at 90% 85%,#086373 0,transparent 46%),#081a30;padding:60px 20px;isolation:isolate}
.migration-page::before,.login-page::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(#d3f1ff65 1px,transparent 1px);background-size:52px 52px;opacity:.35;mask-image:linear-gradient(#000,transparent)}
.bg-grid{opacity:.25;background-size:64px 64px;background-image:linear-gradient(#79ceff25 1px,transparent 1px),linear-gradient(90deg,#79ceff25 1px,transparent 1px);transform:perspective(600px) rotateX(20deg) scale(1.2)}
.glow,.bg-orb{width:430px;height:430px;filter:blur(55px);opacity:.45;pointer-events:none;animation:auroraDrift 16s ease-in-out infinite alternate}
.glow-a,.bg1{background:#247afa;left:-160px;top:10%}.glow-b,.bg2{background:#16c5b5;right:-150px;bottom:5%;animation-delay:-8s}
.migration-card{width:min(820px,100%);border-radius:32px;background:linear-gradient(145deg,#fff,#f3f9ff);border:1px solid #ffffffb3;box-shadow:0 32px 90px #0005!important;overflow:hidden;padding:0;animation:panelIn .7s ease-out both}
.card-top-line{height:5px;background:linear-gradient(90deg,#2377f8,#29d7c0,#2377f8);background-size:200% 100%;animation:gradientTravel 6s ease infinite}
.card-content{padding:30px clamp(22px,5vw,62px) 24px}
.top-status{color:#1767b9!important;background:#eaf4ff!important;border:1px solid #cfe4fb!important;font-size:10px;letter-spacing:1.5px;border-radius:99px;padding:9px 15px!important}
.status-dot,.top-status span{background:#13b796;box-shadow:0 0 0 4px #13b79618;animation:statusPulse 3s ease-out infinite}
.admin-image-link{width:min(410px,100%);overflow:visible;margin:18px auto 2px;border-radius:24px}
.admin-illustration{height:216px;isolation:isolate;filter:drop-shadow(0 15px 18px #2477c71a)}
.admin-illustration::before{content:"";position:absolute;inset:4px 40px 8px;border-radius:50%;border:1px dashed #78b6e275;background:radial-gradient(ellipse,#d5f4ff85,transparent 70%);z-index:-1;animation:orbitTurn 60s linear infinite}
.screen{border-color:#183c63;background:linear-gradient(145deg,#f3fcff,#dbf3ff);box-shadow:0 16px 25px #1a426d26}.screen-top{background:#183c63}.screen-top i:nth-child(1){background:#ff958b}.screen-top i:nth-child(2){background:#ffda87}.screen-top i:nth-child(3){background:#5bddb8}.screen-line{background:#96c4e6;transform-origin:left;animation:lineBreathe 4s ease-in-out infinite}.screen-line.long{animation-delay:-1s}.screen-line.short{animation-delay:-2s}.screen-card{background:linear-gradient(120deg,#2582f2,#20c6b1);background-size:200%;animation:gradientTravel 5s ease infinite}
.base{background:#183c63}.body-person{background:linear-gradient(145deg,#209bd5,#1761ac)}.cloud{color:#81c9ec;animation:cloudFloat 5s ease-in-out infinite}.c2{animation-delay:-2.5s}.gear{color:#479db4;font-size:42px;animation:spin 18s linear infinite}
.admin-click-hint{background:#fff!important;border-color:#dbe8f4!important;color:#617992!important;font-size:10px;padding:7px 12px!important}
.hero-title{font-size:clamp(28px,4.5vw,43px);line-height:1.4;letter-spacing:-.7px;margin:18px 0 7px;background:linear-gradient(110deg,#183d69,#127a9d);background-clip:text;-webkit-background-clip:text;color:transparent;text-wrap:balance}
.hero-lead{font-size:18px;color:#465f79!important;line-height:1.7}.hero-message{font-size:14px;color:var(--muted);line-height:1.9;margin:12px auto 22px;text-wrap:pretty}
.new-system{display:flex;align-items:center;gap:14px;background:linear-gradient(110deg,#eaf4ff,#eafaf7)!important;border:1px solid #d2e8f5!important;border-radius:18px!important;padding:17px!important;max-width:620px;margin-bottom:14px}.new-icon{background:#fff;color:#178aaa;width:46px;height:46px;border-radius:14px}.new-title{color:#1b547e;font-size:14px}.new-subtitle{font-size:11px;margin-top:4px;line-height:1.6}
.main-link,.login-button,.contact-button{display:flex;align-items:center;justify-content:center;gap:10px;position:relative;overflow:hidden;background:linear-gradient(110deg,#176eed,#118da6)!important;border:0;color:white!important;border-radius:14px;font:600 14px "Prompt","Kanit",sans-serif;min-height:54px;padding:14px 22px;cursor:pointer;text-decoration:none;box-shadow:0 10px 24px #1775d42b;transition:transform .25s,box-shadow .25s}
.main-link::before,.login-button::before,.contact-button::before{content:"";position:absolute;inset:0;transform:translateX(-130%) skewX(-20deg);background:linear-gradient(90deg,transparent,#ffffff30,transparent);animation:buttonSheen 8s ease-in-out infinite;pointer-events:none}
.main-link:hover,.login-button:hover,.contact-button:hover{transform:translateY(-3px);box-shadow:0 15px 28px #1775d440}.main-link span{overflow-wrap:anywhere}.contact-row{line-height:1.9;color:#6b7f92;font-size:11px}.contact-row a{overflow-wrap:anywhere}.footer-note{font-size:10px;color:#708399;margin-top:24px}.footer-note span{line-height:1.8}
.motion-toggle{position:absolute;z-index:5;top:17px;right:20px;border:1px solid #ffffff30;border-radius:99px;background:#ffffff12;color:#e4f4ff;padding:8px 13px;font:400 11px "Prompt",sans-serif;cursor:pointer;backdrop-filter:blur(12px)}.motion-toggle:hover{background:#ffffff25}
:where(a,button,input,textarea):focus-visible{outline:3px solid #26b8d2;outline-offset:4px}
.login-card{background:linear-gradient(145deg,#fff,#f3f9ff);box-shadow:0 30px 70px #0004;border-radius:28px}.login-page .admin-icon{background:linear-gradient(135deg,#2178ed,#14a9ac)}.login-card .form-control{padding-left:42px;margin-top:0;border-radius:13px}.input-wrap .input-icon{z-index:1;pointer-events:none}.login-card .login-button{width:100%}.login-card .brand p{line-height:1.8}.login-wrap>.footer{color:#c0d9ed}.login-card h1{line-height:1.5}
.admin-page{background:radial-gradient(ellipse at 10% 0,#dceeff,transparent 55%),#f3f7fc}.admin-shell{max-width:980px;padding:40px 22px 60px}.admin-head{border-bottom:1px solid #dbe6f1;padding-bottom:25px}.admin-head h1{font-size:clamp(25px,4vw,34px);color:#163c64}.status-pill{display:inline-flex;padding:6px 11px;background:#e1edfd;color:#236ec0;border-radius:99px;font-size:10px;letter-spacing:1.3px;font-weight:600}.editor-card{border:1px solid #e0eaf4;border-radius:24px;box-shadow:0 18px 45px #25476e0b}.section-title{color:#1d6388;font-size:15px;display:flex;align-items:center;gap:10px;padding:12px 0;margin:15px 0 8px}.section-title::before{content:"";width:5px;height:21px;border-radius:4px;background:linear-gradient(#287bf1,#18b9ab)}.editor-card input,.editor-card textarea{background:#f8fbff;transition:border-color .2s,box-shadow .2s}.editor-card label{line-height:1.7;margin:12px 0}.editor-card small{display:block;color:#6f8195}.actions{border-top:1px solid #e3edf7;padding-top:22px;flex-wrap:wrap}.preview,.logout,.back-home{transition:background .2s,transform .2s}.preview:hover,.logout:hover{background:#edf6ff;transform:translateY(-2px)}.success{border:1px solid #bce9d5;animation:panelIn .45s ease-out}.security-note{line-height:1.8}
@keyframes auroraDrift{to{transform:translate(80px,45px) scale(1.18)}}
@keyframes gradientTravel{50%{background-position:100% 50%}}
@keyframes statusPulse{70%{box-shadow:0 0 0 9px #13b79600}100%{box-shadow:0 0 0 4px #13b79600}}
@keyframes orbitTurn{to{transform:rotate(360deg)}}
@keyframes cloudFloat{50%{transform:translate(5px,-9px)}}
@keyframes lineBreathe{50%{transform:scaleX(.8);opacity:.6}}
@keyframes buttonSheen{0%,65%{transform:translateX(-130%) skewX(-20deg)}90%,100%{transform:translateX(130%) skewX(-20deg)}}
@keyframes panelIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@media(max-width:600px){.migration-page,.login-page{padding:62px 12px 25px;align-items:center}.card-content{padding:24px 18px 22px}.migration-card{border-radius:24px}.hero-title{font-size:28px;letter-spacing:-.3px;line-height:1.5}.hero-lead{font-size:16px}.hero-message{font-size:13px}.admin-illustration{height:195px;transform:none}.admin-image-link:hover .admin-illustration,.admin-image-link:active .admin-illustration{transform:translateY(-2px)}.screen{width:225px;height:128px;transform:translateX(-50%)}.base{top:153px}.person{right:15px;bottom:12px;transform:scale(.85)}.c1{left:0;font-size:36px}.c2{left:0;font-size:28px}.gear{left:5px;bottom:16px;font-size:35px}.new-system{gap:10px;padding:13px!important}.new-subtitle{font-size:10px}.new-title{font-size:13px}.new-system>.bi{display:none}.admin-shell{padding:26px 14px}.admin-head{display:block}.admin-head p{line-height:1.9}.editor-card{padding:20px 16px}.grid{grid-template-columns:1fr;gap:0}.actions>*{width:100%;text-align:center}.motion-toggle{top:17px;right:14px}.login-card{padding:28px 20px}.contact-row a{display:inline-block}.admin-illustration::before{inset:5px 15px}}
/* All animation controls also apply to decorative pseudo-elements. */
html.motion-paused *,html.motion-paused *::before,html.motion-paused *::after{animation-play-state:paused!important;transition:none!important}
html.reduce-motion *,html.reduce-motion *::before,html.reduce-motion *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
html.reduce-motion .js-reveal{opacity:1!important;transform:none!important}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.js-ready .js-reveal{opacity:1;transform:none}}
