:root { color-scheme: light; --bg:#f4f7fb; --surface:#fff; --text:#172033; --muted:#64748b; --line:#dbe3ef; --primary:#1463ff; --success:#12805c; }
* { box-sizing:border-box; }
html, body { width:100%; max-width:100%; min-height:100%; margin:0; overflow-x:hidden; }
body { background:var(--bg); color:var(--text); font:16px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
a { color:var(--primary); }
.public-header { min-height:64px; padding:10px clamp(14px,4vw,36px); display:flex; align-items:center; justify-content:space-between; gap:18px; background:var(--surface); border-bottom:1px solid var(--line); }
.public-brand { display:flex; align-items:center; gap:9px; color:var(--text); font-weight:800; text-decoration:none; }
.public-logo { display:grid; place-items:center; width:38px; height:38px; border-radius:11px; color:#fff; background:linear-gradient(135deg,#1463ff,#0b46ba); }
.public-nav { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:clamp(10px,3vw,24px); }
.public-nav a { color:var(--text); font-size:.9rem; font-weight:650; text-decoration:none; }
.public-main { width:min(1180px,100%); min-width:0; margin:0 auto; padding:clamp(18px,4vw,38px); }
.row { display:flex; flex-wrap:wrap; min-width:0; margin:-.5rem; }
.row > * { min-width:0; width:100%; padding:.5rem; }
.g-3, .g-4 { row-gap:.5rem; }
.card { min-width:0; border:1px solid var(--line); border-radius:16px; background:var(--surface); box-shadow:0 10px 28px rgba(28,49,82,.07); overflow:hidden; }
.card-body { padding:1rem; }
.p-4 { padding:1.5rem; }.p-lg-5 { padding:2rem; }
.page-header { margin-bottom:1.5rem; }.page-title { margin:0; font-size:clamp(1.55rem,5vw,2.2rem); }.page-description,.text-muted { color:var(--muted); }
.h3,.h4,.h5,h1,h2,h3 { line-height:1.2; }.h3 { font-size:1.5rem }.h4 { font-size:1.25rem }.h5 { font-size:1.1rem }.fs-5 { font-size:1.15rem; }
.mb-0 { margin-bottom:0 }.mb-1 { margin-bottom:.25rem }.mb-2 { margin-bottom:.5rem }.mb-3 { margin-bottom:1rem }.mb-4 { margin-bottom:1.5rem }.mt-3 { margin-top:1rem }.mx-auto { margin-inline:auto }.text-center { text-align:center }.text-start { text-align:left }.fw-bold { font-weight:750 }.fw-semibold { font-weight:650 }.small { font-size:.875rem }.d-block { display:block }.d-none { display:none!important }.d-grid { display:grid }.d-flex { display:flex }.flex-wrap { flex-wrap:wrap }.align-items-start { align-items:flex-start }.align-items-center { align-items:center }.justify-content-between { justify-content:space-between }.justify-content-center { justify-content:center }.gap-2 { gap:.5rem }.gap-3 { gap:1rem }.w-100 { width:100% }.h-100 { height:100% }
.btn { display:inline-flex; align-items:center; justify-content:center; min-height:42px; padding:.58rem .9rem; border:1px solid transparent; border-radius:10px; font:inherit; font-weight:650; text-decoration:none; cursor:pointer; }
.btn:focus-visible,.storefront-plan:focus-visible,.form-control:focus,.form-select:focus { outline:3px solid rgba(20,99,255,.25); outline-offset:2px; }
.btn:disabled { cursor:not-allowed; opacity:.55 }.btn-primary { color:#fff; background:var(--primary) }.btn-success { color:#fff; background:var(--success) }.btn-secondary { color:#fff; background:#475569 }.btn-outline-primary { color:var(--primary); border-color:var(--primary); background:transparent }.btn-outline-success { color:var(--success); border-color:var(--success); background:transparent }.btn-sm { min-height:34px; padding:.35rem .65rem; font-size:.875rem }.py-2 { padding-block:.65rem }
.alert { padding:.85rem 1rem; margin-bottom:1rem; border:1px solid #9fc5ff; border-radius:10px; background:#eaf3ff; }.alert-danger { color:#8a1c1c; border-color:#fecaca; background:#fef2f2 }.alert-info { color:#17467b; }
.badge { display:inline-flex; padding:.2rem .5rem; border-radius:999px; font-size:.72rem; }.status-active { color:#08734e; background:#d9f7e9; }
.storefront-plan { position:relative; padding:0; color:inherit; font:inherit; cursor:pointer; transition:border-color .18s,transform .18s,box-shadow .18s; }.storefront-plan:hover { transform:translateY(-2px); border-color:#80aaff }.storefront-plan.is-selected { border:2px solid var(--primary); box-shadow:0 0 0 3px rgba(20,99,255,.13) }.storefront-plan-check { position:absolute; top:10px; right:10px; display:none; color:#fff; background:var(--primary); border-radius:50%; width:25px; height:25px; text-align:center }.storefront-plan.is-selected .storefront-plan-check { display:grid; place-items:center }.storefront-price,.storefront-summary-price { color:var(--primary); font-size:1.25rem; font-weight:800 }
.storefront-order-summary { min-width:0; padding:1rem; border:1px solid var(--line); border-radius:12px; background:var(--bg) }.storefront-summary-details { display:grid; gap:.4rem }.storefront-summary-details div { display:flex; justify-content:space-between; gap:12px }.storefront-summary-details dt { color:var(--muted) }.storefront-summary-details dd { margin:0; text-align:right; font-weight:650 }.metric-label { color:var(--muted); font-size:.78rem }
.form-control,.form-select,input[type=email] { display:block; width:100%; min-height:44px; padding:.65rem .75rem; color:var(--text); background:var(--surface); border:1px solid #b9c6d8; border-radius:9px; font:inherit }.form-label { display:block; margin-bottom:.35rem; font-weight:650 }.text-danger { color:#b42318 }.yaro-empty { padding:2rem; text-align:center; color:var(--muted) }
.bg-light { background:var(--bg) }.border-0 { border:0 }.border-success { border-color:#7ed3b4 }.icon-success { display:grid; place-items:center; width:54px; height:54px; color:#fff; background:var(--success); border-radius:50%; font-size:1.5rem }
@media (min-width:768px) { .col-md-6 { width:50% }.d-md-flex { display:flex }.p-lg-5 { padding:3rem } }
@media (min-width:992px) { .col-lg-4 { width:33.333% }.col-lg-8 { width:66.667% }.col-lg-10 { width:83.333% }.col-xl-9 { width:75% } }
@media (max-width:560px) { .public-header { align-items:flex-start; flex-direction:column }.public-nav { width:100%; justify-content:space-between; gap:8px }.public-main { padding:16px 12px }.card-body,.p-4 { padding:1rem }.storefront-summary-details div { align-items:flex-start; flex-direction:column; gap:1px }.storefront-summary-details dd { text-align:left }.btn { width:100% } }
@media (prefers-color-scheme:dark) { :root { color-scheme:dark; --bg:#0d1422; --surface:#151f31; --text:#e8eef8; --muted:#a9b6c8; --line:#2b3a51 }.alert-info { color:#c9e0ff; background:#142946 }.status-active { color:#91e7c6; background:#153d31 } }
@media print { .no-print { display:none!important }.public-main { width:100%; padding:0 }.card { box-shadow:none } }
