:root{--bg:#f5f4f0;--surface:#fff;--surface-2:#faf9f6;--border:#e7e4dc;--border-soft:#f0ede6;--ink:#14161c;--ink-2:#4a4f5c;--muted:#8a8f9c;--navy:#0e1a2b;--navy-2:#1a2c45;--gold:#b8914a;--gold-2:#a67c33;--gold-soft:#f4ecdc;--success:#177a4b;--success-bg:#e6f4ec;--danger:#b42318;--danger-bg:#fdecea;--info:#1d4e89;--info-bg:#e8eff8;--warn:#9a6512;--warn-bg:#fdf4e3;--radius:14px;--shadow:0 1px 2px #1018280a, 0 4px 16px #1018280a}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:IBM Plex Sans Thai,system-ui,-apple-system,sans-serif;font-size:15px;line-height:1.5}a{color:var(--navy)}h1,h2,h3{margin:0}.btn{height:42px;font:inherit;color:#fff;background:var(--navy);cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:14px;font-weight:600;text-decoration:none;transition:background .15s,box-shadow .15s,transform 50ms;display:inline-flex}.btn:hover{background:var(--navy-2)}.btn:active{transform:translateY(1px)}.btn.gold{background:linear-gradient(135deg, #cfa962, var(--gold-2));box-shadow:0 6px 18px #a67c3340}.btn.gold:hover{background:linear-gradient(135deg,#c49d55,#98712c)}.btn.secondary{background:var(--surface);color:var(--ink);border-color:var(--border)}.btn.secondary:hover{background:var(--surface-2)}.btn.danger{background:var(--surface);color:var(--danger);border-color:#f3c7c2}.btn.danger:hover{background:var(--danger-bg)}.btn.block{width:100%}.btn.lg{border-radius:12px;height:52px;font-size:15px}.btn.sm{height:34px;padding:0 12px;font-size:13px}.btn:disabled{opacity:.55;cursor:not-allowed}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field label{color:var(--ink-2);font-size:12.5px;font-weight:600}.field input,.field textarea,.input{border:1px solid var(--border);width:100%;height:42px;font:inherit;color:var(--ink);background:#fff;border-radius:10px;padding:0 14px;font-size:14px;transition:border-color .15s,box-shadow .15s}.field input:focus,.field textarea:focus,.input:focus{border-color:var(--gold);outline:none;box-shadow:0 0 0 3px #b8914a2e}.field input[readonly]{background:var(--surface-2);color:var(--ink-2)}.hint{color:var(--muted);font-size:12px}.grid-2,.grid-3{gap:16px;display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}@media (width<=720px){.grid-2,.grid-3{grid-template-columns:1fr}}.stack{flex-direction:column;gap:16px;display:flex}.stack-lg{flex-direction:column;gap:24px;display:flex}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px}.card.flush{padding:0;overflow:hidden}.card-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:20px;display:flex}.card-title{font-size:16px;font-weight:700}.card-sub{color:var(--muted);margin-top:2px;font-size:13px}.form-section+.form-section{border-top:1px solid var(--border-soft);margin-top:28px;padding-top:28px}.shell{background:linear-gradient(to right, var(--navy) 264px, var(--bg) 264px);grid-template-columns:264px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:var(--navy);color:#cfd6e3;flex-direction:column;height:100vh;padding:24px 16px;display:flex;position:sticky;top:0}.brand{border-bottom:1px solid #ffffff14;align-items:center;gap:12px;margin-bottom:14px;padding:0 8px 22px;display:flex}.brand-name{color:#fff;font-size:16px;font-weight:700}.brand-sub{color:#8e9ab0;letter-spacing:1.6px;text-transform:uppercase;font-size:10.5px}.side-label{letter-spacing:.3px;text-transform:uppercase;color:#6f7c93;padding:10px 12px 8px;font-size:12px}.side-nav{flex-direction:column;gap:4px;display:flex}.side-link{color:#cfd6e3;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;width:100%;padding:10px 12px;font-family:inherit;font-size:14px;font-weight:500;text-decoration:none;display:flex}.side-link:hover{color:#fff;background:#ffffff0f}.side-link.active{color:#f1d9a6;background:#d4b06a24}.side-link.active svg{color:#d8b775}.side-footer{border-top:1px solid #ffffff14;margin-top:auto;padding-top:16px}.user-chip{align-items:center;gap:10px;margin-bottom:6px;padding:8px;display:flex}.avatar{color:#f1d9a6;text-transform:uppercase;background:#24364f;border-radius:50%;flex:none;place-items:center;width:36px;height:36px;font-weight:700;display:grid}.user-name{color:#fff;font-size:14px;font-weight:600}.user-role{color:#8e9ab0;font-size:12px}.main{min-width:0}.main-inner{max-width:1180px;margin:0 auto;padding:36px 40px 64px}@media (width<=900px){.shell{background:var(--bg);grid-template-columns:minmax(0,1fr)}.sidebar{height:auto;padding:14px 16px 10px;position:relative}.brand{border:0;margin:0 0 10px;padding:0}.side-label,.user-chip{display:none}.side-nav{flex-direction:row;gap:6px;overflow-x:auto}.side-link{white-space:nowrap;width:auto;padding:8px 12px}.side-footer{border:0;margin:0;padding:0;position:absolute;top:18px;right:16px}.side-footer .side-link span{display:none}.main-inner{padding:24px 16px 48px}}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:28px;display:flex}.eyebrow{letter-spacing:.4px;text-transform:uppercase;color:var(--gold);font-size:12.5px;font-weight:600}.page-header h1{flex-wrap:wrap;align-items:center;gap:12px;margin:4px 0;font-size:28px;font-weight:700;display:flex}.page-sub{color:var(--muted);font-size:14px}.page-actions{flex-wrap:wrap;gap:10px;display:flex}.back-link{color:var(--muted);align-items:center;gap:6px;margin-bottom:10px;font-size:13px;text-decoration:none;display:inline-flex}.back-link:hover{color:var(--ink)}.kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px;display:grid}@media (width<=1060px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=520px){.kpis{grid-template-columns:1fr}}.kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px;position:relative;overflow:hidden}.kpi-label{color:var(--muted);align-items:center;gap:10px;font-size:13px;display:flex}.kpi-icon{background:var(--gold-soft);color:#8a6a2c;border-radius:9px;flex:none;place-items:center;width:32px;height:32px;display:grid}.kpi-value{font-variant-numeric:tabular-nums;letter-spacing:-.3px;margin-top:14px;font-size:26px;font-weight:700}.kpi-foot{color:var(--muted);margin-top:2px;font-size:12.5px}.kpi.dark{background:linear-gradient(145deg, var(--navy), #1f3558);color:#fff;border-color:#0000}.kpi.dark:after{content:"";border:1px solid #d4b06a40;border-radius:50%;width:140px;height:140px;position:absolute;top:-40px;right:-40px}.kpi.dark .kpi-label,.kpi.dark .kpi-foot{color:#a9b5c9}.kpi.dark .kpi-icon{color:#e6c78a;background:#d4b06a2e}.toolbar{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.search{flex:1;min-width:200px;max-width:380px;position:relative}.search svg{color:var(--muted);position:absolute;top:50%;left:13px;transform:translateY(-50%)}.search .input{padding-left:40px}.tabs{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:3px;display:inline-flex}.tab{font:inherit;color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:7px 14px;font-size:13px;font-weight:600}.tab.active{color:var(--ink);background:#fff;box-shadow:0 1px 3px #1018281a}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%}th{text-align:left;letter-spacing:.2px;text-transform:uppercase;color:var(--muted);background:var(--surface-2);border-bottom:1px solid var(--border);white-space:nowrap;padding:12px 20px;font-size:12px;font-weight:600}td{border-bottom:1px solid var(--border-soft);vertical-align:middle;padding:14px 20px;font-size:14px}tbody tr:last-child td{border-bottom:0}tr.clickable{cursor:pointer}tr.clickable:hover td{background:#fbfaf7}.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.cell-title{font-weight:600}.cell-sub{color:var(--muted);margin-top:2px;font-size:12.5px}.code-chip{background:var(--surface-2);border:1px solid var(--border);letter-spacing:1px;white-space:nowrap;border-radius:6px;padding:3px 8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px}.progress{background:#eeebe3;border-radius:999px;min-width:100px;height:6px;overflow:hidden}.progress>span{background:linear-gradient(90deg, #d2ae68, var(--gold-2));border-radius:999px;height:100%;display:block}.progress-meta{color:var(--muted);margin-top:6px;font-size:12px}.badge{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.badge:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.badge.active{background:var(--info-bg);color:var(--info)}.badge.completed,.badge.confirmed{background:var(--success-bg);color:var(--success)}.badge.archived{color:#6b6f7a;background:#f1f0ec}.badge.started{color:#4a5568;background:#eef1f5}.badge.pending{background:var(--warn-bg);color:var(--warn)}.badge.failed{background:var(--danger-bg);color:var(--danger)}.error{color:var(--danger);background:var(--danger-bg);border:1px solid #f6d3cf;border-radius:10px;padding:10px 14px;font-size:13.5px}.notice-success{color:var(--success);background:var(--success-bg);border:1px solid #cfe9da;border-radius:10px;padding:10px 14px;font-size:13.5px}.muted{color:var(--muted);font-size:13px}.empty{text-align:center;color:var(--muted);padding:56px 20px}.loading-screen{min-height:60vh;color:var(--muted);place-items:center;display:grid}.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.stat{border-right:1px solid var(--border-soft);padding:22px 24px}.stat:last-child{border-right:0}.stat-label{color:var(--muted);font-size:12.5px}.stat-value{font-variant-numeric:tabular-nums;letter-spacing:-.2px;margin-top:6px;font-size:24px;font-weight:700}.stat-foot{border-top:1px solid var(--border-soft);background:var(--surface-2);flex-wrap:wrap;align-items:center;gap:12px;padding:16px 24px;display:flex}.stat-foot .input{background:#fff;flex:1;min-width:220px;height:38px;font-size:13px}@media (width<=900px){.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat{border-bottom:1px solid var(--border-soft)}}.detail-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start;gap:24px;display:grid}.form-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:24px;display:grid}@media (width<=960px){.detail-grid,.form-layout{grid-template-columns:1fr}}.sticky{position:sticky;top:24px}.summary-line{border-bottom:1px dashed var(--border);justify-content:space-between;padding:10px 0;font-size:14px;display:flex}.summary-line:last-child{border-bottom:0}.summary-line .num{font-weight:600}.summary-total{background:var(--navy);color:#fff;border-radius:12px;margin-top:12px;padding:16px}.summary-total .label{color:#a9b5c9;font-size:12.5px}.summary-total .value{font-variant-numeric:tabular-nums;color:#f1d9a6;font-size:26px;font-weight:700}.auth{grid-template-columns:1.1fr 1fr;min-height:100vh;display:grid}.auth-brand{background:radial-gradient(circle at 20% 15%, #213a60 0, var(--navy) 60%);color:#fff;flex-direction:column;justify-content:space-between;padding:56px;display:flex;position:relative;overflow:hidden}.auth-brand:before,.auth-brand:after{content:"";border:1px solid #d4b06a38;border-radius:50%;position:absolute}.auth-brand:before{width:460px;height:460px;bottom:-140px;right:-140px}.auth-brand:after{width:300px;height:300px;bottom:-60px;right:-60px}.auth-brand h2{margin-bottom:14px;font-size:36px;font-weight:700;line-height:1.3}.auth-brand h2 em{color:#e3c381;font-style:normal}.auth-brand p{color:#a9b5c9;max-width:420px;margin:0;line-height:1.8}.auth-points{color:#cfd6e3;flex-direction:column;gap:12px;margin-top:32px;font-size:14px;display:flex}.auth-points div{align-items:center;gap:10px;display:flex}.auth-points svg{color:#d8b775}.auth-form{justify-content:center;align-items:center;padding:40px 24px;display:flex}.auth-card{width:100%;max-width:380px}.auth-card h1{margin-bottom:6px;font-size:26px}@media (width<=860px){.auth{grid-template-columns:1fr}.auth-brand{display:none}}.public{background:linear-gradient(180deg, var(--navy) 0, #1a2f4d 280px, var(--bg) 280px);min-height:100vh}.public-top{align-items:center;gap:12px;max-width:480px;margin:0 auto;padding:24px 16px 20px;display:flex}.public-top .brand-sub{color:#9fb0c8;letter-spacing:.2px;text-transform:none;font-size:12px}.public-body{flex-direction:column;gap:16px;max-width:480px;margin:0 auto;padding:0 16px 48px;display:flex}.hero-card{background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 24px 60px #0e1a2b2e}.hero-head{border-bottom:1px solid var(--border-soft);align-items:center;gap:14px;padding:22px 24px;display:flex}.hero-head .avatar{background:var(--gold-soft);color:#8a6a2c;width:44px;height:44px}.hero-name{font-size:18px;font-weight:700}.hero-balance{text-align:center;padding:26px 24px 8px}.hero-amount{letter-spacing:-.8px;font-variant-numeric:tabular-nums;margin:4px 0 18px;font-size:42px;font-weight:700}.hero-meta{border:1px solid var(--border-soft);border-radius:12px;grid-template-columns:1fr 1fr;margin:20px 24px 0;display:grid;overflow:hidden}.hero-meta>div{text-align:center;padding:12px 14px}.hero-meta>div+div{border-left:1px solid var(--border-soft)}.hero-meta .label{color:var(--muted);font-size:12px}.hero-meta .value{font-variant-numeric:tabular-nums;font-weight:700}.hero-actions{text-align:center;padding:22px 24px 24px}.qr-frame{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:18px;padding:14px;display:inline-block}.qr-frame img{width:240px;height:240px;display:block}.qr-caption{color:var(--muted);margin:12px 0 4px;font-size:13px}.status-line{justify-content:center;align-items:center;gap:8px;margin:14px 0;font-size:14px;font-weight:600;display:flex}.status-line.success{color:var(--success)}.status-line.danger{color:var(--danger)}.spinner{border:2px solid #e8d9b8;border-top-color:var(--gold);border-radius:50%;width:14px;height:14px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.done-state{text-align:center;padding:28px 24px 30px}.done-icon{background:var(--success-bg);width:56px;height:56px;color:var(--success);border-radius:50%;place-items:center;margin:0 auto 12px;display:grid}.history-item{border-bottom:1px solid var(--border-soft);align-items:center;gap:12px;padding:14px 0;display:flex}.history-item:last-child{border-bottom:0;padding-bottom:0}.history-icon{background:var(--success-bg);width:34px;height:34px;color:var(--success);border-radius:50%;flex:none;place-items:center;display:grid}.history-item .num{margin-left:auto;font-weight:600}.footer-note{text-align:center;color:var(--muted);justify-content:center;align-items:center;gap:6px;font-size:12px;display:flex}.code-input{text-align:center;letter-spacing:10px;font-variant-numeric:tabular-nums;font-weight:600;height:60px!important;font-size:26px!important}.field select,select.input{border:1px solid var(--border);appearance:none;width:100%;height:42px;font:inherit;color:var(--ink);cursor:pointer;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238a8f9c' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 14px center no-repeat;border-radius:10px;padding:0 38px 0 14px;font-size:14px}.field select:focus,select.input:focus{border-color:var(--gold);outline:none;box-shadow:0 0 0 3px #b8914a2e}.field textarea,textarea.input{resize:vertical;height:auto;min-height:88px;padding:12px 14px;line-height:1.6}.site{flex-direction:column;min-height:100vh;display:flex}.site-header{z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);background:#fffffff7;position:sticky;top:0}.site-brand{align-items:center;gap:12px;text-decoration:none;display:flex}.site-brand-name{color:var(--navy);letter-spacing:-.2px;font-size:21px;font-weight:700;line-height:1.2}.site-brand-name span{color:#2a7fc1}.site-brand-sub{color:var(--muted);font-size:12px}.brand-logo{object-fit:cover;border-radius:50%;flex:none;display:block;box-shadow:0 0 0 1px #b8914a66}.site-header-inner{align-items:center;gap:24px;max-width:1180px;margin:0 auto;padding:14px 24px;display:flex}.site-header .brand{border:0;margin:0;padding:0;text-decoration:none}.site-nav{align-items:center;gap:6px;margin-left:auto;display:flex}.site-nav a{color:var(--ink-2);white-space:nowrap;border-radius:10px;padding:9px 16px;font-size:14.5px;font-weight:600;text-decoration:none}.site-nav a:hover{color:var(--ink);background:var(--surface-2)}.site-nav a.active{color:#7a5c22;background:var(--gold-soft)}.site-nav a.nav-cta{background:var(--navy);color:#fff}.site-nav a.nav-cta:hover{background:var(--navy-2)}.hero{background:radial-gradient(circle at 80% 0%, #24406a 0, var(--navy) 55%);color:#fff;padding:48px 24px 112px;position:relative;overflow:hidden}.hero:after{content:"";border:1px solid #d4b06a2e;border-radius:50%;width:520px;height:520px;position:absolute;top:-200px;right:-160px}.hero-inner{z-index:1;max-width:1180px;margin:0 auto;position:relative}.hero h1{margin:10px 0 12px;font-size:40px;font-weight:700;line-height:1.25}.hero h1 em{color:#e3c381;font-style:normal}.hero p{color:#a9b5c9;max-width:560px;margin:0;line-height:1.8}.steps{flex-wrap:wrap;gap:8px;margin-top:28px;display:flex}.step-pill{color:#a9b5c9;background:#ffffff12;border-radius:999px;align-items:center;gap:8px;padding:7px 14px 7px 8px;font-size:13px;font-weight:600;display:flex}.step-pill .n{background:#ffffff1f;border-radius:50%;place-items:center;width:22px;height:22px;font-size:12px;display:grid}.step-pill.active{color:var(--navy);background:#fff}.step-pill.active .n{background:var(--gold);color:#fff}.step-pill.done{color:#e3c381}.step-pill.done .n{background:#d4b06a38}.site-main{z-index:2;flex:1;width:100%;max-width:1180px;margin:-72px auto 0;padding:0 24px 72px;position:relative}.site-footer{border-top:1px solid var(--border);text-align:center;color:var(--muted);padding:22px 24px;font-size:13px}.gen-title{color:var(--ink-2);align-items:center;gap:12px;margin:28px 0 12px;font-size:14px;font-weight:700;display:flex}.gen-title:after{content:"";background:var(--border);flex:1;height:1px}.model-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;display:grid}.model-card{border:1px solid var(--border);text-align:left;font:inherit;color:var(--ink);cursor:pointer;background:#fff;border-radius:14px;flex-direction:column;gap:4px;padding:14px;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.model-card:hover:not(:disabled){border-color:var(--gold);transform:translateY(-2px);box-shadow:0 10px 28px #0e1a2b17}.model-card:disabled{cursor:not-allowed;opacity:.55}.model-thumb{color:#9a7a3c;background:linear-gradient(160deg,#f8f4ec,#eee6d4);border-radius:10px;place-items:center;height:96px;margin-bottom:8px;display:grid}.model-name{font-size:15px;font-weight:700}.model-meta{color:var(--muted);font-size:12.5px}.model-price{color:var(--ink-2);margin-top:6px;font-size:13px}.model-price strong{color:var(--navy);font-size:15px}.ti-layout{grid-template-columns:360px minmax(0,1fr);align-items:start;gap:24px;display:grid}.ti-aside{flex-direction:column;gap:16px;display:flex;position:sticky;top:88px}.device-head{align-items:center;gap:14px;display:flex}.device-head .model-thumb{flex:none;width:64px;height:64px;margin:0}.cap-pills{flex-wrap:wrap;gap:8px;display:flex}.cap-pill{border:1px solid var(--border);height:38px;font:inherit;color:var(--ink);cursor:pointer;background:#fff;border-radius:10px;padding:0 14px;font-size:13px;font-weight:600}.cap-pill.active{background:var(--navy);color:#fff;border-color:var(--navy)}.cap-pill:disabled{opacity:.4;cursor:not-allowed;text-decoration:line-through}.price-panel{background:linear-gradient(145deg, var(--navy), #1f3558);color:#fff;border-radius:16px;padding:22px;position:relative;overflow:hidden}.price-panel:after{content:"";border:1px solid #d4b06a40;border-radius:50%;width:160px;height:160px;position:absolute;top:-50px;right:-50px}.price-panel .label{color:#a9b5c9;font-size:12.5px}.price-panel .value{color:#f1d9a6;font-variant-numeric:tabular-nums;letter-spacing:-.5px;font-size:38px;font-weight:700}.price-panel .breakdown{color:#cfd6e3;border-top:1px solid #ffffff1a;justify-content:space-between;margin-top:10px;padding-top:10px;font-size:13px;display:flex}.price-panel .disclaimer{color:#8e9ab0;margin-top:12px;font-size:11.5px;line-height:1.6}.step-head{margin-bottom:4px}.step-head h2{margin-top:4px;font-size:24px;font-weight:700}.opt-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.opt-list.dense{grid-template-columns:repeat(3,minmax(0,1fr))}.opt{border:1px solid var(--border);font:inherit;text-align:left;color:var(--ink);cursor:pointer;background:#fff;border-radius:12px;align-items:center;gap:10px;padding:12px 14px;font-size:14px;transition:border-color .12s,background .12s;display:flex}.opt:hover{border-color:#d9c59b}.opt .mark{color:#fff;border:2px solid #cfcabd;border-radius:50%;flex:none;place-items:center;width:18px;height:18px;display:grid}.opt.multi .mark{border-radius:5px}.opt.selected{border-color:var(--gold);background:#fbf6ea;box-shadow:0 0 0 3px #b8914a1f}.opt.selected .mark{border-color:var(--gold);background:var(--gold)}.slot-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.ti-mobilebar{display:none}.done-card{text-align:center;max-width:560px;margin:0 auto}.booking-no{letter-spacing:2px;background:var(--gold-soft);color:#7a5c22;border-radius:10px;margin:8px 0 20px;padding:8px 18px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:22px;font-weight:700;display:inline-block}@media (width<=960px){.ti-layout{grid-template-columns:1fr}.ti-aside{position:static}.ti-aside .aside-actions{display:none}.ti-mobilebar{z-index:30;border-top:1px solid var(--border);background:#fff;align-items:center;gap:12px;padding:12px 16px;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px #0e1a2b14}.ti-mobilebar .btn{flex:1}.site.with-bar{padding-bottom:76px}.slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.hero{padding:32px 16px 96px}.hero h1{font-size:28px}.site-main{padding:0 16px 56px}.site-header-inner{gap:12px;padding:12px 16px}.site-brand-sub{display:none}.site-nav a{padding:8px 10px;font-size:13px}.opt-list,.opt-list.dense{grid-template-columns:1fr}.model-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.model-thumb{height:72px}}.cat-bar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.model-row{border-bottom:1px solid var(--border-soft);grid-template-columns:220px minmax(0,1fr) auto;align-items:start;gap:20px;padding:18px 20px;display:grid}.model-row:last-child{border-bottom:0}.model-row.inactive .cell-title{color:var(--muted)}.cap-edit-grid{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.cap-edit{flex-direction:column;gap:4px;width:132px;display:flex}.cap-edit-label{color:var(--ink-2);justify-content:space-between;align-items:center;font-size:12px;font-weight:600;display:flex}.cap-edit .input{height:36px;padding:0 10px;font-size:13px}.link-btn{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0;font-size:12px}.link-btn:hover{color:var(--danger)}.switch{color:var(--ink-2);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:12.5px;display:inline-flex}.switch input{display:none}.switch .track{background:#d9d5cb;border-radius:999px;width:34px;height:20px;transition:background .15s;position:relative}.switch .track:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #0003}.switch input:checked+.track{background:var(--success)}.switch input:checked+.track:after{transform:translate(14px)}.panel{border-bottom:1px solid var(--border);background:var(--surface-2);padding:20px}.row-actions{flex-direction:column;align-items:stretch;gap:8px;display:flex}.pct-input{width:110px;position:relative}.pct-input .input{text-align:right;padding-right:30px}.pct-input span{color:var(--muted);font-size:13px;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.cond-option{grid-template-columns:minmax(0,1fr) 110px auto;align-items:center;gap:10px;padding:8px 0;display:grid}.detail-row td{background:var(--surface-2)}@media (width<=900px){.model-row{grid-template-columns:1fr}.row-actions{flex-direction:row}}.cond-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:24px;display:grid}@media (width<=960px){.cond-grid{grid-template-columns:1fr}}.side-section{flex-direction:column;gap:4px;margin-bottom:10px;display:flex}@media (width<=900px){.side-section{display:contents}}.public-top a.brand-link{align-items:center;gap:12px;text-decoration:none;display:flex}@media (width<=440px){.site-brand-name{display:none}}.landing-hero{color:#fff;background:radial-gradient(circle at 12% 18%,#3a82c859 0,#0000 42%),linear-gradient(135deg,#0e1a2b 0%,#152a4b 58%,#1c3d6b 100%);position:relative;overflow:hidden}.landing-hero:before,.landing-hero:after{content:"";pointer-events:none;border-radius:50%;position:absolute}.landing-hero:before{border:1px solid #d4b06a2e;width:900px;height:900px;bottom:-620px;left:-420px;box-shadow:0 0 0 60px #ffffff04,0 0 0 120px #ffffff03}.landing-hero:after{border:1px solid #5aa0e633;width:620px;height:620px;top:-260px;right:-200px;box-shadow:0 0 0 50px #5aa0e608}.landing-inner{z-index:1;grid-template-columns:minmax(0,1.1fr) 440px;align-items:center;gap:56px;max-width:1180px;margin:0 auto;padding:72px 24px 80px;display:grid;position:relative}.landing-copy h1{letter-spacing:-.5px;margin:12px 0 18px;font-size:50px;font-weight:700;line-height:1.2}.landing-copy h1 em{color:#e3c381;font-style:normal}.landing-copy p{color:#b6c2d6;max-width:520px;margin:0;font-size:16px;line-height:1.85}.hero-chips{flex-wrap:wrap;gap:10px;margin-top:30px;display:flex}.hero-chips span{color:#e4e9f2;background:#ffffff12;border:1px solid #ffffff1f;border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:13.5px;display:inline-flex}.hero-chips svg{color:#e3c381}.quote-card{color:var(--ink);background:#fff;border-radius:20px;padding:34px 32px 28px;box-shadow:0 30px 70px #0000004d}.quote-card h2{text-align:center;margin-bottom:24px;font-size:22px;font-weight:700}.quote-card .field select{border-radius:12px;height:56px;padding-left:18px;font-size:15px}.quote-card .field select:disabled{background-color:var(--surface-2);color:var(--muted);cursor:not-allowed}.quote-hint{background:var(--gold-soft);color:#7a5c22;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;font-size:13.5px;display:flex}.quote-hint strong{font-variant-numeric:tabular-nums;font-size:19px}.quote-note{color:var(--muted);text-align:center;margin-top:14px;font-size:12px}.section{max-width:1180px;margin:0 auto;padding:80px 24px}.section-head{text-align:center;margin-bottom:52px}.section-head .bar{background:var(--gold);border-radius:4px;width:56px;height:4px;margin:0 auto 18px;display:block}.section-head h2{font-size:30px;font-weight:700}.section-head p{color:var(--muted);margin:10px 0 0}.how-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;display:grid;position:relative}.how-steps:before{content:"";border-top:2px dashed #d9cfb8;position:absolute;top:62px;left:18%;right:18%}.how-step{text-align:center;position:relative}.how-icon{border:1px solid var(--border);width:124px;height:124px;color:var(--navy);background:#fff;border-radius:50%;place-items:center;margin:0 auto 22px;display:grid;position:relative;box-shadow:0 10px 30px #0e1a2b12}.how-icon .num{background:linear-gradient(135deg, #cfa962, var(--gold-2));color:#fff;border-radius:50%;place-items:center;width:32px;height:32px;font-size:14px;font-weight:700;display:grid;position:absolute;top:2px;right:2px}.how-step h3{margin-bottom:8px;font-size:18px;font-weight:700}.how-step p{color:var(--muted);max-width:290px;margin:0 auto;font-size:14px;line-height:1.75}.cta-strip{max-width:1180px;margin:0 auto 80px;padding:0 24px}.cta-inner{background:linear-gradient(135deg, var(--navy), #1f3558);color:#fff;border-radius:20px;flex-wrap:wrap;align-items:center;gap:24px;padding:32px 36px;display:flex}.cta-inner h3{margin-bottom:6px;font-size:22px;font-weight:700}.cta-inner p{color:#a9b5c9;margin:0}.hero.compact{padding:32px 24px 104px}.hero.compact h1{margin:6px 0 0;font-size:30px}@media (width<=960px){.landing-inner{grid-template-columns:minmax(0,1fr);gap:28px;padding:40px 16px 48px}.landing-copy h1{font-size:34px}.how-steps{grid-template-columns:minmax(0,1fr);gap:44px}.how-steps:before{display:none}.section{padding:56px 16px}.cta-strip{margin-bottom:56px;padding:0 16px}}@media (width<=520px){.quote-card{padding:24px 20px 20px}.landing-copy p{font-size:15px}.section-head h2,.hero.compact h1{font-size:24px}.landing-inner{padding-top:28px}.landing-copy h1{margin-bottom:0;font-size:30px}.landing-copy p{display:none}.hero-chips{gap:8px;margin-top:18px}.hero-chips span{padding:6px 12px;font-size:12.5px}}.province-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;padding:20px;display:grid}.province-chip{border:1px solid var(--border);font:inherit;color:var(--ink-2);cursor:pointer;text-align:left;background:#fff;border-radius:10px;align-items:center;gap:8px;padding:9px 12px;font-size:13.5px;display:flex}.province-chip:hover{border-color:#d9c59b}.province-chip .mark{color:#fff;border:2px solid #cfcabd;border-radius:5px;flex:none;place-items:center;width:16px;height:16px;display:grid}.province-chip.active{border-color:var(--gold);color:var(--ink);background:#fbf6ea;font-weight:600}.province-chip.active .mark{border-color:var(--gold);background:var(--gold)}@media (width<=640px){.province-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:14px}}.location-status{border-top:1px solid var(--border-soft);align-items:center;gap:6px;margin-top:10px;padding-top:10px;font-size:12.5px;display:flex}.location-status.granted{color:var(--success)}.location-status.denied,.location-status.error{color:var(--danger)}.location-status .spinner{border-color:#d9d5cb;border-top-color:var(--ink-2)}
