/* V33: edge-to-edge layout with safe internal padding, especially on phones. */
html{width:100%;min-height:100%;margin:0;padding:0;scrollbar-gutter:stable}
body.store-shell,body.admin-shell{width:100%;max-width:100%;min-width:320px;min-height:100vh;min-height:100dvh;margin:0;padding:0;overflow-x:clip}
body.store-shell>.site-header>.container,body.admin-shell>.site-header>.container,body.store-shell>main.container,body.admin-shell>main.container{width:100%!important;max-width:none!important;min-width:0!important;margin-inline:0!important;padding-inline:clamp(12px,1.8vw,30px)!important;box-sizing:border-box!important}
body.store-shell .godpm-page-main{width:100%!important;max-width:none!important;margin:0!important;padding:clamp(10px,1.4vw,22px) clamp(10px,1.8vw,30px) 44px!important;box-sizing:border-box!important}
body.admin-shell .admin-page-main{width:100%!important;max-width:none!important;margin:0!important;padding:clamp(12px,1.5vw,24px) clamp(10px,1.8vw,30px) 44px!important;box-sizing:border-box!important}
body.store-shell .site-header,body.admin-shell .site-header{width:100%!important;max-width:none!important;margin:0!important;box-sizing:border-box!important}
body.store-shell .site-header>.container,body.admin-shell .site-header>.container{width:100%!important;max-width:none!important;margin:0!important}
body.store-shell .godpm-catalog,body.store-shell .godpm-featured-categories,body.store-shell .godpm-section-heading,body.store-shell .godpm-products-grid,body.store-shell .godpm-hero-v12,body.store-shell .godpm-benefits,body.store-shell .godpm-about-v12,body.store-shell .godpm-security-grid,body.store-shell .godpm-bottom-cta,body.store-shell .godpm-footer-main{max-width:none}
body.admin-shell .admin-nav-groups,body.admin-shell .admin-nav,body.admin-shell .admin-page-main>.panel,body.admin-shell .admin-page-main .panel{max-width:none}
body.store-shell img,body.admin-shell img{max-width:100%;height:auto}
/* One-time owner creation screen at /admin, independent of existing site CSS. */
body.setup-shell{display:block;background:radial-gradient(900px 540px at 8% -12%,rgba(255,48,78,.17),transparent 64%),radial-gradient(760px 460px at 100% 100%,rgba(58,98,160,.12),transparent 68%),#080b11;color:#f4f5f7;font-family:Vazirmatn,Tahoma,Arial,sans-serif;line-height:1.9}
.setup-main{display:grid;place-items:center;width:100%;min-height:100vh;min-height:100dvh;margin:0;padding:clamp(12px,3vw,38px);box-sizing:border-box}
.setup-card{width:min(100%,640px);max-width:640px;margin:auto;padding:clamp(18px,4vw,38px);background:linear-gradient(145deg,rgba(23,28,39,.98),rgba(12,15,22,.98));border:1px solid #303848;border-radius:clamp(14px,2vw,24px);box-shadow:0 24px 80px #0007;box-sizing:border-box;animation:gds-v33-appear .35s ease-out both}
.setup-brand{display:flex;align-items:center;gap:12px;padding-bottom:20px;margin-bottom:22px;border-bottom:1px solid #ffffff12}
.setup-brand img{display:block;width:46px;height:46px;object-fit:contain;flex:0 0 46px}
.setup-brand span{display:grid;gap:0;min-width:0}
.setup-brand b{font-size:18px;font-weight:900;color:#fff}
.setup-brand small{font-size:11px;color:#a6afc0}
.setup-card .eyebrow{display:inline-flex;align-items:center;padding:4px 10px;border:1px solid #ff3b5945;border-radius:999px;background:#ff33420d;color:#ff8796;font-size:11px;font-weight:800}
.setup-card h1{font-size:clamp(23px,4.4vw,32px);line-height:1.55;letter-spacing:-.3px;margin:12px 0 8px;color:#fff}
.setup-card p{color:#aeb7c5;font-size:13px;line-height:2;margin:10px 0 16px;overflow-wrap:anywhere}
.setup-card .form-row{display:grid;gap:7px;margin:17px 0}
.setup-card .field-label{font-size:12px;font-weight:800;color:#e5e9f0}
.setup-card .field,.setup-card input:not([type=hidden]){width:100%;min-width:0;min-height:49px;padding:11px 13px;border:1px solid #3a4353;border-radius:12px;background:#090d14;color:#fff;font:inherit;font-size:14px;box-sizing:border-box;outline:none;transition:border-color .18s,box-shadow .18s}
.setup-card input:focus{border-color:#ff536b;box-shadow:0 0 0 3px #ff39551e}
.setup-card button,.setup-button{display:flex;align-items:center;justify-content:center;width:100%;min-height:49px;margin-top:20px;padding:12px 18px;border:0;border-radius:12px;background:linear-gradient(135deg,#ff4962,#d61d3e);color:#fff;font:inherit;font-size:13px;font-weight:900;text-decoration:none;cursor:pointer;box-shadow:0 8px 24px #e1244733;transition:transform .18s,filter .18s}
.setup-card button:hover,.setup-button:hover{filter:brightness(1.08);transform:translateY(-1px)}
.setup-link{display:inline-flex;justify-content:center;width:100%;padding:12px 8px;color:#aeb7c5;text-decoration:none;font-size:12px}
.setup-card .alert{padding:12px 14px;border-radius:12px;margin:14px 0;font-size:12px;line-height:2;overflow-wrap:anywhere}
.setup-card .alert.error{border:1px solid #da4c6155;background:#451d28;color:#ffdbe0}
.setup-card .alert.success{border:1px solid #2e9d7b55;background:#12372f;color:#c0f8e8}
.setup-card code{padding:2px 6px;border-radius:5px;background:#06090f;color:#ffc3cc;overflow-wrap:anywhere}
@keyframes gds-v33-appear{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:600px){
  body.store-shell>.site-header>.container,body.admin-shell>.site-header>.container,body.store-shell>main.container,body.admin-shell>main.container{padding-inline:10px!important}
  body.store-shell .godpm-page-main{padding:8px 8px 30px!important}
  body.admin-shell .admin-page-main{padding:10px 8px 30px!important}
  .setup-main{padding:0;place-items:stretch}
  .setup-card{width:100%;max-width:none;min-height:100vh;min-height:100dvh;margin:0;border-radius:0;border-inline:0;padding:clamp(20px,6vw,30px) clamp(14px,4vw,22px);display:flex;flex-direction:column;justify-content:center}
  .setup-card h1{font-size:26px}
  .setup-card p{font-size:12px}
  .setup-card button,.setup-button{min-height:50px}
}
@media(prefers-reduced-motion:reduce){.setup-card,.setup-card button,.setup-button{animation:none!important;transition:none!important}}


/* V34 typography: use the same Persian font consistently on storefront, admin and setup. */
body.store-shell,body.admin-shell,body.setup-shell,
body.store-shell *,body.admin-shell *,body.setup-shell * {
  font-family:'Vazirmatn','IRANSansX','IRANSans','Segoe UI',Tahoma,Arial,sans-serif !important;
  font-kerning:normal;
  letter-spacing:0 !important;
}
body.store-shell :is(code,pre,kbd,samp,.order-number,.mono),
body.admin-shell :is(code,pre,kbd,samp,.order-number,.mono),
body.setup-shell :is(code,pre,kbd,samp,.order-number,.mono) {
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace !important;
  letter-spacing:normal !important;
}
body.setup-shell { font-size:15px; }
body.setup-shell .setup-card p,body.setup-shell .field-label { font-size:14px; }
body.setup-shell input,body.setup-shell button,body.setup-shell .setup-button { font-size:15px; }
