        body { font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", sans-serif; background-color: var(--bg-body); color: var(--text-main); margin: 0; padding: 16px 16px calc(90px + max(env(safe-area-inset-bottom, 0px), var(--sa-bottom, 0px))) 16px; padding-top: calc(72px + max(env(safe-area-inset-top, 0px), var(--sa-top, 0px))); line-height: 1.45; -webkit-font-smoothing: antialiased; }
        .container { max-width: 800px; margin: 0 auto; }


        .card { background: var(--surface-card); border: 1px solid var(--border-soft); border-radius: 12px; padding: 16px; margin-bottom: 12px; }
        /* базовая .photo-fold-head и .photo-fold-chev — в chrome.css;
           в Уходе одна голова на карточку — без верхнего отступа */
        .photo-fold-head { margin-top: 0; }
        .photo-fold-head--base { font-size: 20px; }
        /* тело — плавный спойлер sb-fold (chrome.css) */
        .photo-fold-body { --sb-fold-max: 900px; --sb-fold-mt: 10px; }
        .photo-copy { font-size: 14px; color: var(--text-sub); line-height: 1.45; margin: 0 0 10px; }
        .method-line { font-size: 15px; color: #fff; line-height: 1.45; margin: 0; padding-bottom: 10px; border-bottom: 1px solid var(--border-soft); }
        .photo-fold-head.is-open ~ .method-line { margin-bottom: 10px; }
        .photo-copy:last-child { margin-bottom: 0; }
        .care-k { font-size: 16px; font-weight: 600; color: #fff; margin: 12px 0 8px; }
        .photo-fold-body > .care-k:first-child { margin-top: 0; }
        .care-list { list-style: none; margin: 0 0 4px; padding: 0; }
        .care-list li { font-size: 14px; color: var(--text-sub); line-height: 1.45; padding: 5px 0 5px 16px; position: relative; }
        .care-list li::before { content: ""; position: absolute; left: 0; top: 12px; width: 5px; height: 5px; border-radius: 50%; background: var(--brand-green); }
        .care-warn {
            margin: 0 0 10px;
            padding: 10px 12px;
            border-radius: 8px;
            border: 1px solid #f39c12;
            background: rgba(243, 156, 18, 0.12);
            font-size: 13px;
            line-height: 1.45;
            color: #fff;
        }
        .care-warn strong { color: #f39c12; }
        .care-warn--shout {
            font-weight: 700;
            color: #f39c12;
            letter-spacing: 0.03em;
            text-align: center;
            font-size: 12px;
            text-transform: uppercase;
        }
        .video-ph {
            width: 100%;
            aspect-ratio: 16 / 9;
            background: #12161b;
            border: 1px solid var(--border-soft);
            border-radius: 8px;
            display: flex;
            align-items: center;
            justify-content: center;
            color: var(--text-sub);
            font-size: 13px;
            margin: 0 0 4px;
            text-align: center;
            padding: 12px;
            box-sizing: border-box;
        }
        .week-row {
            display: flex;
            align-items: center;
            gap: 8px;
            margin: 12px 0;
            padding: 10px 0;
            border-top: 1px solid var(--border-soft);
            border-bottom: 1px solid var(--border-soft);
        }
        .photo-fold-head:not(.is-open) ~ .week-row { border-top: none; margin-top: 0; padding-top: 10px; }
        .week-hint {
            flex: 1;
            min-width: 0;
            font-size: 14px;
            font-weight: 500;
            color: var(--text-sub);
            line-height: 1.3;
        }
        .week-nav { display: flex; align-items: center; gap: 6px; flex: 0 0 auto; }
        .week-btn {
            width: 40px;
            height: 40px;
            border-radius: 8px;
            border: 1.5px solid var(--brand-green);
            background: #12161b;
            color: var(--brand-green);
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 0;
            cursor: pointer;
            -webkit-appearance: none;
            appearance: none;
        }
        .week-btn svg { width: 16px; height: 16px; display: block; }
        .week-btn:disabled {
            border-color: #4E8765;
            color: #4E8765;
            cursor: default;
        }
        .week-label { font-size: 14px; font-weight: 600; color: #fff; min-width: 72px; text-align: center; white-space: nowrap; }
        .days {
            display: grid;
            grid-template-columns: repeat(7, minmax(0, 1fr));
            gap: 4px;
        }
        .day-cell { display: flex; flex-direction: column; align-items: center; gap: 6px; min-width: 0; }
        .day-lab { font-size: 11px; font-weight: 600; color: var(--text-sub); letter-spacing: 0.02em; text-transform: lowercase; }
        .day-box {
            width: 100%;
            max-width: 44px;
            aspect-ratio: 1;
            border: 1.5px solid var(--border-soft);
            border-radius: 8px;
            background: #12161b;
            color: transparent;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 0;
            cursor: pointer;
            font-size: 16px;
            font-weight: 700;
        }
        .day-box.on {
            border-color: var(--brand-green);
            color: var(--brand-green);
            background: rgba(107, 174, 141, 0.08);
        }
        .day-box.locked { cursor: default; }

        .empty-state { display: none; text-align: center; color: var(--text-sub); padding: 40px 20px; line-height: 1.6; font-size: 15px; }

        .question-label { font-size: 15px; font-weight: 600; margin-bottom: 12px; color: #ffffff; display: block; }
        .chat-hint { font-size: 12px; color: var(--text-sub); margin-top: -8px; margin-bottom: 12px; }
        .chat-box { background: #12161b; border: 1px solid var(--border-soft); border-radius: 12px; height: 250px; max-height: 250px; overflow-y: auto; overflow-x: hidden; -webkit-overflow-scrolling: touch; overscroll-behavior: contain; touch-action: pan-y; padding: 12px; margin-bottom: 12px; display: flex; flex-direction: column; gap: 10px; min-height: 0; }
        .chat-msg { background: var(--surface-field); padding: 10px 14px; border-radius: 12px; border-bottom-right-radius: 0; align-self: flex-end; max-width: 85%; font-size: 13px; color: #fff; line-height: 1.4; flex-shrink: 0; }
        .chat-msg-in { align-self: flex-start; border-bottom-right-radius: 12px; border-bottom-left-radius: 0; background: #262d36; }
        .chat-input-wrapper { display: flex; gap: 8px; }
        .chat-input { flex-grow: 1; background: var(--surface-field); border: 1px solid var(--border-soft); color: #fff; height: 40px; padding: 0 12px; line-height: 38px; border-radius: 8px; font-size: 16px; outline: none; min-width: 0; box-sizing: border-box; }
        .chat-input:focus { border-color: var(--brand-green); }
        .chat-send { background: var(--surface-field); color: #dfe8f0; border: 1px solid #3a4756; padding: 0 20px; border-radius: 12px; font-weight: bold; cursor: pointer; box-sizing: border-box; transition: transform 0.08s ease, filter 0.08s ease; -webkit-tap-highlight-color: transparent; }
        /* :active убран — единый отклик нажатия живёт в tokens.css */

