/* Светлое оформление сервиса ЭЦП в стилистике главной страницы (home.css). Подключать после styles.css, body.eds-light. */
body.eds-light {
    --color-bg: #f7f7f2;
    --color-surface: #eeefe9;
    --color-surface-light: #e7e8de;
    --color-text: #253c34;
    --color-text-muted: #56665f;
    --color-accent: #b38d17;
    --color-accent-hover: #9c7a10;
    --color-border: #d8ddd5;
    --home-line: #d8ddd5;
    --home-ink: #253c34;
    --eds-panel: #e9ede5;
    --eds-panel-line: #d5ddcf;
    --eds-gold: #dfba4c;
    --eds-gold-hover: #ebc85d;
    --eds-ok: #2f7a4f;
    --eds-err: #a53a3a;
    --radius: 4px;
    background: var(--color-bg);
    color: var(--home-ink);
    font-family: 'Source Sans 3', Arial, sans-serif;
    line-height: 1.55;
}
body.eds-light a { color: inherit; }
body.eds-light a:not(.btn):not(.logo):not(.cabinet-nav-item) { text-decoration-color: #abb4a9; text-underline-offset: 4px; }
body.eds-light a:not(.btn):hover { text-decoration-color: currentColor; }
body.eds-light ::selection { background: #f0dc98; }

/* ——— Шапка ——— */
body.eds-light .header {
    position: sticky;
    background: #f7f7f2;
    backdrop-filter: none;
    border-bottom: 1px solid var(--home-line);
}
body.eds-light .header-inner { height: 84px; padding-left: 1.5rem; padding-right: 1.5rem; }
body.eds-light .logo { color: var(--home-ink); }
body.eds-light .logo-accent { color: var(--color-accent); }
body.eds-light .nav { display: flex; align-items: center; gap: 26px; }
body.eds-light .nav > a,
body.eds-light .nav-list a {
    color: var(--home-ink);
    font-size: 15px;
    font-weight: 500;
    text-decoration: none;
}
body.eds-light .nav > a:hover,
body.eds-light .nav-list a:hover,
body.eds-light .nav > a[aria-current="page"] { text-decoration: underline; text-underline-offset: 5px; }
body.eds-light .nav-cta { color: var(--home-ink) !important; }
body.eds-light .nav-submenu { background: #fff; border: 1px solid var(--home-line); box-shadow: 0 12px 30px rgba(37, 60, 52, 0.12); }
body.eds-light .nav-toggle span { background: var(--home-ink); }
body.eds-light .eds-wizard-main,
body.eds-light .eds-lab-main,
body.eds-light .doc-main,
body.eds-light .legal-main { padding-top: 3.5rem !important; padding-left: 1.5rem !important; padding-right: 1.5rem !important; }
@media (max-width: 420px) {
    body.eds-light .eds-wizard-main,
    body.eds-light .eds-lab-main,
    body.eds-light .doc-main,
    body.eds-light .legal-main { padding-left: 1rem !important; padding-right: 1rem !important; }
}
body.eds-light.cabinet-app-body .cabinet-app { padding-top: 2rem; }

/* ——— Типографика ——— */
body.eds-light .section-label,
body.eds-light .eds-eyebrow {
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 1.8px;
    text-transform: uppercase;
    color: #58664a;
    margin: 0 0 18px;
}
body.eds-light .section-title,
body.eds-light .cabinet-main-title {
    font-family: 'Source Sans 3', Arial, sans-serif;
    font-size: clamp(34px, 4vw, 52px);
    font-weight: 500;
    line-height: 1.1;
    letter-spacing: -1.8px;
    color: var(--home-ink);
    margin: 0 0 18px;
}
body.eds-light .cabinet-main-title { font-size: clamp(28px, 3vw, 38px); letter-spacing: -1px; }
body.eds-light .section-title em { font-family: 'Cormorant Garamond', Georgia, serif; font-weight: 500; letter-spacing: -1px; }
body.eds-light h2,
body.eds-light .cabinet-subtitle {
    font-family: 'Source Sans 3', Arial, sans-serif;
    font-weight: 500;
    letter-spacing: -0.6px;
    color: var(--home-ink);
}
body.eds-light h3 { font-family: 'Source Sans 3', Arial, sans-serif; font-weight: 600; color: var(--home-ink); letter-spacing: -0.3px; }

/* ——— Кнопки (как .home-button) ——— */
body.eds-light .btn {
    border-radius: 3px;
    border-width: 1px;
    font-weight: 600;
    min-height: 48px;
    padding: 12px 22px;
    transform: none !important;
}
body.eds-light .btn-primary {
    background: var(--eds-gold);
    border-color: var(--eds-gold);
    color: #22352d;
}
body.eds-light .btn-primary:hover { background: var(--eds-gold-hover); border-color: var(--eds-gold-hover); color: #22352d; }
body.eds-light .btn-outline {
    background: transparent;
    color: var(--home-ink);
    border-color: #b9c2b5;
}
body.eds-light .btn-outline:hover { border-color: var(--home-ink); color: var(--home-ink); background: #eeefe6; }
body.eds-light .btn-sm { min-height: 36px; padding: 6px 14px; font-size: 0.9rem; }
body.eds-light .btn:disabled,
body.eds-light .btn[disabled] { opacity: 0.45; cursor: not-allowed; }

/* ——— Поля ввода ——— */
body.eds-light input[type="text"],
body.eds-light input[type="email"],
body.eds-light input[type="tel"],
body.eds-light input[type="password"],
body.eds-light input[type="number"],
body.eds-light input[type="date"],
body.eds-light input[type="search"],
body.eds-light select,
body.eds-light textarea,
body.eds-light .eds-input {
    background: #fff !important;
    color: var(--home-ink) !important;
    border: 1px solid #c9d0c5 !important;
    border-radius: 3px !important;
    font-family: inherit;
}
body.eds-light input:focus,
body.eds-light select:focus,
body.eds-light textarea:focus { outline: 2px solid var(--eds-gold); outline-offset: 1px; border-color: #a99a5c !important; }
body.eds-light input[type="file"] { color: var(--home-ink); }
body.eds-light input[type="checkbox"],
body.eds-light input[type="radio"] { accent-color: #3f5a4e; }
body.eds-light ::placeholder { color: #8a948d; }

/* ——— Панели ——— */
body.eds-light .eds-lab-section,
body.eds-light .eds-wizard-panel,
body.eds-light .doc-card,
body.eds-light .cabinet-main,
body.eds-light .cabinet-sidebar {
    background: #fff;
    border: 1px solid var(--home-line);
    border-radius: 4px;
    box-shadow: none;
}
body.eds-light .eds-lab-method,
body.eds-light .eds-sign-method,
body.eds-light .eds-participant-card,
body.eds-light .dc-cp,
body.eds-light .cabinet-audit-detail,
body.eds-light .eds-sign-doc-info {
    background: var(--eds-panel);
    border: 1px solid var(--eds-panel-line);
    border-radius: 4px;
}
body.eds-light .eds-dropzone { background: #fbfbf8; border-color: #b9c2b5; }
body.eds-light .eds-mode-card,
body.eds-light .eds-template-card { background: #fff; border: 1px solid var(--home-line); color: var(--home-ink); border-radius: 4px; }
body.eds-light .eds-mode-card.is-active,
body.eds-light .eds-template-card.is-active { background: var(--eds-panel); border-color: #8fa18a; box-shadow: inset 3px 0 0 var(--eds-gold); }
body.eds-light .eds-wizard-steps li { background: #fff; border: 1px solid var(--home-line); color: var(--color-text-muted); }
body.eds-light .eds-wizard-steps li.is-active { background: var(--eds-panel); color: var(--home-ink); border-color: #8fa18a; }
body.eds-light .eds-wizard-steps li span { background: #eeefe6; color: var(--home-ink); }

/* ——— Статусы и уведомления ——— */
body.eds-light .eds-lab-status { background: #fff; border-color: var(--home-line); color: var(--home-ink); }
body.eds-light .eds-progress,
body.eds-light .eds-notice,
body.eds-light .dc-quota,
body.eds-light .dc-approval,
body.eds-light .cabinet-password-banner {
    background: #faf3dc;
    border: 1px solid #e6d293;
    color: var(--home-ink);
}
body.eds-light .eds-lab-result,
body.eds-light .cabinet-welcome,
body.eds-light .doc-howto {
    background: #eef4ec;
    border: 1px solid #b9d3bd;
    color: var(--home-ink);
}
body.eds-light .doc-howto h3 { color: var(--eds-ok); }
body.eds-light .auth-error { color: var(--eds-err); background: #fbeeee; border: 1px solid #e8c4c4; padding: 0.75rem 1rem; border-radius: 3px; }
body.eds-light .eds-file-name { color: #6f5a10; }
body.eds-light .dc-bar { background: #dfe3da; }
body.eds-light .dc-file-tag.is-att { background: #e3e7de; color: var(--home-ink); }
body.eds-light .dc-quota-icon,
body.eds-light .dc-file-tag { color: #22352d; background: var(--eds-gold); }
body.eds-light .cabinet-count { background: #eeefe6; }
body.eds-light .cabinet-nav-item { color: var(--color-text-muted); border-radius: 3px; }
body.eds-light .cabinet-nav-item:hover,
body.eds-light .cabinet-nav-item.is-active { background: #f3ecd2; color: var(--home-ink); }
body.eds-light .cabinet-docs-table th,
body.eds-light .cabinet-docs-table td { border-bottom-color: var(--home-line); }
body.eds-light .doc-note { background: var(--eds-panel); }
body.eds-light .doc-status.is-signed,
body.eds-light .doc-status.is-wait { background: #faf3dc; color: #7a6212; }
body.eds-light .doc-status.is-verified { background: #e3f0e6; color: var(--eds-ok); }
body.eds-light .doc-checks .ok { color: var(--eds-ok); }
body.eds-light .doc-checks .bad { color: var(--eds-err); }
body.eds-light .doc-warn { color: #7a6212; }
body.eds-light .eds-lab-log { color: var(--color-text-muted); }

/* ——— Выбор способа подписи ——— */
.eds-choice { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 1rem 0; }
.eds-choice-card {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    padding: 18px 20px;
    text-align: left;
    background: #fff;
    border: 1px solid var(--home-line, #d8ddd5);
    border-radius: 4px;
    color: var(--home-ink, #253c34);
    font: inherit;
    cursor: pointer;
    transition: background .15s ease, border-color .15s ease;
}
.eds-choice-card strong { font-size: 17px; font-weight: 600; }
.eds-choice-card span { font-size: 14px; color: var(--color-text-muted); }
.eds-choice-card:hover:not(:disabled) { background: #eeefe6; border-color: #8fa18a; }
.eds-choice-card.is-active { background: var(--eds-panel, #e9ede5); border-color: #8fa18a; box-shadow: inset 3px 0 0 var(--eds-gold, #dfba4c); }
.eds-choice-card:disabled { opacity: 0.5; cursor: not-allowed; }
.eds-choice-panel[hidden] { display: none !important; }
@media (max-width: 600px) { .eds-choice { grid-template-columns: 1fr; } }

/* ——— Согласия ——— */
.eds-consent { margin: 1rem 0; padding: 14px 16px; background: #fbfbf8; border: 1px solid var(--home-line, #d8ddd5); border-radius: 4px; }
.eds-consent label { display: flex !important; gap: 10px; align-items: flex-start; font-weight: 400 !important; font-size: 0.92rem !important; line-height: 1.45; margin: 0 0 8px !important; cursor: pointer; }
.eds-consent label:last-child { margin-bottom: 0 !important; }
.eds-consent input[type="checkbox"] { margin-top: 3px; flex-shrink: 0; width: 16px; height: 16px; }
.eds-legal {
    margin-top: 1.5rem;
    padding: 16px 18px;
    border-left: 3px solid var(--eds-gold, #dfba4c);
    background: var(--eds-panel, #e9ede5);
    font-size: 0.9rem;
    line-height: 1.55;
    color: var(--color-text-muted);
}
.eds-legal p { margin: 0 0 0.5rem; }
.eds-legal p:last-child { margin-bottom: 0; }

/* ——— Подвал ——— */
.eds-footer,
body.eds-light .footer { margin-top: 3rem; padding: 36px 0 24px; border-top: 1px solid var(--home-line, #d8ddd5); background: #f7f7f2 !important; color: var(--home-ink, #253c34) !important; }
.eds-footer-inner,
body.eds-light .footer-inner { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 18px 32px; }
.eds-footer-links,
body.eds-light .footer-links { display: flex; flex-wrap: wrap; gap: 10px 22px; font-size: 15px; }
.eds-footer-links a,
body.eds-light .footer-links a,
body.eds-light .footer a { text-decoration: none; color: var(--home-ink, #253c34) !important; }
.eds-footer-links a:hover,
body.eds-light .footer a:hover { text-decoration: underline; }
.eds-footer-note,
body.eds-light .footer-copy,
body.eds-light .footer-brand p { font-size: 13px; color: var(--color-text-muted, #56665f) !important; }

/* ——— Страничные секции и карточки для страниц ЭДО ——— */
body.eds-light .page-hero { background: #f7f7f2; color: var(--home-ink, #253c34); }
body.eds-light .eds-product-hero { padding-top: 5rem; padding-bottom: 3rem; }
body.eds-light .eds-product-grid article {
    background: #fff;
    border: 1px solid var(--home-line, #d8ddd5);
    border-radius: 4px;
    padding: 24px 26px;
    box-shadow: 0 1px 3px rgba(37, 60, 52, 0.04);
}
body.eds-light .eds-product-grid article h2 {
    font-size: 1.25rem;
    font-weight: 600;
    color: var(--home-ink, #253c34);
    margin-bottom: 0.5rem;
}
body.eds-light .eds-product-grid article p {
    color: var(--color-text-muted, #56665f);
    font-size: 0.95rem;
    line-height: 1.55;
}

@media (max-width: 760px) {
    body.eds-light .header-inner { height: auto; min-height: 70px; flex-wrap: wrap; padding-block: 12px; }
    body.eds-light .nav { gap: 16px; flex-wrap: wrap; }
    body.eds-light .btn { min-height: 46px; }
}
