/* Только страница заявки: принятая тема и футер не переопределяются. */
.website-cart { max-width:1328px; margin:72px auto 160px; padding:0 24px; color:#222; }
.website-cart h1 { font-size:40px; font-weight:500; margin:0 0 64px; }
.website-cart h2 { font-size:28px; font-weight:500; margin:56px 0 24px; }
.website-cart [hidden] { display:none!important; }
.cart-line { display:grid; grid-template-columns:minmax(180px,2.3fr) repeat(5,minmax(60px,1fr)) minmax(190px,1.8fr); gap:16px; align-items:center; border-bottom:1px solid #e7e7e9; padding:24px 0; }
.cart-line small { display:block; color:#626267; font-size:13px; margin-bottom:10px; }
.cart-line strong { font-size:16px; font-weight:600; }
.cart-line p { margin:0; overflow-wrap:anywhere; }
.cart-line-title { display:flex; align-items:center; gap:24px; }
.cart-line-title img { width:110px; height:60px; object-fit:contain; }
.cart-length { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.website-cart input:not([type=checkbox]) { border:1px solid #ced4da; background:var(--c-bg-soft,#f4f4f6); border-radius:4px; min-height:48px; padding:12px; width:100%; font:inherit; color:#222; box-sizing:border-box; transition:border-color .15s ease, background-color .15s ease; }
.website-cart input:not([type=checkbox])::placeholder { color:#9a9b9c; }
.website-cart input:not([type=checkbox]):focus,
.website-cart input:not([type=checkbox]):focus-visible { border-color:var(--c-accent,#ff6a14); background:#fff; outline:none; }
.website-cart input:not([type=checkbox])[aria-invalid="true"] { border-color:#c4271b; }
.website-cart textarea { border:1px solid #ced4da; background:var(--c-bg-soft,#f4f4f6); border-radius:4px; padding:12px; width:100%; font:inherit; color:#222; box-sizing:border-box; resize:vertical; }
.website-cart textarea:focus,
.website-cart textarea:focus-visible { border-color:var(--c-accent,#ff6a14); background:#fff; outline:none; }
.website-cart textarea[aria-invalid="true"] { border-color:#c4271b; }
.website-cart .cart-length input { width:85px; min-height:48px; padding:10px; }
.website-cart button { font:inherit; cursor:pointer; border:1px solid #ff782b; background:transparent; color:#222; border-radius:2px; min-height:44px; padding:10px 16px; }
.website-cart button[type=submit] { background:#ff782b; color:#171717; text-align:left; }
.website-cart button:disabled { opacity:.55; cursor:wait; }
.website-cart :focus-visible { outline:2px solid #222; outline-offset:3px; }
.cart-form { display:grid; grid-template-columns:1fr 1fr; gap:20px 16px; }
.cart-form label { display:block; font-size:15px; }
.cart-form label input { margin-top:8px; }
.cart-form-wide,.cart-form-actions { grid-column:1/-1; }
.cart-form-actions { display:flex; flex-wrap:wrap; gap:16px; }
.website-cart .cart-consent { display:flex; align-items:flex-start; gap:12px; font-size:14px; line-height:1.5; }
.cart-consent input { width:20px; height:20px; flex:none; margin:0; }
.cart-field-error,[data-cart-message].is-error,[data-form-message].is-error { color:#a32720; }
.cart-field-error { display:block; min-height:20px; font-size:14px; }
.cart-estimate { color:#626267; font-size:14px; margin-top:24px; }
.cart-submit { margin-top:56px; display:grid; gap:24px; max-width:660px; }
.cart-unavailable { grid-column:1/-1; }
/* Гостевая корзина: вход и регистрация живут отдельно, в /profile. */
.cart-guest { border:1px solid #e7e7e9; border-radius:4px; padding:24px; margin-top:32px; max-width:760px; }
.cart-guest h2 { margin:0 0 12px; font-size:24px; }
.cart-guest p { margin:0 0 16px; }
.cart-guest-actions { display:flex; flex-wrap:wrap; gap:12px; }
.cart-button { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:10px 18px; border:1px solid #ff782b; border-radius:2px; background:#ff782b; color:#171717; text-decoration:none; }
.cart-button--ghost { background:transparent; }
/* Личный кабинет: вкладки, профиль и заявки. */
.account-note { color:#626267; max-width:760px; }
.account-tabs { display:flex; gap:24px; border-bottom:1px solid #e7e7e9; margin:32px 0; }
.account-tabs button { border:0; border-bottom:2px solid transparent; border-radius:0; min-height:0; padding:10px 2px; background:none; color:#626267; font-size:18px; }
.account-tabs button[aria-selected=true] { color:#222; border-bottom-color:#ff782b; }
.account-panel > h2 { margin-top:0; }
.account-head { display:flex; align-items:center; justify-content:space-between; gap:24px; }
.account-head h2 { margin:0; }
.account-fields { display:grid; grid-template-columns:180px 1fr; gap:10px 24px; margin:24px 0 40px; }
.account-fields dt { color:#626267; }
.account-fields dd { margin:0; }
.account-cta { margin-top:32px; }
.account-leads { width:100%; border-collapse:collapse; }
.account-leads th,.account-leads td { text-align:left; padding:10px 8px; border-bottom:1px solid #e7e7e9; }
.account-leads th { color:#626267; font-weight:400; }
.link-button { border:0; min-height:0; padding:0; background:none; color:#ff782b; text-decoration:underline; }
/* Экран после регистрации: предупреждение о спаме и вход по коду. */
.mail-spam-warning { border:2px solid #ff782b; background:#fff4eb; padding:16px 20px; margin:24px 0; max-width:760px; }
.mail-spam-warning strong { display:block; font-size:18px; margin-bottom:6px; }
.mail-spam-warning p { margin:0; }
.check-email-links { display:flex; gap:16px; align-items:center; flex-wrap:wrap; margin-top:24px; }
.website-cart input[readonly] { background:#f4f4f6; color:#626267; }
/* Кабинет: смена пароля, детали заявки и документы. */
.account-panel-soft { border:1px solid #e7e7e9; border-radius:4px; padding:20px; margin:24px 0 40px; max-width:760px; }
.account-panel-soft h2 { margin:0 0 20px; }
.account-lead-back { font-size:16px; margin-bottom:16px; }
.account-lead-lines { overflow-x:auto; }
.account-lead-lines th,.account-lead-lines td { white-space:nowrap; }
.account-documents { list-style:none; margin:0 0 32px; padding:0; max-width:760px; }
.account-documents li { display:flex; flex-wrap:wrap; gap:6px 16px; align-items:baseline; padding:12px 0; border-bottom:1px solid #e7e7e9; }
.account-doc { color:#222; font-size:16px; }
.account-doc:hover { color:#ff782b; }
.account-doc-meta { color:#626267; font-size:13px; }
/* Избранное и сравнение: списки и таблица. */
.fav-list { list-style:none; margin:0 0 32px; padding:0; max-width:860px; }
.fav-list li { padding:14px 0; border-bottom:1px solid #e7e7e9; display:flex; flex-wrap:wrap; gap:6px 16px; align-items:baseline; }
.fav-name { color:#222; font-size:18px; }
.fav-name:hover { color:#ff782b; }
.fav-meta { color:#626267; font-size:14px; flex-basis:100%; }
.cmp-table { width:100%; border-collapse:collapse; margin:24px 0 16px; }
.cmp-table th,.cmp-table td { text-align:left; padding:10px 12px; border-bottom:1px solid #e7e7e9; vertical-align:top; }
.cmp-table thead th { border-top:1px solid #e7e7e9; background:#fafafb; }
.cmp-table tbody th { color:#626267; font-weight:400; white-space:nowrap; width:200px; }
.cmp-table td { min-width:160px; }
@media(max-width:1100px) { .cart-line { grid-template-columns:repeat(5,1fr); } .cart-line-title,.cart-length { grid-column:1/-1; } .cart-line-title img { width:120px; } .website-cart { margin-top:56px; } }
@media(max-width:600px) { .website-cart { padding:0 12px; margin:40px auto 80px; } .website-cart h1 { font-size:32px; margin-bottom:32px; } .website-cart h2 { font-size:24px; } .cart-form { grid-template-columns:1fr; } .cart-line { grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px 8px; } .cart-line-title { display:block; } .cart-line-title img { display:block; margin-bottom:8px; } .cart-line small { font-size:12px; } .cart-line p { font-size:14px; } .cart-guest { padding:16px; } .account-head { align-items:flex-start; flex-direction:column; gap:12px; } .account-fields { grid-template-columns:1fr; gap:4px 0; } .account-tabs { gap:16px; } }
