/*
 * LottoMate final color consistency patch
 * Path: /var/www/lottomate/assets/css/lottomate_color_consistency_final.css
 * Purpose: align / and /generator.php with other public pages
 * 기준 컨셉: 네이비 + 골드 GOLD 메인 미리보기
 */

:root{
    --lm-navy:#071d3a;
    --lm-navy2:#092b58;
    --lm-blue:#1e5fbf;
    --lm-gold:#d9a441;
    --lm-gold2:#f5ca5c;
    --lm-gold3:#fff4bd;
    --lm-brown:#3c2700;
    --lm-red:#e33333;
    --lm-green:#26a641;
    --lm-orange:#f59e0b;
    --lm-purple:#9c4dcc;
    --lm-cyan:#22c7ff;
    --lm-text:#1f2937;
    --lm-muted:#6b7280;
    --lm-line:#e5e7eb;
    --lm-bg:#f7f6f2;
    --lm-card:#ffffff;
    --lm-shadow:0 12px 30px rgba(15,23,42,.12);
    --lm-gold-shadow:0 18px 44px rgba(99,65,6,.22);
}

/* ===== 전체 배경/기본톤 ===== */
html,body{
    background:linear-gradient(180deg,#fff 0%,#f7f6f2 50%,#fff 100%) !important;
    color:var(--lm-text) !important;
    letter-spacing:-.035em;
}

/* ===== 상단 공통 ===== */
.topbar,
.public-topbar,
.site-topbar{
    background:#fffaf0 !important;
    border-bottom:1px solid #ead9aa !important;
    color:#5c4520 !important;
}

.gnb,
.public-header,
.site-header,
.header,
header.gnb{
    background:linear-gradient(180deg,#082a57 0%,#061d3f 100%) !important;
    color:#fff !important;
    box-shadow:0 6px 18px rgba(7,29,58,.24) !important;
    border-bottom:1px solid rgba(217,164,65,.24) !important;
}

.brand strong,
.logo strong,
.site-logo strong{
    color:#fff !important;
}

.brand span,
.logo span,
.site-logo span,
.nav .gold,
.gnb .gold{
    color:#f7d76a !important;
}

.nav a:hover,
.gnb a:hover,
.public-header a:hover,
.site-header a:hover{
    color:#f8d66a !important;
}

/* ===== 메인 / 번호생성기 히어로 색상 완전 통일 ===== */
.hero,
.main-hero,
.gold-hero,
.service-hero,
.generator-hero,
.gen-hero,
.generator-page .page-head,
.generator-page .public-page-head,
.latest,
.premium-banner{
    background:
        radial-gradient(circle at 72% 36%,rgba(255,220,80,.28),transparent 22%),
        radial-gradient(circle at 90% 80%,rgba(217,164,65,.28),transparent 25%),
        linear-gradient(115deg,#0b0805 0%,#1b1409 45%,#503509 74%,#c9952f 100%) !important;
    border:1px solid rgba(217,164,65,.55) !important;
    box-shadow:var(--lm-gold-shadow) !important;
    color:#fff !important;
}

.hero::after,
.main-hero::after,
.gold-hero::after,
.service-hero::after,
.generator-hero::after,
.gen-hero::after,
.generator-page .page-head::after,
.generator-page .public-page-head::after{
    background:
        linear-gradient(90deg,rgba(8,6,4,.90),rgba(8,6,4,.38),rgba(8,6,4,.12)),
        repeating-linear-gradient(135deg,rgba(255,255,255,.045) 0 1px,transparent 1px 24px) !important;
}

.hero h1,
.main-hero h1,
.gold-hero h1,
.service-hero h1,
.generator-hero h1,
.gen-hero h1,
.generator-page .page-head h1,
.generator-page .public-page-head h1,
.latest h2,
.premium-banner h2{
    color:#fff8d9 !important;
    text-shadow:0 3px 16px rgba(0,0,0,.42) !important;
}

.hero p,
.main-hero p,
.gold-hero p,
.service-hero p,
.generator-hero p,
.gen-hero p,
.generator-page .page-head p,
.generator-page .public-page-head p,
.premium-banner p{
    color:rgba(255,255,255,.80) !important;
    font-weight:800 !important;
}

/* ===== 라벨/배지 톤 통일 ===== */
.label,
.badge,
.tag,
.gen-label,
.status-badge,
.plan-badge,
.private-pin,
.reply-pin{
    background:rgba(255,231,151,.14) !important;
    border:1px solid rgba(255,231,151,.38) !important;
    color:#ffe9a3 !important;
    border-radius:999px !important;
    font-weight:950 !important;
}

.card .label,
.panel .label,
.section-card .label,
.gen-card .label,
.board-card .label,
.public-card .label,
.my-card .label,
.result-card .label,
.price-card .label,
.plan-card .label,
.card .badge,
.panel .badge,
.section-card .badge,
.gen-card .badge,
.board-card .badge,
.public-card .badge,
.my-card .badge,
.result-card .badge,
.price-card .badge,
.plan-card .badge{
    background:#fff8d9 !important;
    border-color:#ead9aa !important;
    color:#8a5b00 !important;
}

/* ===== 카드/박스 색상 통일 ===== */
.panel,
.card,
.section-card,
.public-card,
.board-card,
.gen-card,
.generator-card,
.result-card,
.condition-card,
.status-card,
.number-card,
price-card,
.plan-card,
.my-card,
.mypage-card,
.saved-card,
.post-card,
.faq-card,
.inquiry-card,
.stat-card,
.preview-card,
.service{
    background:#fff !important;
    border:1px solid #ead9aa !important;
    box-shadow:0 8px 20px rgba(68,44,6,.08) !important;
}

.section-title,
.page-title,
.public-title,
.board-title,
.gen-card h2,
.generator-card h2,
.result-card h2,
.condition-card h2,
.status-card h2,
.my-card h2,
.stat-card h2,
.price-card h2,
.plan-card h2{
    color:#071d3a !important;
}

/* ===== 버튼 색상 통일 ===== */
.btn.gold,
.gen-btn.gold,
.mini-btn.gold,
.public-btn.gold,
.bulk-save-btn,
.price-card a,
.plan-card a,
button[type="submit"],
input[type="submit"]{
    background:linear-gradient(135deg,#fff3b0,#d9a441) !important;
    color:#3b2500 !important;
    border-color:#d9a441 !important;
    box-shadow:0 10px 18px rgba(99,65,6,.16) !important;
}

.btn.dark,
.gen-btn.dark,
.public-btn.dark,
.btn.blue,
.gen-btn.blue,
.public-btn.blue{
    background:#071d3a !important;
    color:#fff !important;
    border-color:rgba(255,255,255,.14) !important;
}

.btn.white,
.btn.light,
.gen-btn.light,
.mini-btn,
.public-btn.light{
    background:#fff !important;
    color:#071d3a !important;
    border:1px solid #e5e7eb !important;
}

/* ===== 메인 side panel 색상 통일 ===== */
.gold-card,
.price-card,
.pricing-card.featured,
.plan-card.featured,
.price-box.featured{
    background:linear-gradient(135deg,#fff3b0,#d9a441) !important;
    color:#3b2500 !important;
    border-color:#d9a441 !important;
}

.summary,
.usage-box,
.member-status,
.generator-status,
.limit-card{
    background:
        radial-gradient(circle at 94% 10%,rgba(255,220,80,.22),transparent 28%),
        linear-gradient(135deg,#071d3a,#092b58) !important;
    color:#fff !important;
    border:1px solid rgba(217,164,65,.42) !important;
}

.summary strong,
.usage-box strong,
.member-status strong,
.generator-status strong,
.limit-card strong{
    color:#f7d76a !important;
}

/* ===== 최신 당첨결과 영역도 동일 골드톤 ===== */
.latest{
    background:
        radial-gradient(circle at 20% 44%,rgba(255,211,95,.23),transparent 22%),
        radial-gradient(circle at 60% 50%,rgba(34,199,255,.16),transparent 24%),
        linear-gradient(110deg,#130e07,#21170a 64%,#6c470d) !important;
}

.latest-center .sub,
.latest-center h2,
.amount-box .small,
.amount-box .amount{
    color:#f7d76a !important;
}

.draw-date,
.amount-box .net,
.amount-box .net b{
    color:#fff3b0 !important;
}

/* ===== 번호생성기 폭도 다른 페이지와 통일 ===== */
.generator-page > .wrap,
.gen-page > .wrap,
.generator-main > .wrap,
.generator-wrap,
.gen-wrap,
.generator-container,
main .generator-wrap,
main .gen-wrap,
main .generator-container,
.generator-layout,
.gen-layout,
.generator-grid,
.hero-layout,
.result-row{
    width:min(1180px,calc(100% - 36px)) !important;
    max-width:1180px !important;
    margin-left:auto !important;
    margin-right:auto !important;
}

.generator-hero,
.gen-hero,
.generator-page .page-head,
.generator-page .public-page-head{
    width:100% !important;
    max-width:1180px !important;
    margin-left:auto !important;
    margin-right:auto !important;
}

/* ===== 번호공 통일 ===== */
.neon,
.ball,
.mini-ball,
.lotto-ball,
.num-ball,
.round-ball{
    color:#fff !important;
    border:1px solid rgba(255,255,255,.86) !important;
    text-shadow:0 1px 2px rgba(0,0,0,.50) !important;
    box-shadow:
        inset 0 3px 5px rgba(255,255,255,.33),
        inset 0 -11px 15px rgba(0,0,0,.22),
        0 8px 16px rgba(15,23,42,.16) !important;
}

.neon.orange,
.ball.orange,
.ball.yellow,
.ball.mb1,
.ball.b1,
.mini-ball.orange,
.mini-ball.yellow,
.mini-ball.mb1,
.mini-ball.b1{
    background:radial-gradient(circle at 30% 24%,#fff7b8 0 13%,#ffd75a 33%,#f4b400 72%,#b87500 100%) !important;
}

.neon.blue,
.ball.blue,
.ball.mb2,
.ball.b2,
.mini-ball.blue,
.mini-ball.mb2,
.mini-ball.b2{
    background:radial-gradient(circle at 30% 24%,#dbeafe 0 13%,#67a8ff 33%,#2563eb 74%,#123a91 100%) !important;
}

.neon.red,
.ball.red,
.ball.mb3,
.ball.b3,
.mini-ball.red,
.mini-ball.mb3,
.mini-ball.b3{
    background:radial-gradient(circle at 30% 24%,#ffe1e1 0 13%,#ff8383 33%,#e53935 74%,#a81515 100%) !important;
}

.neon.purple,
.ball.purple,
.ball.gray,
.ball.mb4,
.ball.b4,
.mini-ball.purple,
.mini-ball.gray,
.mini-ball.mb4,
.mini-ball.b4{
    background:radial-gradient(circle at 30% 24%,#f3f4f6 0 13%,#a9b0bb 34%,#5f6978 74%,#303846 100%) !important;
}

.neon.green,
.ball.green,
.ball.mb5,
.ball.b5,
.mini-ball.green,
.mini-ball.mb5,
.mini-ball.b5{
    background:radial-gradient(circle at 30% 24%,#dcfce7 0 13%,#7fe78d 34%,#16a34a 74%,#0f6b31 100%) !important;
}

/* ===== 하단 CTA도 동일 톤 ===== */
.bottom-cta{
    background:linear-gradient(135deg,#fff8b8,#d9a441) !important;
    border:1px solid #b98212 !important;
    color:#3b2500 !important;
}

.bottom-cta a{
    background:#071d3a !important;
    color:#fff !important;
}

/* ===== 모바일 ===== */
@media(max-width:640px){
    .generator-page > .wrap,
    .gen-page > .wrap,
    .generator-main > .wrap,
    .generator-wrap,
    .gen-wrap,
    .generator-container,
    main .generator-wrap,
    main .gen-wrap,
    main .generator-container,
    .generator-layout,
    .gen-layout,
    .generator-grid,
    .hero-layout,
    .result-row{
        width:min(100% - 28px,1180px) !important;
    }
}

