@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&family=Noto+Sans+Myanmar:wght@400;500;600;700&display=swap');

:root { --ink:#101827; --muted:#687281; --line:#e3e6ea; --paper:#f7f5ef; --white:#fff; --mint:#b9f3d1; --mint-deep:#22724d; --coral:#ff765d; --coral-dark:#d8513d; --shadow:0 18px 48px rgba(16,24,39,.08); }
* { box-sizing:border-box; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:'Manrope','Noto Sans Myanmar',system-ui,sans-serif; }
button,input,select { font:inherit; }
button { cursor:pointer; }
.app-shell { max-width:1240px; margin:0 auto; padding:0 34px 32px; }
.topbar { display:flex; align-items:center; justify-content:space-between; padding:24px 0 16px; }
.brand { display:flex; gap:11px; align-items:center; color:var(--ink); text-decoration:none; }
.brand-mark { width:42px; height:42px; overflow:hidden; border-radius:12px; display:grid; place-items:center; background:var(--mint); }
.brand-mark img { width:100%; height:100%; }
.brand strong { display:block; font-size:15px; letter-spacing:-.02em; }
.brand small { display:block; color:var(--muted); font-size:10px; margin-top:2px; }
.connection-pill { display:flex; align-items:center; gap:8px; padding:8px 12px; border:1px solid var(--line); border-radius:999px; background:rgba(255,255,255,.58); color:var(--muted); font-size:11px; }
.status-dot { width:7px; height:7px; border-radius:50%; background:#a8afb7; }
.connection-pill.connected { color:var(--mint-deep); border-color:#bce6ca; background:#effcf3; }.connection-pill.connected .status-dot { background:#34a267; }
.hero { display:flex; justify-content:space-between; gap:40px; padding:58px 0 46px; align-items:flex-end; }.hero h1 { margin:10px 0 17px; font-size:clamp(38px,5vw,66px); line-height:1.02; letter-spacing:-.065em; }.hero h1 em { color:var(--coral); font-style:normal; }.hero-copy { max-width:570px; margin:0; color:var(--muted); line-height:1.8; font-size:14px; }.eyebrow,.mini-label { margin:0; color:var(--coral-dark); font-family:'DM Mono',monospace; font-size:10px; letter-spacing:.12em; font-weight:500; }.hero-note { width:235px; display:flex; gap:12px; border-top:1px solid var(--ink); padding-top:12px; font-size:12px; line-height:1.65; }.hero-note p { margin:0; }.note-number { font-family:'DM Mono',monospace; color:var(--coral); }
.card { background:var(--white); border:1px solid rgba(16,24,39,.07); border-radius:18px; box-shadow:var(--shadow); }.key-card { padding:25px 28px 23px; }.step-label { display:flex; align-items:center; gap:10px; color:var(--muted); font-family:'DM Mono',monospace; font-size:9px; letter-spacing:.1em; }.step-label span:first-child { color:var(--coral-dark); }.step-rule { width:24px; height:1px; background:var(--line); }.key-grid { display:grid; grid-template-columns:1fr 1.35fr; gap:40px; margin-top:24px; }.key-card h2,.section-heading h2,.checkout-card h2,.result-section h2 { margin:0; font-size:21px; letter-spacing:-.04em; }.muted { color:var(--muted); line-height:1.65; font-size:12px; }.key-grid .muted { max-width:320px; }.key-input-wrap label[for] { display:block; font-family:'DM Mono',monospace; color:var(--muted); font-size:10px; margin-bottom:7px; }.input-row { display:flex; gap:8px; border:1px solid #cfd5db; border-radius:9px; padding:4px 5px 4px 12px; background:#fbfcfc; }.input-row:focus-within { border-color:var(--ink); box-shadow:0 0 0 3px rgba(185,243,209,.45); }.input-row input { min-width:0; flex:1; border:0; outline:0; background:transparent; color:var(--ink); font-family:'DM Mono',monospace; font-size:13px; }.ghost-button { border:0; background:transparent; color:var(--muted); font-size:11px; padding:7px 8px; }.save-option { display:flex; align-items:center; gap:8px; margin-top:12px; font-size:12px; color:var(--ink); }.save-option input { accent-color:var(--coral); }.security-note { margin:10px 0 0; font-size:10px; color:#9a6d3f; line-height:1.5; }.key-actions { display:flex; align-items:center; gap:16px; margin-top:24px; }.primary-button,.secondary-button,.buy-button { border:0; border-radius:9px; padding:12px 16px; font-weight:700; font-size:12px; transition:transform .18s,background .18s,opacity .18s; }.primary-button { background:var(--ink); color:var(--white); }.primary-button:hover,.buy-button:hover { transform:translateY(-1px); }.primary-button span,.secondary-button span,.buy-button span { margin-left:12px; font-size:16px; }.save-state { color:var(--mint-deep); font-size:11px; }
.workspace-grid { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(310px,.85fr); gap:24px; margin-top:42px; align-items:start; }.section-heading { display:flex; align-items:flex-end; justify-content:space-between; margin-bottom:16px; }.section-heading h2 { margin-top:7px; }.text-button { border:0; background:transparent; color:var(--muted); font-size:11px; padding:4px 0; }.text-button:hover { color:var(--ink); }.products-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }.product-card { padding:19px; background:rgba(255,255,255,.7); border:1px solid var(--line); border-radius:14px; min-height:185px; display:flex; flex-direction:column; justify-content:space-between; transition:border-color .18s,transform .18s,box-shadow .18s; }.product-card:hover,.product-card.selected { border-color:var(--ink); box-shadow:0 10px 26px rgba(16,24,39,.07); transform:translateY(-2px); }.product-top { display:flex; justify-content:space-between; gap:14px; }.product-id { font-family:'DM Mono',monospace; font-size:10px; color:var(--muted); }.product-card h3 { margin:11px 0 6px; font-size:16px; line-height:1.25; letter-spacing:-.03em; }.product-description { margin:0; color:var(--muted); font-size:11px; line-height:1.6; }.product-bottom { display:flex; align-items:flex-end; justify-content:space-between; gap:10px; margin-top:18px; }.product-price { font-family:'DM Mono',monospace; font-size:14px; }.select-button { border:1px solid var(--ink); color:var(--ink); background:transparent; border-radius:7px; padding:8px 10px; font-size:10px; font-weight:700; }.select-button:hover,.product-card.selected .select-button { background:var(--ink); color:var(--white); }.empty-state { text-align:center; border:1px dashed #cdd2d8; border-radius:16px; padding:62px 30px; color:var(--muted); }.empty-icon { width:42px; height:42px; margin:0 auto 14px; border-radius:50%; display:grid; place-items:center; color:var(--coral); background:#fff0ec; font-size:21px; }.empty-state h3,.checkout-empty h3 { margin:0 0 7px; color:var(--ink); font-size:15px; }.empty-state p,.checkout-empty p { max-width:300px; margin:0 auto; font-size:11px; line-height:1.65; }
.checkout-card { padding:24px; position:sticky; top:18px; }.checkout-empty { padding:54px 10px 42px; text-align:center; }.ring-icon { font-size:42px; color:var(--coral); margin-bottom:12px; }.selected-product { border-bottom:1px solid var(--line); padding:25px 0 18px; }.selected-product h3 { margin:8px 0 6px; font-size:18px; letter-spacing:-.03em; }.selected-product p { margin:0; }.field-row { display:grid; grid-template-columns:1fr 1fr; gap:10px; padding:19px 0; }.field-row label { color:var(--muted); font-size:10px; }.field-row input,.field-row select { width:100%; margin-top:7px; padding:10px; border:1px solid var(--line); border-radius:8px; background:#fbfcfc; color:var(--ink); outline:0; }.field-row input:focus,.field-row select:focus { border-color:var(--ink); }.full-width { width:100%; }.secondary-button { background:#eef1f2; color:var(--ink); }.secondary-button:hover { background:#e5e9eb; }.buy-button { background:var(--coral); color:#28100b; }.buy-button:hover { background:#ff674c; }.buy-button:disabled { opacity:.42; cursor:not-allowed; transform:none; }.quote-result { margin:16px 0 12px; padding:14px; border-radius:10px; background:#f3faf5; border:1px solid #cbeed7; }.quote-result .quote-label { font-size:10px; color:var(--mint-deep); font-family:'DM Mono',monospace; }.quote-amount { display:block; margin-top:5px; font-size:23px; font-weight:800; letter-spacing:-.04em; }.quote-meta { display:flex; justify-content:space-between; gap:10px; color:var(--muted); font-size:10px; margin-top:5px; }.flow-tip { display:flex; gap:10px; margin-top:15px; padding:13px 14px; background:#fff6e8; border-radius:10px; color:#8b6a3c; }.flow-tip span { font-family:'DM Mono',monospace; font-size:9px; color:#b27426; }.flow-tip p { margin:0; font-size:10px; line-height:1.6; }
.result-section { display:grid; grid-template-columns:auto 1fr 1.2fr auto; align-items:center; gap:24px; margin-top:32px; padding:25px 28px; background:var(--mint); border-radius:17px; }.success-badge { align-self:start; padding:7px 9px; border-radius:999px; background:var(--ink); color:var(--mint); font-family:'DM Mono',monospace; font-size:9px; }.result-copy h2 { margin:7px 0 5px; }.result-copy p:last-child { margin:0; color:#356b4c; font-size:11px; }.result-links { display:grid; gap:8px; }.result-link { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:11px 13px; border-radius:9px; background:rgba(255,255,255,.62); text-decoration:none; color:var(--ink); font-size:11px; font-weight:700; }.result-link span { font-family:'DM Mono',monospace; font-size:15px; }.result-code { word-break:break-all; display:block; padding:11px; border-radius:9px; background:rgba(255,255,255,.62); font-family:'DM Mono',monospace; font-size:10px; }.result-section .text-button { color:#356b4c; white-space:nowrap; }
 .history-section { margin-top:42px; }.history-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:15px; }.history-heading h2 { margin:7px 0 0; font-size:21px; letter-spacing:-.04em; }.history-heading .muted { margin:5px 0 0; }.history-heading-actions { display:flex; align-items:center; gap:15px; }.history-count { padding:6px 9px; border-radius:999px; background:#eceff1; color:var(--muted); font-family:'DM Mono',monospace; font-size:9px; white-space:nowrap; }.danger-button:hover { color:var(--coral-dark); }.history-list { display:grid; gap:10px; }.history-empty { display:flex; align-items:center; gap:12px; padding:22px 18px; border:1px dashed #cdd2d8; border-radius:13px; color:var(--muted); }.history-empty span { font-size:24px; color:var(--coral); }.history-empty p { margin:0; font-size:11px; }.history-item { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:17px 19px; border:1px solid var(--line); border-radius:13px; background:rgba(255,255,255,.66); }.history-title-row { display:flex; align-items:center; gap:10px; }.history-item h3 { margin:0; font-size:14px; letter-spacing:-.025em; }.history-item p { margin:5px 0 8px; color:var(--muted); font-size:10px; }.history-item strong { font-family:'DM Mono',monospace; font-size:12px; }.history-status { padding:4px 7px; border-radius:999px; background:#eaf9ef; color:var(--mint-deep); font-family:'DM Mono',monospace; font-size:8px; }.history-actions { display:flex; align-items:center; gap:8px; flex-wrap:wrap; justify-content:flex-end; }.history-link { padding:8px 10px; border-radius:7px; background:var(--ink); color:var(--white); text-decoration:none; font-size:10px; font-weight:700; white-space:nowrap; }.history-link:hover { background:#273449; }.history-code { max-width:220px; overflow:hidden; text-overflow:ellipsis; padding:8px 10px; border-radius:7px; background:#fff6e8; color:#8b6a3c; font-size:9px; }
 footer { display:flex; justify-content:space-between; gap:20px; color:#9299a2; font-size:10px; padding:34px 2px 0; }
.modal-backdrop { position:fixed; inset:0; display:grid; place-items:center; padding:20px; background:rgba(16,24,39,.58); z-index:10; }.modal-backdrop[hidden] { display:none; }.confirm-modal { position:relative; max-width:460px; width:100%; background:var(--white); border-radius:17px; padding:28px; box-shadow:0 24px 80px rgba(0,0,0,.25); }.confirm-modal h2 { margin:9px 0 9px; font-size:25px; letter-spacing:-.05em; }.confirm-modal > .muted { margin-bottom:18px; }.modal-close { position:absolute; top:13px; right:15px; border:0; background:transparent; color:var(--muted); font-size:23px; }.confirm-summary { border:1px solid var(--line); border-radius:10px; padding:13px; margin-bottom:20px; }.summary-line { display:flex; justify-content:space-between; gap:18px; padding:5px 0; font-size:11px; }.summary-line + .summary-line { border-top:1px solid #eff0f1; }.summary-line span:first-child { color:var(--muted); }.summary-line strong { text-align:right; }.modal-actions { display:flex; justify-content:flex-end; gap:9px; }.toast { position:fixed; left:50%; bottom:23px; transform:translate(-50%,20px); opacity:0; pointer-events:none; max-width:min(430px,calc(100% - 30px)); padding:12px 15px; border-radius:9px; background:var(--ink); color:var(--white); font-size:11px; box-shadow:0 10px 30px rgba(0,0,0,.2); transition:opacity .2s,transform .2s; z-index:20; }.toast.show { opacity:1; transform:translate(-50%,0); }
 @media (max-width:800px) { .app-shell { padding:0 18px 24px; }.hero { display:block; padding:40px 0 32px; }.hero-note { margin-top:28px; width:auto; }.key-grid { grid-template-columns:1fr; gap:22px; }.workspace-grid { grid-template-columns:1fr; }.checkout-card { position:static; }.result-section { grid-template-columns:auto 1fr; }.result-links { grid-column:1 / -1; }.result-section > .text-button { grid-column:1 / -1; justify-self:start; }.products-grid { grid-template-columns:1fr 1fr; }.history-heading { align-items:flex-start; }.history-item { align-items:flex-start; flex-direction:column; }.history-actions { justify-content:flex-start; } }
@media (max-width:520px) { .topbar { align-items:flex-start; gap:12px; }.connection-pill { max-width:140px; text-align:right; }.hero h1 { font-size:42px; }.key-card { padding:20px; }.products-grid { grid-template-columns:1fr; }.section-heading { align-items:flex-start; }.result-section { grid-template-columns:1fr; }.success-badge { justify-self:start; }.result-links,.result-section > .text-button { grid-column:auto; } footer { display:block; } footer span { display:block; margin-top:7px; } }
