@import "https://fonts.googleapis.com/css2?family=Noto+Sans+Thai:wght@400;500;600;700;800;900&display=swap";:root{color:#e5edf8;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#07111f;font-family:Noto Sans Thai,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}code{color:#bae6fd;background:#082f49c7;border:1px solid #7dd3fc38;border-radius:.55rem;padding:.12rem .42rem}.app-shell{background:radial-gradient(circle at 0 0,#0ea5e933,#0000 34rem),radial-gradient(circle at 100% 100%,#22c55e1f,#0000 30rem),linear-gradient(135deg,#020617 0%,#07111f 48%,#0d1b2f 100%);min-height:100vh;padding:2rem}.home-shell{place-items:center;display:grid}.dashboard,.home-card,.auth-card{width:min(1120px,100%);margin:0 auto}.home-card,.auth-card,.summary-card,.status-card,.info-panel,.form-card,.table-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0f172ac7;border:1px solid #94a3b82e;box-shadow:0 24px 90px #00000052}.auth-card,.home-card{border-radius:36px;padding:1rem;overflow:hidden}.auth-card{max-width:760px}.auth-content{padding:clamp(1.5rem,6vw,4rem)}.home-toolbar,.top-nav,.toolbar-actions,.nav-cluster{justify-content:space-between;align-items:center;gap:1rem;display:flex}.home-toolbar{padding:.2rem}.nav-pill,.language-toggle,.nav-links{color:#93c5fd;background:#0206177a;border:1px solid #7dd3fc2e;border-radius:999px;align-items:center;gap:.35rem;padding:.35rem;font-weight:800;display:inline-flex}.nav-pill{padding:.55rem .8rem}.top-nav{margin-bottom:1.5rem}.nav-cluster{flex-wrap:wrap;justify-content:flex-start;min-width:0}.app-brand{color:#e0f2fe;background:#02061794;border:1px solid #7dd3fc2e;border-radius:999px;align-items:center;gap:.75rem;min-width:0;padding:.35rem .9rem .35rem .4rem;font-weight:900;display:inline-flex}.app-brand__logo{object-fit:cover;object-position:center;mix-blend-mode:screen;background:#020617e6;border-radius:999px;flex:none;width:2.8rem;height:2.8rem;box-shadow:0 0 28px #2dd4bf2e}.app-brand__name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.language-toggle{background:linear-gradient(#020617e6,#0f172ac7);border-color:#67e8f947;gap:.3rem;padding:.25rem .35rem;box-shadow:0 8px 24px #0284c72e}.language-toggle-label{color:#67e8f9;background:#0ea5e929;border-radius:999px;justify-content:center;align-items:center;width:1.9rem;height:1.9rem;font-size:.95rem;display:inline-flex}.button-label{justify-content:center;align-items:center;gap:.5rem;display:inline-flex}.button-copy{align-items:center;gap:.35rem;display:inline-flex}.button-label--stack{justify-content:flex-start;align-items:flex-start}.button-label--stack .button-copy{flex-direction:column;align-items:flex-start;gap:.4rem;display:flex}.button-icon{justify-content:center;align-items:center;line-height:1;display:inline-flex}.button-icon svg{width:1.1rem;height:1.1rem;display:block}.language-option{color:#93a9c5;background:0 0;border:0;border-radius:999px;padding:.52rem .9rem;font-weight:850;transition:all .16s}.language-option:hover{color:#d7f5ff;background:#0ea5e933}.language-option.active{color:#031424;background:linear-gradient(135deg,#67e8f9,#34d399);box-shadow:0 6px 18px #34d39959}.nav-links button,.ghost-button{color:#94a3b8;background:0 0;border:0;border-radius:999px;padding:.55rem .85rem;font-weight:850}.nav-links button:hover,.ghost-button:hover{color:#e0f2fe;background:#0ea5e92e;box-shadow:inset 0 0 0 1px #7dd3fc29}.hero{justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:1.5rem;display:flex}.eyebrow{color:#38bdf8;letter-spacing:.1em;text-transform:uppercase;margin:0 0 .75rem;font-weight:900}h1,h2,p{margin-top:0}h1{color:#f8fafc;letter-spacing:-.035em;max-width:840px;margin-bottom:1rem;font-size:clamp(2.35rem,7vw,5rem);line-height:.98}.subtitle{color:#b6c3d4;max-width:760px;margin-bottom:0;font-size:1.1rem;line-height:1.75}.action-row{flex-wrap:wrap;gap:.75rem;margin-top:1.25rem;display:flex}.auth-divider{background:linear-gradient(90deg,#0000,#94a3b859,#0000);width:100%;height:1px;margin:.2rem 0}.google-link{text-align:center;width:100%}.primary-link,.secondary-link,.refresh-button{border-radius:999px;justify-content:center;align-items:center;min-height:48px;padding:.85rem 1.15rem;font-weight:900;transition:transform .16s,box-shadow .16s,background .16s;display:inline-flex}.primary-link,.refresh-button{color:#031424;background:linear-gradient(135deg,#7dd3fc,#34d399);border:0;box-shadow:0 16px 42px #38bdf833}.primary-link:hover,.refresh-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 20px 52px #38bdf847}.secondary-link{color:#dbeafe;background:#0f172ab8;border:1px solid #7dd3fc38}.secondary-link:hover{background:#1e293be6}.refresh-button{min-width:156px}.refresh-button:disabled,.primary-link:disabled{cursor:wait;opacity:.68;transform:none}.home-actions-grid,.status-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.action-card{text-align:left;min-height:180px;color:inherit}.action-card .button-label{justify-content:flex-start}.action-card .button-icon{margin-top:.1rem;font-size:1.35rem}.action-card .button-copy>span{color:#94a3b8;font-weight:800;display:block}.action-card strong{color:#f8fafc;margin-top:.5rem;font-size:1.4rem;display:block}.summary-card{border-radius:24px;align-items:center;gap:1rem;margin-bottom:1rem;padding:1rem;display:flex}.summary-card strong{color:#f8fafc;margin-bottom:.25rem;font-size:1.1rem;display:block}.summary-card p{color:#94a3b8;word-break:break-word;margin-bottom:0}.summary-dot{border-radius:999px;flex:none;width:1rem;height:1rem;box-shadow:0 0 0 8px #94a3b81f}.summary-dot.online{background:#22c55e;box-shadow:0 0 0 8px #22c55e24}.summary-dot.offline{background:#f97316;box-shadow:0 0 0 8px #f9731624}.status-card{border-radius:28px;min-width:0;padding:1.25rem}.status-card-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;display:flex}.service-label{color:#67e8f9;margin-bottom:.35rem;font-weight:900}.status-card h2{color:#f8fafc;margin-bottom:0;font-size:1.25rem}.badge{letter-spacing:.05em;text-transform:uppercase;border-radius:999px;padding:.42rem .72rem;font-size:.78rem;font-weight:900}.badge.online{color:#052e16;background:#86efac}.badge.offline{color:#450a0a;background:#fca5a5}.badge.checking{color:#172554;background:#bfdbfe}.status-details{gap:.75rem;margin:0;display:grid}.status-details div{grid-template-columns:112px minmax(0,1fr);align-items:baseline;gap:1rem;display:grid}.status-details dt{color:#94a3b8;font-weight:800}.status-details dd{color:#e2e8f0;word-break:break-word;margin:0}.detail-box,.form-error{color:#fecaca;white-space:pre-wrap;background:#7f1d1d3d;border:1px solid #f871713d;border-radius:18px;margin:1rem 0 0;padding:1rem;overflow-x:auto}.management-grid{grid-template-columns:minmax(320px,.75fr) minmax(0,1.25fr);align-items:start;gap:1rem;display:grid}.form-card{border-radius:28px;gap:1rem;padding:1.25rem;display:grid}.form-card label,.checkbox-list{color:#cbd5e1;gap:.45rem;font-weight:800;display:grid}.form-card input,.form-card textarea{color:#f8fafc;background:#0206177a;border:1px solid #94a3b83d;border-radius:16px;outline:none;width:100%;padding:.85rem 1rem}.form-card textarea{resize:vertical;min-height:110px}.form-card input:focus,.form-card textarea:focus{border-color:#7dd3fc94;box-shadow:0 0 0 4px #0ea5e924}.checkbox-row,.checkbox-list label{align-items:center;gap:.55rem;display:flex!important}.checkbox-row input,.checkbox-list input{width:auto}.table-card{border-radius:28px;padding:.5rem;overflow:auto}table{border-collapse:collapse;width:100%}td{color:#e2e8f0;vertical-align:top;border-bottom:1px solid #94a3b824;padding:1rem}td small{color:#94a3b8;margin-top:.25rem;display:block}td button{color:#dbeafe;background:#0f172ae6;border:1px solid #7dd3fc33;border-radius:999px;margin-right:.45rem;padding:.45rem .7rem}td button .button-copy{gap:.25rem}td button:hover{background:#0ea5e92e}.loading-screen{z-index:9999;place-items:center;padding:1.5rem;display:grid;position:fixed;inset:0}.loading-screen__backdrop{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:radial-gradient(circle at top,#38bdf833,#0000 28rem),radial-gradient(circle at bottom,#a855f738,#0000 24rem),#020617c7;position:absolute;inset:0}.loading-screen__panel{background:linear-gradient(#0f172af0,#020617eb);border:1px solid #7dd3fc38;border-radius:32px;width:min(560px,100%);padding:1.5rem 2rem 2rem;position:relative;overflow:hidden;box-shadow:0 30px 90px #02061785}.loading-screen__stars{pointer-events:none;position:absolute;inset:0}.loading-screen__stars span{background:#bfdbfef2;border-radius:999px;width:.5rem;height:.5rem;animation:1.8s ease-in-out infinite pulse-star;position:absolute;box-shadow:0 0 18px #7dd3fca6}.loading-screen__stars span:first-child{animation-delay:0s;top:18%;left:12%}.loading-screen__stars span:nth-child(2){animation-delay:.4s;top:24%;right:16%}.loading-screen__stars span:nth-child(3){animation-delay:.8s;bottom:18%;left:20%}.loading-screen__orbits{width:180px;height:180px;margin:1.75rem auto;position:relative}.loading-screen__orbit,.loading-screen__core{border-radius:999px;position:absolute;inset:50%;transform:translate(-50%,-50%)}.loading-screen__orbit{border:1px solid #7dd3fc42;animation:7s linear infinite spin-orbit}.loading-screen__orbit--outer{width:180px;height:180px}.loading-screen__orbit--mid{width:126px;height:126px;animation-duration:4.6s;animation-direction:reverse}.loading-screen__orbit--inner{width:74px;height:74px;animation-duration:3s}.loading-screen__core{background:linear-gradient(135deg,#7dd3fc,#c084fc);width:26px;height:26px;box-shadow:0 0 28px #7dd3fcbf}.loading-screen__meta{text-align:center;gap:.45rem;margin-top:.5rem;display:grid}.loading-screen__meta strong{color:#f8fafc}.loading-screen__meta p{color:#93c5fd;margin-bottom:0}.loading-screen__meta code{overflow-wrap:anywhere;max-width:100%;margin:0 auto;display:inline-block}@keyframes spin-orbit{0%{transform:translate(-50%,-50%)rotate(0)}to{transform:translate(-50%,-50%)rotate(360deg)}}@keyframes pulse-star{0%,to{opacity:.4;transform:scale(.9)}50%{opacity:1;transform:scale(1.2)}}.nasa-page{gap:1rem;display:grid}.nasa-hero-card,.nasa-status-strip,.nasa-api-card,.nasa-metric-card{background:radial-gradient(circle at 0 0,#38bdf824,#0000 18rem),radial-gradient(circle at 100% 100%,#a855f729,#0000 22rem),#020617db;border:1px solid #7dd3fc2e;box-shadow:0 24px 80px #0206176b}.nasa-hero-card{border-radius:32px;grid-template-columns:minmax(0,1.6fr) minmax(280px,.9fr);gap:1rem;padding:1.4rem;display:grid;overflow:hidden}.nasa-hero-copy p:last-child{margin-bottom:0}.nasa-hero-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;display:grid}.nasa-metric-card{border-radius:24px;padding:1rem}.nasa-metric-card span,.nasa-summary{color:#a5b4cf}.nasa-metric-card strong{color:#f8fafc;margin-top:.45rem;font-size:1.8rem;display:block}.nasa-status-strip{border-radius:24px;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding:1rem 1.2rem;display:grid}.nasa-status-strip p,.nasa-preview-copy p{color:#b8c6da;margin-bottom:0}.nasa-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.nasa-api-card{border-radius:28px;flex-direction:column;gap:1rem;min-width:0;padding:1.2rem;display:flex}.nasa-api-head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.nasa-api-head h2{color:#f8fafc;margin-bottom:.45rem}.nasa-preview-image{object-fit:cover;background:#020617b3;border:1px solid #94a3b829;border-radius:24px;width:100%;min-height:220px;max-height:300px}.nasa-api-body{flex:1;gap:1rem;display:grid}.nasa-preview-copy{gap:.55rem;display:grid}.nasa-preview-copy strong{color:#e0f2fe;font-size:1.05rem}.nasa-lines{color:#dbeafe;gap:.45rem;margin:0;padding-left:1.1rem;display:grid}.nasa-meta-list div{grid-template-columns:110px minmax(0,1fr)}.nasa-card-actions{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:.75rem;margin-top:auto;display:grid}.nasa-card-actions a{text-align:center;border-radius:22px;justify-content:center;align-items:center;width:100%;min-width:0;height:64px;padding:0 1rem;display:flex}@media (width<=900px){.app-shell{padding:1rem}.home-toolbar,.top-nav,.toolbar-actions,.hero,.status-card-header,.nav-cluster{flex-direction:column;align-items:stretch}.home-actions-grid,.status-grid,.management-grid,.nasa-grid,.nasa-status-strip,.nasa-hero-card,.nasa-hero-metrics{grid-template-columns:1fr}.language-toggle,.nav-links,.refresh-button,.primary-link,.secondary-link,.app-brand{width:100%}.app-brand{justify-content:center}.language-option,.nav-links button{text-align:center;flex:1}.status-details div{grid-template-columns:1fr;gap:.25rem}}
