.menu-checkout { width:min(640px, calc(100% - 24px)); max-height:calc(100dvh - 24px); padding:0; border:0; border-radius:16px; color:#101828; background:#fff; overflow:auto; }
.menu-checkout::backdrop { background:rgba(9,25,41,.65); }
.menu-checkout-header { display:flex; gap:16px; justify-content:space-between; padding:24px; background:#0f2642; color:#fff; }
.menu-checkout-header h2 { margin:0; font-size:1.6rem; }
.menu-checkout-header p { margin:8px 0 0; }
.menu-checkout button,.menu-checkout input,.menu-checkout select,.menu-checkout textarea { font:inherit; }
.menu-checkout button { min-height:44px; cursor:pointer; }
.menu-checkout-header button { align-self:flex-start; color:white; background:transparent; border:1px solid #8295a8; border-radius:8px; min-width:44px; font-size:1.5rem; }
.menu-checkout form,.menu-checkout [data-checkout-success] { padding:24px; }
.menu-checkout fieldset { border:0; margin:0; padding:0; min-width:0; }
.menu-checkout label { display:grid; gap:6px; margin-bottom:16px; font-weight:600; }
.menu-checkout input:not([type=checkbox]),.menu-checkout select,.menu-checkout textarea { width:100%; min-width:0; min-height:46px; padding:10px 12px; border:1px solid #8795a6; border-radius:10px; color:#101828; background:#fff; }
.menu-checkout :focus-visible { outline:3px solid #174c84; outline-offset:3px; }
.menu-checkout input:read-only { background:#edf2f7; }
.menu-checkout h3 { font-size:1.1rem; margin:24px 0 12px; }
.menu-checkout p { font-size:1rem; }
.checkout-columns { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.menu-checkout [hidden] { display:none!important; }
.menu-checkout .checkout-check { display:flex; align-items:center; gap:12px; min-height:44px; }
.checkout-check input { width:20px; height:20px; }
.checkout-summary { padding:16px; background:#edf2f7; border-radius:10px; }
.checkout-summary ul { padding-left:20px; margin:0 0 12px; }
.menu-checkout-footer { display:flex; gap:12px; flex-wrap:wrap; margin-top:24px; }
.menu-checkout-footer button { flex:1; padding:12px; border:0; border-radius:10px; }
.menu-checkout-footer button:first-child,.menu-checkout [data-checkout-continue] { background:#edf2f7; color:#0f2642; }
.menu-checkout [data-checkout-continue] { display:block; padding:12px 16px; border:0; border-radius:10px; margin-top:16px; }
.menu-checkout [data-checkout-message]:not(:empty) { padding:12px; background:#fff0ec; color:#8a2016; border-radius:8px; }
.menu-checkout button:disabled { opacity:.6; cursor:not-allowed; }
@media(max-width:480px) { .checkout-columns { grid-template-columns:1fr; gap:0; } .menu-checkout-header,.menu-checkout form,.menu-checkout [data-checkout-success] { padding:18px; } }
