@font-face{font-family:Kanit;src:url(/fonts/kanit-400-thai.woff2) format("woff2");font-display:swap;font-weight:400;unicode-range:u+0e00-0e7f}@font-face{font-family:Kanit;src:url(/fonts/kanit-400-latin.woff2) format("woff2");font-display:swap;font-weight:400}:root{color-scheme:dark;--bg:#090e19;--surface:#101827;--raised:#152033;--border:#263448;--text:#eef3fb;--muted:#a0aec2;--accent:#72edc1;--blue:#7694ff;--warning:#ffd086;--radius:18px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Kanit,system-ui,sans-serif;font-size:16px;line-height:1.6}button,input,select,textarea{font:inherit}a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}a,button{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:4px}button{border:0}h1,h2,h3,p{margin:0}h1{font-size:34px;font-weight:600;letter-spacing:-.8px;line-height:1.3}h2{font-size:20px}h2,h3{font-weight:500}h3{font-size:17px}small{font-size:13px;color:var(--muted)}svg{flex-shrink:0}.muted{color:var(--muted)}.eyebrow{font-size:11px;letter-spacing:2.1px;color:var(--accent);font-family:system-ui,sans-serif;font-weight:700}.shell{display:flex;min-height:100vh}.sidebar{width:254px;flex-shrink:0;border-right:1px solid var(--border);background:#0d1422;padding:29px 18px;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;z-index:5}.brand{display:flex;align-items:center;gap:13px;font:750 23px/1.3 system-ui,sans-serif;padding:0 11px 30px}.brand small{display:block;font:10px/2 system-ui,sans-serif;letter-spacing:2.3px}.brand-symbol{width:46px;height:46px;display:grid;place-items:center;background:linear-gradient(135deg,#6b85ff,#7455d9);border-radius:14px;color:white;box-shadow:0 8px 25px #5b51d32b}.workspace-label{font:10px/2 system-ui,sans-serif;letter-spacing:2px;color:var(--muted);padding:8px 12px}.site-picker{font-size:12px;margin:8px 10px 27px;color:var(--muted)}input,select,textarea{color:var(--text);background:#0a1220;border:1px solid var(--border);border-radius:10px;padding:11px 13px;min-height:46px;width:100%;margin-top:6px}textarea{resize:vertical}label{display:block;font-size:14px;color:#c7d4e7}select{cursor:pointer}.nav{display:flex;align-items:center;gap:12px;background:transparent;color:var(--muted);padding:13px 14px;width:100%;text-align:left;margin:5px 0;border-radius:11px;min-height:48px}.nav:hover{background:#18243a;color:var(--text)}.nav.active{color:var(--accent);background:#15302f;box-shadow:inset 3px 0 var(--accent)}.nav-count{font:12px system-ui,sans-serif;margin-left:auto;border-radius:6px;background:#1b293d;padding:4px 7px}.sidebar-bottom{margin-top:auto;padding:24px 10px 0}.secure-note{display:flex;gap:9px;font:12px/1.5 system-ui,sans-serif;color:var(--muted);padding-bottom:16px}.secure-note small{display:block;font:12px/2 Kanit,system-ui,sans-serif}.main{margin-left:254px;min-width:0;width:calc(100% - 254px)}.topbar{height:86px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:20px;padding:0 36px}.breadcrumb{font-size:14px;color:#b3c2d8}.breadcrumb span{color:#55677f;margin:0 12px}.connection{margin-left:auto;color:var(--muted);font-size:13px;display:flex;gap:9px;align-items:center}.dot{height:7px;width:7px;border-radius:50%;display:inline-block;background:var(--warning)}.dot.good{background:var(--accent);box-shadow:0 0 0 5px #72edc113}.avatar{width:35px;height:35px;display:grid;place-items:center;border:1px solid var(--border);border-radius:50%;font:14px system-ui,sans-serif;background:#1e2a41}.content{max-width:1570px;margin:auto;padding:38px 36px}.page-heading{display:flex;gap:24px;justify-content:space-between;align-items:center;margin-bottom:30px}.page-heading h1{margin:8px 0 10px}.page-heading p{font-size:14px;max-width:720px}.primary,.secondary,.text-button{display:inline-flex;justify-content:center;align-items:center;gap:8px;border-radius:10px;min-height:44px;padding:10px 16px;transition:background .18s,transform .18s}.primary{background:var(--accent);color:#07271e;font-weight:500}.primary:hover:not(:disabled){background:#a0f8d9;transform:translateY(-1px)}.secondary{background:#19263b;border:1px solid #30415a;color:#e4edfa}.secondary:hover:not(:disabled){background:#263956}.text-button{padding:9px 0;background:none;color:var(--accent);font-size:13px}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:34px}.metric{border:1px solid var(--border);border-radius:var(--radius);padding:21px;background:linear-gradient(145deg,#152135,#101827)}.metric>div{display:flex;gap:8px;align-items:center;justify-content:space-between;color:var(--muted);font-size:13px}.metric svg{color:#8e9fbe}.metric>strong{display:block;font:500 37px/1.7 system-ui,sans-serif;letter-spacing:-1px}.metric small{display:block;font-size:12px}.panel-heading,.section-title{display:flex;align-items:center;justify-content:space-between;gap:14px}.section-title{margin:20px 0}.section-title>.muted{font-size:12px}.site-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.site-card{padding:25px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);animation:appear .25s ease-out}.site-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.site-mark{width:48px;height:48px;display:grid;place-items:center;border-radius:13px;background:#1b2e43;color:var(--accent);font:700 19px system-ui,sans-serif}.badge{display:inline-flex;gap:6px;align-items:center;min-height:26px;padding:3px 10px;border-radius:7px;background:#23334a;font-size:12px;color:#c7d8f2;white-space:normal}.badge.good{background:#123b31;color:var(--accent)}.badge.warning{background:#3c3020;color:var(--warning)}.domain{display:flex;align-items:center;gap:6px;font:13px/2.5 system-ui,sans-serif;color:var(--muted);margin:3px 0 18px}.domain svg{width:14px}.site-status{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:15px 0;border-top:1px solid var(--border);color:var(--muted);font-size:12px}.site-status strong{display:block;color:#dbe6f5;font-size:13px;font-weight:400;margin-top:5px}.site-card footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--border);margin-top:2px;padding-top:15px}.site-card footer small{font-size:11px}.info-strip{display:flex;align-items:center;gap:12px;background:#102229;border:1px solid #27414a;border-radius:12px;padding:16px 19px;color:#b9d5d9;font-size:13px;margin:24px 0}.info-strip svg{color:var(--accent)}.page-footer{display:flex;justify-content:space-between;gap:12px;color:#8c9bb3;font:10px system-ui,sans-serif;letter-spacing:1px;border-top:1px solid var(--border);padding-top:24px;margin-top:38px}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:22px;overflow:hidden}.panel-heading{padding:21px 23px;border-bottom:1px solid var(--border)}.panel-heading .muted{font-size:12px}.padded{padding:25px}.padded h2{margin:10px 0}.padded p{font-size:14px}.padded>button{margin:18px 10px 10px 0}.padded>small{display:block}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}th{font-size:12px;color:var(--muted);font-weight:400;padding:15px 22px;background:#111e30}td{padding:16px 22px;border-top:1px solid var(--border);vertical-align:middle}td strong{font-weight:400;display:block;min-width:140px}td small{display:block;font-size:11px;margin-top:4px;max-width:400px;overflow-wrap:anywhere}.empty{text-align:center;padding:45px 25px;color:var(--muted)}.empty svg{color:#83a1ba;margin-bottom:8px}.empty h3{color:#d0dff2}.empty p{font-size:13px;max-width:600px;margin:8px auto 0}.searchbar{display:flex;gap:12px;align-items:center;margin-bottom:22px}.searchbar input{margin:0}.searchbar svg{color:var(--muted)}.searchbar button{flex-shrink:0}.action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.button-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--border)}.module{background:var(--surface);padding:24px}.module>svg{color:var(--accent)}.module h3{margin:12px 0}.module .secondary{font-size:12px}.timeline{padding:0 24px}.timeline article{display:flex;align-items:center;gap:16px;border-bottom:1px solid var(--border);padding:18px 0}.timeline p{font-size:13px;color:var(--muted);margin:2px 0}.timeline small{font-size:11px}.timeline .text-button{margin-left:auto}.timeline-dot{width:9px;height:9px;background:var(--accent);border-radius:50%;flex-shrink:0}.timeline-dot.warning{background:var(--warning)}.alert{padding:14px 18px;border:1px solid;border-radius:12px;margin-bottom:20px;overflow-wrap:anywhere;font-size:14px}.alert.error{background:#2e1c25;border-color:#713d50;color:#ffb3c4}.alert.success{background:#10342c;border-color:#2f6c58;color:#a2f1cf}.error-text{font-size:13px;color:#ffb3c4}.login-shell{min-height:100vh;display:grid;place-items:center;padding:32px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 15% 15%,#26375480,transparent 55%),var(--bg)}.login-decoration{position:absolute;width:650px;height:650px;border:1px solid #30435b66;border-radius:50%;right:-250px;top:-150px;box-shadow:0 0 0 90px #172a3e22,0 0 0 180px #172a3e11;pointer-events:none}.login-card{z-index:1;width:100%;max-width:460px;padding:34px;background:#101827e8;border:1px solid #344157;border-radius:24px}.login-card .brand-symbol{margin-bottom:28px}.login-card h1{margin:13px 0;font-size:36px}.login-card h1 span{color:var(--accent)}.login-card p{font-size:14px;margin-bottom:24px}.login-card label{margin:16px 0}.login-card>.primary{width:100%;margin:12px 0 20px}.login-card>small{display:block;font-size:11px;text-align:center}.loading{display:flex;min-height:100vh;align-items:center;justify-content:center;gap:14px;color:var(--muted)}.spinner{width:20px;height:20px;border:2px solid #32465a;border-top:2px solid var(--accent);border-radius:50%;animation:spin 1s linear infinite}.modal-backdrop{position:fixed;inset:0;z-index:20;background:#02060dce;display:flex;justify-content:center;align-items:center;padding:24px}.modal{width:100%;max-width:850px;max-height:90vh;overflow:auto;background:var(--surface);border:1px solid #425572;border-radius:20px;box-shadow:0 20px 80px #0009;animation:appear .18s ease-out}.movie-modal{max-width:1050px}.modal .panel-heading{position:sticky;top:0;background:var(--surface);z-index:2}.modal .panel-heading h2{font-size:18px}.editor-body{padding:24px}.editor-body>label{margin-bottom:18px}.editor-body pre,pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#0b1321;padding:18px;border-radius:12px;font:12px/1.8 ui-monospace,monospace;max-height:65vh;overflow:auto}.editor-tabs{display:flex;overflow:auto;border-bottom:1px solid var(--border);padding:10px 14px;gap:8px}.editor-tabs button{background:transparent;color:var(--muted);padding:12px;white-space:nowrap;border-radius:8px;min-height:44px}.editor-tabs button.active{background:#1c3c36;color:var(--accent)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.check{display:flex;gap:10px;align-items:center}.category-list input,.check input{width:18px;min-height:18px;margin:0;accent-color:var(--accent)}.category-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-height:250px;overflow:auto;margin-top:12px;gap:10px}.category-list label{display:flex;align-items:center;gap:9px;min-height:44px}.modal-footer{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:20px 24px;border-top:1px solid var(--border)}.modal-footer small{font-size:12px;max-width:450px}.code-input{font:13px/1.8 ui-monospace,monospace}@keyframes appear{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@keyframes spin{to{transform:rotate(1turn)}}@media(min-width:1700px){.content{padding-top:50px}}@media(max-width:1200px){.sidebar{width:220px}.main{margin-left:220px;width:calc(100% - 220px)}.metrics,.module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.content{padding:28px 24px}.topbar{padding:0 24px}.site-status{grid-template-columns:1fr}.site-card footer{display:block}.site-card footer .text-button{display:flex}.page-heading{align-items:flex-start}.page-heading .secondary{font-size:12px;flex-shrink:0}}@media(max-width:760px){h1{font-size:28px}.shell{display:block}.sidebar{position:static;width:100%;height:auto;padding:16px;border-right:0;border-bottom:1px solid var(--border)}.brand{padding:0 0 16px;font-size:20px}.brand-symbol{width:40px;height:40px}.sidebar-bottom,.workspace-label{display:none}.site-picker{margin:0 0 12px}.sidebar nav{display:flex;overflow-x:auto;gap:6px}.nav{width:auto;white-space:nowrap;padding:10px;font-size:12px;margin:0;gap:6px}.nav svg{width:17px}.nav.active{box-shadow:none}.nav-count{display:none}.main{margin:0;width:100%}.topbar{height:60px;padding:0 18px;gap:10px}.breadcrumb{font-size:12px}.connection{font-size:11px}.avatar{display:none}.content{padding:25px 16px}.page-heading{display:block;margin-bottom:22px}.page-heading .secondary{margin-top:18px}.page-heading p{font-size:13px}.metrics{gap:10px;margin-bottom:25px}.metric{padding:16px 12px}.metric>div{font-size:11px}.metric>strong{font-size:29px}.metric small{font-size:10px}.action-grid,.site-grid{grid-template-columns:1fr}.site-status{grid-template-columns:1fr 1fr}.site-card footer{display:flex}.site-card{padding:20px}.section-title{align-items:flex-start;gap:7px}.section-title>.muted{font-size:10px;max-width:140px;text-align:right}.panel-heading{padding:17px}.panel-heading h2{font-size:17px}.panel-heading .muted{display:none}.module-grid{grid-template-columns:1fr 1fr}.module{padding:16px}.module h3{font-size:15px}.module .button-row{display:block}.module .text-button{font-size:11px}.module .secondary{font-size:11px;padding:8px}.searchbar{gap:8px}.searchbar>svg{display:none}.searchbar button{padding:10px 12px}.page-footer{font-size:9px;line-height:2}.page-footer,.page-footer span{display:block}.modal-backdrop{padding:10px}.modal{max-height:94vh}.editor-body{padding:16px}.form-grid{grid-template-columns:1fr}.category-list{grid-template-columns:1fr 1fr}.modal-footer{flex-direction:column;align-items:stretch}.modal .panel-heading h2{font-size:15px}.login-card{padding:25px}.login-shell{padding:18px}.login-card h1{font-size:32px}}@media(prefers-reduced-motion:reduce){*,:after,:before{animation:none!important;transition:none!important;scroll-behavior:auto!important}}