:root{font-family:Inter,system-ui,-apple-system,'Noto Sans KR',sans-serif;color:#172238;background:#f5f7fb;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}.shell{max-width:1120px;margin:auto;padding-left:22px;padding-right:22px}.header{background:#fff;border-bottom:1px solid #e6eaf1;position:sticky;top:0;z-index:10}.nav{height:67px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{text-decoration:none;color:#172238;font-size:22px;white-space:nowrap}.brand span{color:#2a70d6}.nav nav{display:flex;gap:4px}.navbtn,.subtle{border:0;background:transparent;padding:11px 13px;color:#60718a;font-weight:650;border-radius:9px}.navbtn:hover,.navbtn.active,.subtle:hover{background:#edf3fc;color:#165abc}.hero{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:54px 0 38px}.hero h1{font-size:clamp(30px,5vw,54px);line-height:1.22;letter-spacing:-.055em;margin:12px 0 14px}.hero h1 em{font-style:normal;color:#2872d4}.hero p{color:#718096;font-size:15px;max-width:640px;line-height:1.8}.eyebrow{font-size:11px;letter-spacing:.13em;color:#3676ce;font-weight:850;text-transform:uppercase}.dot{display:inline-block;background:#29bc91;width:7px;height:7px;border-radius:50%}.hero-stat{min-width:220px;background:#13233d;border-radius:16px;padding:23px;color:white;display:grid;gap:11px}.hero-stat span,.hero-stat small{color:#adc2da;font-size:12px}.hero-stat strong{font-size:27px}.panel{background:#fff;border:1px solid #e5eaf2;border-radius:16px;box-shadow:0 5px 28px rgba(28,45,70,.04);padding:30px;margin:18px 0 24px}.section-head{display:flex;align-items:start;justify-content:space-between;gap:15px}.panel h2{font-size:26px;letter-spacing:-.04em;margin:8px 0}.panel h3{font-size:17px}.muted{color:#7b899c}.small{font-size:12px}.pill{background:#e8f7ef;color:#208454;border-radius:99px;padding:7px 12px;font-size:12px;font-weight:800;white-space:nowrap}.switch{display:flex;background:#f0f3f8;padding:5px;border-radius:11px;margin:23px 0 19px;gap:5px}.switch button{flex:1;border:0;border-radius:8px;background:transparent;padding:13px;color:#718096;font-weight:750}.switch button.selected{background:white;color:#215fb2;box-shadow:0 2px 6px #d4dce6}.settings,.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}label{display:grid;gap:8px;font-size:13px;font-weight:760;margin:7px 0}input,textarea,select{width:100%;border:1px solid #d7dfeb;background:white;border-radius:9px;padding:12px;color:#223147;outline-color:#3176db}label input[type=checkbox]{width:auto}.advanced{margin:17px 0;border:1px solid #e6eaf2;border-radius:10px;padding:15px}.advanced summary{cursor:pointer;font-weight:780}.advanced summary span{float:right;color:#8191a5;font-size:12px;font-weight:400}.numbers-grid{display:grid;grid-template-columns:repeat(9,1fr);gap:7px;margin:14px 0}.numbers-grid button{background:#edf2f7;border:1px solid transparent;border-radius:8px;height:40px;font-weight:700}.numbers-grid button.in{background:#e0f5eb;color:#168656;border-color:#70c7a2}.numbers-grid button.out{background:#fde8e8;color:#bf4444;border-color:#ee9292}.primary{background:#256cd1;color:white;border:0;border-radius:10px;padding:15px 20px;font-weight:820}.primary:hover{background:#1a58b7}.primary span{float:right}.secondary{background:#eef4fc;color:#215fab;border:1px solid #d5e5f8;border-radius:9px;padding:10px 15px;font-weight:750}.wide{width:100%}.disclaimer{font-size:12px;color:#8b98a8;line-height:1.6}.results{margin-top:20px;display:grid;gap:9px}.result-head{display:flex;align-items:center;justify-content:space-between}.result{border:1px solid #e1e8f1;border-radius:11px;padding:13px;display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.balls{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.ball{width:37px;height:37px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:white;font-weight:800;font-size:13px}.pension-digits{font-size:22px;font-weight:850;letter-spacing:.14em;color:#17345a}.set-actions{display:flex;gap:6px}.set-actions button{border:1px solid #dbe4ee;background:#f8fafc;border-radius:7px;padding:8px 10px;font-size:12px;color:#46617e;font-weight:750}.ad-slot{border:1px solid #cbd8e9;border-radius:12px;min-height:115px;margin:18px 0;overflow:hidden;background:#f1f5fa;display:flex;align-items:center;justify-content:center}.ad-slot[hidden],[hidden]{display:none!important}.ad-slot a{display:block;text-align:center;color:#2a558e}.ad-slot img{max-width:100%;height:auto;max-height:250px;object-fit:contain}.ad-label{font-size:11px;color:#7a889c;padding:5px;text-align:center}.method-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:20px 0}.method-grid article{border:1px solid #e5eaf3;border-radius:10px;padding:18px}.method-grid p{font-size:13px;color:#718097;line-height:1.8}.notice{background:#f1f5fb;border-radius:10px;padding:17px;font-size:13px;color:#657792;line-height:1.8;margin:17px 0}.frequency{display:grid;grid-template-columns:repeat(9,1fr);gap:8px;margin:18px 0}.freq{border-radius:9px;padding:9px 4px;background:#f0f4f9;text-align:center}.freq b{display:block}.freq small{color:#77879a;font-size:10px}.gift-card{background:#14243e;color:white;padding:24px;border-radius:16px;text-align:center;margin:15px 0}.gift-card.cream{background:#fff0d8;color:#263448}.gift-card.mint{background:#d8f3e8;color:#263448}.gift-card p{line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.gift-card .balls{justify-content:center}.gift-card .ball{width:33px;height:33px;font-size:12px}.gift-screen{max-width:550px;margin:40px auto}.footer{padding-top:28px;padding-bottom:38px;color:#8090a4;font-size:12px;line-height:1.8}.footer b{color:#142238}.footer a{color:#266fca}dialog{border:0;border-radius:16px;box-shadow:0 20px 80px #15264355;max-width:480px;width:calc(100% - 24px);padding:27px}dialog::backdrop{background:#132540a8}.close{float:right;border:0;background:transparent}#giftLink{overflow-wrap:anywhere;color:#246bc1;font-size:13px}.bar{height:9px;background:#dfe8f3;border-radius:99px;overflow:hidden;margin:7px 0}.bar i{display:block;height:100%;background:#3577d3}.statrow{display:flex;align-items:center;gap:10px;margin:10px 0}.statrow strong{width:40px}.statrow .bar{flex:1}.statrow small{width:54px;text-align:right}.adminmetric{display:inline-flex;flex-direction:column;background:#f2f6fb;padding:17px;border-radius:10px;margin:5px;min-width:165px}.adminmetric strong{font-size:23px}.adminmetric span{font-size:12px;color:#8090a4}#savedList .result{margin:8px 0}.danger{color:#b63b3b}@media(max-width:740px){.shell{padding-left:14px;padding-right:14px}.nav{height:auto;padding-top:11px;padding-bottom:9px;flex-wrap:wrap}.nav nav{order:3;width:100%;overflow-x:auto;justify-content:space-between}.navbtn{font-size:12px;padding:10px 7px}.adminlink{font-size:12px}.hero{padding:27px 0 12px;display:block}.hero h1{font-size:34px}.hero-stat{margin:16px 0;min-width:unset}.panel{padding:18px;margin:13px 0}.settings,.method-grid,.form-grid{grid-template-columns:1fr}.numbers-grid{gap:4px}.numbers-grid button{height:35px}.ball{width:34px;height:34px}.frequency{grid-template-columns:repeat(5,1fr)}.result{align-items:flex-start}.set-actions{width:100%;justify-content:flex-end}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* v0.1.1: avoid inline colors (blocked by Content-Security-Policy). */
.ball-1{background:#d2a52b}.ball-2{background:#438ac3}.ball-3{background:#cd6766}.ball-4{background:#8993a1}.ball-5{background:#60a17e}
.ball{color:#fff;flex:0 0 auto}

/* v0.1.2 gift sharing refinement */
.block{display:block;margin-top:4px}.wrap{flex-wrap:wrap}.result-tools{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.result-index{min-width:24px}.gift-mini-top,.share-card-top{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}.gift-badge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.18);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.gift-card.cream .gift-badge,.gift-card.mint .gift-badge,.share-preview.cream .gift-badge,.share-preview.mint .gift-badge{background:rgba(23,35,56,.08)}.gift-card h3{margin:10px 0 16px}.gift-set-row{display:grid;gap:8px;padding:10px 0;border-top:1px solid rgba(255,255,255,.16)}.gift-card.cream .gift-set-row,.gift-card.mint .gift-set-row{border-top:1px solid rgba(23,35,56,.1)}.gift-set-row:first-of-type{border-top:0}.gift-set-label{font-size:11px;letter-spacing:.06em;text-transform:uppercase;font-weight:800;opacity:.8}.gift-reveal-title{font-size:13px;font-weight:800;margin:14px 0 4px;opacity:.9}.share-card{margin-top:14px;border:1px solid #e2e8f1;border-radius:14px;padding:16px;background:#f8fbff}.share-preview{border-radius:14px;padding:18px;margin:10px 0 14px;background:#14243e;color:#fff}.share-preview.cream{background:#fff0d8;color:#263448}.share-preview.mint{background:#d8f3e8;color:#263448}.share-preview h4{margin:0 0 8px;font-size:18px}.share-preview p{margin:0 0 8px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.share-preview small{opacity:.85}.share-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px}#shareTextArea{background:#fffdf7}.gift-screen .gift-set-row .balls{justify-content:flex-start}.gift-screen .gift-card{margin-bottom:14px}.gift-card .pension-digits{color:inherit;font-size:20px}.gift-card .muted{color:inherit;opacity:.75}
@media(max-width:740px){.share-actions{grid-template-columns:1fr}.result-tools{width:100%}.gift-card h3{font-size:18px}}

/* Kakao brand action – primary share route */
.kakao-share{background:#FEE500;color:#191919;border:0;border-radius:9px;padding:11px 12px;font-weight:800;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer}
.kakao-share:hover{background:#f5d900}.kakao-mark{font-size:12px;font-weight:900;background:#191919;color:#FEE500;width:24px;height:24px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center}
.share-actions{grid-template-columns:1fr 1fr;}.share-actions .kakao-share{grid-column:1/-1}
@media(max-width:740px){.share-actions{grid-template-columns:1fr}}


/* v0.1.5 gift receipt redesign: compact, mobile-first, calm editorial hierarchy */
.gift-page{width:min(100%,640px);max-width:640px;margin:24px auto 54px;padding:0 12px;background:transparent;border:0;box-shadow:none}
.gift-page-head{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px 3px 19px}
.gift-type-tag{font-size:11px;font-weight:750;color:#566985;background:#e9eff7;padding:7px 10px;border-radius:30px;white-space:nowrap}
.gift-hero{text-align:center;padding:14px 6px 25px}.gift-icon-circle{display:grid;place-items:center;background:#1e4d89;color:#fff;width:48px;height:48px;border-radius:15px;margin:auto;font-size:27px}.gift-hero h1{font-size:clamp(23px,5.5vw,29px);line-height:1.3;letter-spacing:-.055em;margin:16px 0 9px}.gift-hero p{color:#6d7c91;line-height:1.6;font-size:13px;margin:0}
.gift-letter{border-radius:16px;padding:27px 23px;margin-bottom:15px;background:#142b49;color:#fff;box-shadow:0 8px 22px rgba(21,37,67,.07)}
.gift-letter.cream{background:#fff0d8;color:#263448}.gift-letter.mint{background:#d8f3e8;color:#263448}
.gift-letter-label{font-size:10px;letter-spacing:.2em;font-weight:800;opacity:.7}.gift-letter-message{font-size:clamp(16px,4vw,19px);font-weight:700;line-height:1.65;letter-spacing:-.03em;white-space:pre-wrap;overflow-wrap:anywhere;margin:16px 0 23px}.gift-letter-from{text-align:right;opacity:.77;font-size:12px;font-weight:650}
.gift-numbers-panel{border-radius:16px;padding:21px 20px 18px;background:#fff;border:1px solid #e5eaf2;box-shadow:0 6px 22px rgba(28,45,70,.04)}
.gift-numbers-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px}.gift-section-label{color:#3778c9;font-size:10px;font-weight:850;letter-spacing:.13em}.gift-numbers-head h2{font-size:18px;letter-spacing:-.04em;margin:4px 0}.gift-numbers-head h2 span{color:#2770c6}.gift-count-chip{background:#edf4fc;border-radius:7px;padding:7px 9px;color:#2964aa;font-size:11px;font-weight:800;white-space:nowrap}
.gift-number-list{display:grid;gap:0}.gift-number-line{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 3px;border-top:1px solid #e9edf3}.gift-number-index{width:25px;color:#7686a0;font-size:12px;font-weight:750;flex-shrink:0}.gift-number-line .balls{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(4px,1.5vw,10px);flex:1;max-width:390px}.gift-number-line .ball{width:100%;height:auto;aspect-ratio:1;font-size:clamp(10px,2.9vw,13px)}.gift-number-line .pension-digits{font-size:20px;letter-spacing:.09em;color:#1c3556}
.gift-disclosure{font-size:11px;color:#78879b;margin:15px 2px 2px;line-height:1.55}.gift-sealed{min-height:160px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;background:#f5f8fc;border:1px dashed #d7e3ef;border-radius:11px;text-align:center}.gift-seal-icon{font-size:28px;color:#427bb9}.gift-sealed strong{font-size:14px}.gift-sealed span{color:#7b8b9d;font-size:12px}
.gift-bottom-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:14px}.gift-bottom-actions .gift-open-button,.gift-bottom-actions .gift-quiet-button{grid-column:1/-1}.gift-quiet-button{padding:12px 10px;border:0;background:transparent;color:#2868bc;font-size:13px;font-weight:750}.gift-footer-note{font-size:11px;color:#8390a0;text-align:center;line-height:1.7;margin:18px auto 0;max-width:500px}.gift-error{padding:50px 20px;text-align:center}
@media(max-width:420px){.gift-page{padding:0 12px;margin-top:10px}.gift-numbers-panel{padding:17px 13px}.gift-number-line{gap:6px}.gift-number-index{width:20px}.gift-letter{padding:24px 20px}.gift-bottom-actions{gap:7px}.gift-bottom-actions .secondary{padding:12px 6px;font-size:12px}}
/* LOTTO LAB v0.1.6 — full visual design system */
:root{--ink:#14243a;--sub:#63758d;--line:#dfe7f0;--brand:#1d5baf;--paper:#fff;--soft:#f3f6fa;--radius:14px;font-family:Inter,"Pretendard","Noto Sans KR",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#f1f4f8}
body{background:linear-gradient(180deg,#f7f9fc 0,#eff3f8 460px,#f3f6fa 100%);letter-spacing:-.015em}
.header{background:rgba(255,255,255,.94);backdrop-filter:blur(16px);border-bottom:1px solid #e2e8f0;box-shadow:0 3px 14px #1c325008}
.shell{max-width:1168px;padding-left:28px;padding-right:28px}
.nav{height:70px;gap:28px}.brand{font-size:21px;letter-spacing:-.07em;font-weight:850}.brand span{color:#2569c6}.nav nav{margin-left:auto;margin-right:auto;display:flex;align-items:center;background:#f1f5fa;padding:4px;border-radius:11px;gap:3px}.navbtn{border-radius:8px;padding:10px 14px;font-size:13px;color:#677a92}.navbtn.active{background:#fff;box-shadow:0 1px 5px #304e7020;color:#145bb6}.adminlink{font-size:12px;border:1px solid #e2e8f0;background:#fff}
.hero{padding:36px 0 27px;align-items:flex-end}.hero h1{font-size:clamp(30px,3.7vw,47px);letter-spacing:-.06em;line-height:1.19;margin:9px 0 9px}.hero h1 em{color:#2469bd}.hero p{font-size:13px;line-height:1.72;margin:0;max-width:660px}.eyebrow{font-size:10px;letter-spacing:.15em;font-weight:850;color:#4978b1}.dot{vertical-align:middle}.hero-stat{min-width:246px;border:1px solid #243d5b;padding:16px 19px;border-radius:13px;gap:7px;background:linear-gradient(135deg,#152740,#1d3b60)}.hero-stat strong{font-size:20px}.hero-stat span,.hero-stat small{font-size:11px}
.panel{border:1px solid #e0e8f0;border-radius:15px;padding:26px 30px;box-shadow:0 8px 30px #21365008;background:#fff;margin:11px 0 22px}.section-head{align-items:center}.panel h2{font-size:25px;letter-spacing:-.045em;margin:5px 0}.panel .section-head p{margin:4px 0 0;font-size:13px}.pill{border:1px solid #cce9dc;background:#edf9f3;color:#258261;font-weight:800;font-size:11px}
.switch{margin:20px 0 18px;border:1px solid #e4eaf2;background:#f2f5f9;border-radius:11px;padding:4px}.switch button{padding:11px;font-size:13px}.switch button.selected{color:#144e95}.settings{gap:13px}.compact-fields label{margin:0}.compact-fields select{margin-top:1px}label{font-size:12px;color:#394d66;gap:7px}input,textarea,select{border-radius:9px;border:1px solid #dce5f0;font-size:13px;padding:11px 12px;min-height:43px;box-shadow:0 1px 2px #172b4103}input:focus,textarea:focus,select:focus{outline:2px solid #a9c8f3;outline-offset:1px}
.advanced{border:1px solid #e5ebf4;background:#fafbfd;border-radius:10px;padding:13px 15px;margin:15px 0}.advanced summary{font-size:13px;color:#344a65}.numbers-grid{grid-template-columns:repeat(9,minmax(0,1fr))}.numbers-grid button{border-radius:7px;height:37px;font-size:12px}.primary{background:#1e61b6;box-shadow:0 3px 10px #1558a71c;border-radius:9px;min-height:46px;transition:background .15s ease,transform .15s ease}.primary:hover{background:#144f9c}.primary:active{transform:scale(.995)}.secondary{border:1px solid #d7e4f3;background:#edf4fc;color:#1e579c;border-radius:8px;font-size:12px;min-height:38px}.subtle{font-size:12px}.disclaimer{margin-top:13px;color:#8190a3;font-size:11px}
.results{border-top:1px solid #e9eef4;padding-top:19px;margin-top:23px;gap:8px}.result-head{margin-bottom:6px;gap:12px}.result-head b{font-size:16px}.result-head small{font-size:11px}.result-tools{align-items:center;gap:6px}.result-tools .secondary{padding:8px 12px;font-size:12px}.result{min-height:68px;border:1px solid #e1e8f0;border-radius:10px;background:#fff;padding:11px 15px;box-shadow:0 2px 6px #17263a06;flex-wrap:nowrap}.result-index{font-size:12px;font-weight:800;width:28px;color:#8d9bae}.balls{gap:5px;flex-wrap:nowrap}.ball{width:35px;height:35px;font-size:12px;box-shadow:inset 0 -2px 0 #00000012}.set-actions{margin-left:auto;gap:5px;flex-shrink:0}.set-actions button{padding:8px 10px;border-radius:7px;background:#f6f8fb;font-size:11px}.set-actions button:hover{background:#e7f1fd;color:#165aa9}
.frequency{gap:6px}.freq{border:1px solid #e4eaf2}.method-grid article{background:#fcfdff;border-radius:12px;padding:19px}.method-grid h3{font-size:15px}.method-grid p{font-size:12px;line-height:1.75}.notice{background:#f4f7fc;border:1px solid #e8eef5;border-radius:10px;font-size:12px}.adminmetric{background:#f5f8fc;border:1px solid #e2eaf3;margin:5px 7px 5px 0}.ad-slot{border-radius:12px}.footer{padding-top:24px}.footer b{font-size:14px}
dialog{border:1px solid #dbe4ef;border-radius:18px;padding:26px;max-width:530px;max-height:90vh;overflow-y:auto}dialog::backdrop{background:#10223b9c;backdrop-filter:blur(3px)}dialog h2{margin:4px 0 8px;font-size:23px}.gift-card{border-radius:14px;box-shadow:none}.gift-screen{max-width:600px;margin:20px auto}.gift-screen.panel{padding:26px}.gift-mini-top{font-size:11px}.gift-set-row{gap:6px}.share-card{border-radius:13px}.share-actions button{font-size:11px}.pension-digits{font-size:19px}
@media(max-width:800px){.shell{padding-left:16px;padding-right:16px}.nav{gap:8px;height:auto;padding-top:10px;padding-bottom:8px}.nav nav{order:3;width:100%;justify-content:space-around;margin:3px 0 0;padding:3px}.navbtn{flex:1;padding:10px 4px;font-size:11px;white-space:nowrap}.adminlink{margin-left:auto}.brand{font-size:20px}.hero{padding:26px 0 12px}.hero h1{font-size:32px}.hero p{font-size:12px}.hero-stat{margin:17px 0 0;padding:14px 16px}.panel{padding:19px 16px;margin:12px 0 16px}.panel h2{font-size:22px}.section-head{align-items:flex-start}.settings,.method-grid,.form-grid{grid-template-columns:1fr}.switch button{font-size:12px;padding:10px 5px}.result-head{align-items:flex-start}.result-tools{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:6px}.result-tools button{width:100%;padding:10px 5px}.result{display:grid;grid-template-columns:28px minmax(0,1fr);gap:9px 4px;padding:13px 10px;min-height:unset}.result .balls{justify-content:space-between;gap:3px}.result .ball{width:min(9vw,36px);height:min(9vw,36px);font-size:11px}.set-actions{grid-column:2;margin:0;display:flex;justify-content:flex-end;width:100%}.set-actions button{flex:1;max-width:90px;padding:8px 4px}.result .pension-digits{font-size:20px}.numbers-grid button{height:35px}.gift-screen.panel{padding:17px}.gift-card{padding:18px}.gift-set-row .ball{width:32px;height:32px}.share-actions{grid-template-columns:1fr}}
@media(max-width:360px){.result .ball{width:30px;height:30px;font-size:10px}.hero h1{font-size:29px}.panel{padding:15px 12px}.navbtn{font-size:10px}}

/* v0.1.7 — 사용자 중심 통계 연구실 */
.lab-toolbar{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-top:20px;margin-bottom:22px}.lab-switch{margin:0;min-width:350px}.lab-period{min-width:195px;margin:0}.lab-period select{padding:11px 13px}.lab-context{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;color:#73849c;font-size:12px;margin:0 0 13px}.lab-context b{color:#1a314f}.lab-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0 16px}.lab-kpi{background:#f3f7fc;border:1px solid #e4ebf4;border-radius:12px;padding:18px 17px;display:grid;gap:6px;min-width:0}.lab-kpi>span{font-size:12px;color:#62758e;font-weight:650}.lab-kpi strong{font-size:25px;letter-spacing:-.055em;color:#132843}.lab-kpi small{color:#8190a3;font-size:11px}.lab-duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.lab-info-card{border:1px solid #e2eaf4;border-radius:14px;padding:22px;margin-bottom:14px;min-width:0;background:#fff}.lab-info-card h3{font-size:17px;letter-spacing:-.025em;margin:0 0 13px}.lab-card-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.lab-card-head h3{margin-top:7px}.lab-rank{display:flex;gap:13px;align-items:center;margin:11px 0;font-size:13px}.lab-rank-no{width:38px;flex:none;color:#284c7a;font-weight:800}.lab-rank-meter{height:10px;background:#edf2f8;flex:1;border-radius:9px;overflow:hidden}.lab-bar-width{display:block;height:100%;background:#2875cd;border-radius:9px;min-width:1px}.muted-bar{background:#97a9bd}.lab-rank strong{min-width:44px;text-align:right;color:#28425e}.lab-number-grid{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:7px}.lab-frequency-cell{border:1px solid #e7edf4;background:#f9fbfe;border-radius:10px;padding:10px 8px;display:grid;gap:5px;min-width:0}.lab-frequency-n{font-weight:800;color:#142c4a;font-size:16px}.lab-frequency-cell strong{font-size:14px;color:#345a83}.lab-frequency-cell strong small{font-size:10px;font-weight:500;margin-left:2px}.lab-frequency-track{height:5px;background:#e8eff7;border-radius:5px;overflow:hidden}.lab-history{display:grid;gap:7px}.lab-history-row{display:flex;align-items:center;gap:12px;border-bottom:1px solid #e9eff6;padding:9px 0;justify-content:space-between}.lab-history-row .balls{gap:3px}.lab-history-row .ball{width:28px;height:28px;font-size:11px}.lab-history-row .pension-digits{font-size:16px}.lab-digit-section{margin:16px 0;border-bottom:1px solid #e9eff6;padding-bottom:15px}.lab-digit-heading{display:flex;justify-content:space-between;gap:12px;margin-bottom:9px}.lab-digit-heading small{color:#7d8ca0}.lab-digit-row{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:6px}.lab-digit-cell{background:#f2f6fb;border:1px solid #e4ebf3;padding:9px 2px;border-radius:8px;text-align:center;display:grid;gap:3px}.lab-digit-cell.leading{background:#e4f0fe;border-color:#85b9f4}.lab-digit-cell b{font-size:15px}.lab-digit-cell small{font-size:10px;color:#698098}.lab-bottom-note{border-radius:14px;background:#f0f6ff;padding:23px;margin:3px 0 0}.lab-bottom-note strong{color:#1b4674}.lab-bottom-note p{font-size:13px;line-height:1.8;color:#61758e}.lab-loading{padding:35px;color:#71849d;text-align:center}@media(max-width:850px){.lab-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lab-number-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:620px){.lab-toolbar{flex-direction:column;align-items:stretch}.lab-switch{min-width:0;width:100%}.lab-period{width:100%}.lab-duo{grid-template-columns:1fr}.lab-info-card{padding:16px}.lab-kpi{padding:13px 12px}.lab-kpi strong{font-size:22px}.lab-digit-row{grid-template-columns:repeat(5,minmax(0,1fr))}.lab-history-row .ball{width:25px;height:25px;font-size:10px}.lab-rank{gap:8px}}

/* v0.1.8: decision-first, high-density layout */
.new-hero{padding:30px 0 18px}.new-hero h1{font-size:clamp(28px,4.6vw,45px)}.new-hero p{margin-bottom:0}.top-account{display:flex;gap:5px;align-items:center}.count-field{order:0}.model-field{order:1}.workspace .settings{grid-template-columns:1fr 1fr}.workspace .primary.wide{font-size:17px;min-height:54px}.result-tools{display:flex;gap:7px;flex-wrap:wrap}.result-tools button{font-size:12px}.small-switch{margin:12px 0}.prior-row{border:1px solid #e1e8f1;border-radius:12px;padding:16px;margin:10px 0;display:grid;gap:10px}.prior-heading{display:flex;gap:10px;justify-content:space-between;flex-wrap:wrap}.prior-heading span{font-size:12px;color:#71839b}.prior-row .balls{margin-top:4px}.checkline{display:flex;align-items:center;gap:9px;font-weight:500}.checkline input{width:17px;height:17px}.recovery-code{display:block;white-space:normal;overflow-wrap:anywhere;margin:12px 0;padding:12px;background:#e9f2fc;font-weight:800;font-size:14px;border-radius:10px}#accountResult{line-height:1.7;margin-top:10px}.top-account .secondary{padding:9px 12px;white-space:nowrap}
@media(max-width:740px){.new-hero{padding-top:18px}.new-hero h1{font-size:30px}.hero-stat{display:none}.workspace .settings{grid-template-columns:1fr}.model-field{order:1}.count-field{order:0}.top-account{margin-left:auto}.top-account .secondary{font-size:11px;padding:8px}.header .nav{gap:7px}.prior-row{padding:12px}}
/* v0.1.9 — commercial visual polish and history center */
:root{--ink:#0e1c35;--blue:#315ce7;--soft:#f5f7fd;--line:#e6ebf4}body{background:linear-gradient(160deg,#edf3ff 0%,#f8faff 24%,#f5f7fc 100%);color:var(--ink)}.header{box-shadow:0 2px 22px #1e42700a;backdrop-filter:blur(16px);background:#ffffffed}.brand{font-weight:900;letter-spacing:-.055em}.panel{border:1px solid #e2e9f3;box-shadow:0 12px 50px #1e345112;border-radius:20px}.hero-stat{background:linear-gradient(145deg,#10264f,#315de5);box-shadow:0 16px 36px #315de538}.primary{background:linear-gradient(105deg,#2454dc,#5d70f0);box-shadow:0 7px 17px #355fea25;transition:filter .2s,transform .2s}.primary:hover{background:linear-gradient(105deg,#1947c5,#435ce7);filter:saturate(1.05)}.primary:active{transform:translateY(1px)}.secondary{background:#f0f5ff;color:#2447a6;border-color:#dbe6fb}.secondary:hover,.set-actions button:hover{background:#e3edff}.result{border:1px solid #e3e9f4;background:linear-gradient(110deg,#ffffff,#fcfdff);box-shadow:0 3px 14px #1e3a6510;border-radius:13px}.result:hover{border-color:#b8c8ee}.ball{box-shadow:inset 0 -3px 5px #1118271a,0 2px 6px #17283b13}.switch button.selected{color:#1e4ecf}.navbtn.active{color:#1f51d2;background:#edf3ff}.ad-slot{min-height:110px}.vault-lead{font-size:14px;color:#667792;margin-top:0;line-height:1.7}.vault-tabs{display:grid;grid-template-columns:1fr 1fr;padding:5px;background:#eef3fc;border:1px solid #e0e8f4;border-radius:12px;gap:5px;margin:20px 0 22px}.vault-tabs button{border:0;background:transparent;padding:14px 10px;border-radius:9px;font-weight:800;color:#71819a;cursor:pointer}.vault-tabs button.selected{background:#fff;color:#2354c8;box-shadow:0 2px 10px #23446a16}.vault-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px}.vault-section-head h3{margin:0}.vault-section-head span{font-size:12px;color:#7e8ca1}.vault-record{border:1px solid #e2e9f4;background:#fff;border-radius:15px;padding:18px;margin:12px 0;box-shadow:0 6px 24px #1638650b}.vault-record-title{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.vault-record-title>div{display:grid;gap:5px}.vault-record-title b{font-size:15px}.vault-date{font-size:12px;color:#8190a5}.vault-tag{font-size:10px;letter-spacing:.08em;color:#466bd0;font-weight:800}.vault-quote{padding:14px;border-radius:9px;background:linear-gradient(125deg,#f3f6ff,#eff8fe);color:#263c64;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7}.vault-row{display:flex;gap:12px;align-items:center;padding:8px 0;border-bottom:1px solid #eef1f8}.vault-row>span{font-size:11px;color:#8b97aa;width:22px}.vault-row:last-child{border-bottom:0}.vault-record-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;flex-wrap:wrap}.vault-actions{display:flex;gap:7px}.vault-actions button{padding:9px 12px;font-size:12px}.vault-empty{text-align:center;padding:48px 16px;background:#f5f8ff;border:1px dashed #dbe5f6;border-radius:14px}.vault-empty>span{font-size:32px}.vault-empty p{color:#8390a3}.vault-record .balls{gap:5px}.vault-record .ball{width:31px;height:31px;font-size:11px}.vault-record .pension-digits{font-size:19px}.gift-letter{box-shadow:0 15px 35px #17233b20}
@media(max-width:740px){.panel{border-radius:15px}.vault-record{padding:13px}.vault-record-title b{font-size:13px}.vault-record .ball{width:29px;height:29px}.vault-record-bottom{align-items:flex-start}.vault-actions{width:100%}.vault-actions button{flex:1}.vault-row{gap:5px}}

/* LOTTO LAB 0.2.0 — Premium cinematic web UI, applied to real functional markup */
:root{color-scheme:light;--deep:#061329;--navy:#0a1c39;--midnight:#0b2144;--gold:#ffd376;--blue:#195df2;--ice:#eef4ff;--line:#243b5c}
html{scroll-behavior:smooth}body{background:linear-gradient(180deg,#050f22 0,#071937 1100px,#edf3fb 1100px,#edf3fb 100%);color:#11254b;min-height:100vh}
.shell{max-width:1160px}.header{background:rgba(4,15,35,.94)!important;backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.14);box-shadow:0 6px 28px #0004}.nav{min-height:75px;height:auto}.brand{color:#fff!important;letter-spacing:-.035em;font-size:24px}.brand span{color:#78aeff!important}.nav nav{gap:4px;align-items:center}.navbtn{color:#c8d9f7!important;background:transparent;border:1px solid transparent;border-radius:999px;font-size:13px;font-weight:750}.navbtn:hover,.navbtn.active{color:#fff!important;background:#233756!important;border-color:#405577}.top-account{display:flex;align-items:center;gap:8px}.top-account #accountBtn{background:#192c4d!important;border:1px solid #36527e;color:#fff!important;white-space:nowrap}.top-account .adminlink{color:#aac0e2!important}
main.shell{position:relative}.new-hero{position:relative;min-height:330px;margin:0 -8px 0;align-items:center;gap:22px;padding:49px 36px 78px;overflow:hidden;color:#fff;border-radius:0 0 26px 26px;background:radial-gradient(ellipse at 78% 42%,#53412088,transparent 50%),linear-gradient(105deg,#07142e 2%,#102447 50%,#16213b 100%)}.new-hero:before{content:"";position:absolute;inset:0 0 0 48%;background:url('/static/hero-lottery.webp') center 49%/cover no-repeat;mask-image:linear-gradient(90deg,transparent,#000 32%);opacity:.93}.new-hero>div{position:relative;z-index:1;max-width:650px}.new-hero h1{font-size:clamp(35px,5.5vw,64px);letter-spacing:-.065em;line-height:1.14;margin:20px 0 18px;color:#fff;text-shadow:0 2px 24px #0005}.new-hero h1 em{font-style:normal;color:#ffd778}.new-hero p{max-width:475px;color:#d0dcf0;line-height:1.75}.new-hero .eyebrow{color:#ffdc89;font-weight:850;letter-spacing:.15em}.new-hero .hero-stat{position:relative;z-index:1;align-self:flex-end;min-width:218px;background:#081b36c9;border:1px solid #45608580;box-shadow:0 8px 28px #0003;backdrop-filter:blur(8px)}.new-hero .hero-stat strong{color:#fff}.new-hero .hero-stat small{color:#bdc9dc}
#home{position:relative;z-index:2;margin-top:-50px;background:linear-gradient(138deg,#f8fbff,#e6f0ff 90%);box-shadow:0 24px 50px #0005;border:1px solid #d4e3fb;padding:30px 34px 26px;border-radius:22px}#home .eyebrow{color:#5780ba;font-size:12px}#home h2{font-size:clamp(25px,3.3vw,34px);color:#0d2148;margin:8px 0}#home .section-head{align-items:center}#home .section-head .muted{color:#586d8b}#home .pill{background:#e8f1ff;border:1px solid #cadaf8;color:#1a5daa}#home>.switch{display:grid;grid-template-columns:1fr 1fr;gap:13px;padding:0;background:transparent;margin:25px 0 18px}#home>.switch button{position:relative;min-height:86px;border:2px solid #d2e0f6;background:#f4f8ff;color:#152e56;border-radius:16px;text-align:left;padding:20px 22px;font-size:18px;font-weight:850;box-shadow:0 5px 12px #294b8310;transition:.2s}#home>.switch button:hover{transform:translateY(-2px);border-color:#8bb2f2}#home>.switch button.selected{background:linear-gradient(125deg,#229dff,#0352d8 80%);color:#fff;border-color:#68b8ff;box-shadow:0 8px 18px #1166ed40}#home>.switch button.selected:after{content:'✓';position:absolute;top:12px;right:12px;font-size:14px;width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:#fff;color:#1269dc}
#home .compact-fields{display:flex;flex-direction:column-reverse;gap:9px}#home .compact-fields .count-field{order:2}#home .compact-fields .model-field{order:1}#home .count-field{font-size:15px;font-weight:900;color:#152b50;margin:7px 0}#home .count-field select{min-height:52px;font-weight:850;font-size:18px;border:1px solid #bbceed;border-radius:12px;background:#fff}#home .model-field{font-size:12px;color:#7587a1}#home .model-field select{max-width:400px;background:#f9fbff;border-radius:11px;border-color:#d2def1}#home .advanced{background:#fff9;border-color:#d4e0f0;padding:13px 17px}#home .advanced summary{color:#40638b}#generate{position:relative;min-height:64px;border-radius:14px;font-size:19px;letter-spacing:-.02em;background:linear-gradient(100deg,#16a7ff,#044ce6 65%,#3427e5);box-shadow:0 12px 24px #1a5fe753}#generate:hover{filter:brightness(1.07);transform:translateY(-1px)}#home .disclaimer{color:#7184a0}
#results{margin-top:25px}#results .result-head{padding:16px 0;color:#183357}#results .result{background:#fff;border-radius:14px;border-color:#d7e3f4;box-shadow:0 3px 10px #153c6510;min-height:64px}#results .result .balls{flex:1}#results .result .set-actions{margin-left:auto}#results .ball{box-shadow:inset 0 -4px 5px #0002,0 3px 7px #0002}
#lastWin{margin:22px 0 26px;background:linear-gradient(110deg,#0c2344,#122d54 70%,#101f3b);border:1px solid #3c5375;color:#fff;border-radius:19px;padding:29px 30px;box-shadow:0 8px 25px #07152b40}#lastWin .eyebrow{color:#e4b85e}#lastWin h2{color:#fff}#lastWin .muted{color:#b6c9e2}#lastWin .switch{max-width:390px;background:#07162c;border:1px solid #425777}#lastWin .switch button{color:#b4c7df}#lastWin .switch button.selected{color:#fff;background:#28446f}#performancePreview,#performanceHistory{color:#f6f9ff}#lastWin .notice{background:#ffffff16;color:#deebff}#lastWin #morePerformance{border:1px solid #6d829e;background:#ffffff12;color:#fff;margin-top:18px}#lastWin .performance-card,#lastWin .prior-card{color:#eaf3ff}#lastWin .result{background:#122e52;border-color:#39516b;color:#fff}#lastWin .small,#lastWin small{color:#c7d8ed}
.lucky-promo{position:relative;display:flex;align-items:center;justify-content:space-between;gap:20px;margin:23px 0 20px;padding:28px 38px;border-radius:19px;border:1px solid #a57e47;overflow:hidden;background:radial-gradient(circle at 85% 40%,#ac772f99,transparent 45%),linear-gradient(110deg,#07132f,#1c264c 60%,#473016);color:#fff;box-shadow:0 12px 24px #08172b3b}.lucky-promo:before{content:'✦  ✧  ✦  ✧  ✦';position:absolute;right:18%;top:13%;color:#efc98255;font-size:26px;letter-spacing:20px}.promo-copy{position:relative;z-index:1}.promo-eyebrow{font-size:12px;color:#efc567;letter-spacing:.13em;font-weight:850}.promo-copy h2{font-size:30px;letter-spacing:-.045em;margin:11px 0 7px}.promo-copy p{color:#cbd6e5;margin:0 0 18px;line-height:1.6}.promo-action{border:1px solid #e4b85c;border-radius:999px;color:#ffdc95;background:#07162ab3;padding:11px 18px;font-weight:800}.promo-action:hover{background:#edbc62;color:#101c34}.promo-art{min-width:130px;display:flex;align-items:center;gap:10px;color:#ffe1a2;font-size:27px}.gift-emoji{font-size:79px;filter:drop-shadow(0 11px 10px #0008)}
.feature-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0 27px}.feature-link{text-align:left;display:flex;align-items:center;gap:13px;padding:20px;border:1px solid #d4dfed;background:linear-gradient(130deg,#f9fbff,#eaf1fb);border-radius:16px;color:#12274a;min-width:0;box-shadow:0 7px 14px #16294810}.feature-link:hover{transform:translateY(-2px);box-shadow:0 12px 20px #19365322}.feature-link>span:nth-child(2){display:grid;gap:6px;min-width:0}.feature-link strong{font-size:15px}.feature-link small{color:#70819d;font-size:11px}.feature-link b{margin-left:auto;color:#9db1cc;font-size:26px}.feature-icon{flex:0 0 51px;height:51px;display:grid;place-items:center;border-radius:13px;font-size:26px}.feature-blue{color:#0961e9;background:#dceaff}.feature-rose{color:#ce426e;background:#fbe4ee}.feature-green{color:#159878;background:#d9f4e9}
.footer{background:#edf3fb;max-width:none;margin-top:20px;padding:28px max(22px,calc((100% - 1116px)/2));border-top:1px solid #d5e0ee}.footer b{color:#0b2244}
body:has(.view:not(#home):not([hidden])){background:#edf3fb}body:has(.view:not(#home):not([hidden])) .new-hero{display:none}body:has(.view:not(#home):not([hidden])) #lastWin{display:none}body:has(.view:not(#home):not([hidden])) .home-extra{display:none}
@media(min-width:850px){#home>.settings{display:block}#home .count-field{max-width:100%}#home .count-field select{max-width:100%}.new-hero .hero-stat{margin-left:auto}}
@media(max-width:800px){.nav{padding-block:11px}.new-hero{padding:33px 24px 72px;min-height:320px}.new-hero:before{inset:0 0 0 35%;opacity:.55}.new-hero .hero-stat{display:none}#home{padding:23px}.feature-links{gap:9px}.feature-link{padding:13px;gap:9px}.feature-icon{flex-basis:43px;height:43px}.feature-link strong{font-size:13px}}
@media(max-width:600px){body{background:linear-gradient(180deg,#05132c 0,#071d3d 1140px,#edf3fb 1140px)}.header{position:relative}.nav{gap:7px}.nav nav{width:100%;order:3;display:flex;gap:4px;overflow-x:auto;padding-top:5px}.navbtn{font-size:11px;padding:9px 10px;white-space:nowrap}.brand{font-size:22px}.top-account{margin-left:auto}.top-account #accountBtn{font-size:11px;padding:8px}.top-account .adminlink{font-size:10px;padding:8px 3px}.new-hero{min-height:270px;margin:0 -14px;border-radius:0;padding:34px 22px 85px}.new-hero:before{inset:0 0 0 25%;opacity:.4}.new-hero h1{font-size:clamp(32px,8vw,44px);margin:12px 0}.new-hero p{font-size:12px;max-width:330px}#home{margin-top:-46px;padding:20px 15px 18px;border-radius:18px}#home h2{font-size:25px}#home>.switch{gap:8px;margin:16px 0}#home>.switch button{min-height:74px;padding:13px 11px;font-size:14px}#home>.switch button.selected:after{width:18px;height:18px;top:6px;right:6px;font-size:11px}#home .count-field select{font-size:16px}#generate{font-size:17px}#lastWin{padding:22px 17px;border-radius:16px;margin-top:17px}.lucky-promo{padding:22px 19px;margin-top:16px}.promo-copy h2{font-size:24px}.promo-copy p{font-size:12px}.promo-art{min-width:60px}.promo-art>span{display:none}.gift-emoji{font-size:52px}.feature-links{grid-template-columns:1fr;gap:8px;margin-top:15px}.feature-link{padding:12px 16px}.feature-icon{flex-basis:45px;height:45px}.feature-link strong{font-size:14px}.feature-link small{font-size:11px}#results .result .balls{flex:none}#results .result .set-actions{width:100%}.footer{padding:24px 16px}}


/* v0.2.1 | Account saved numbers: stable mobile card layout */
#memberSavedList{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,410px),1fr));gap:11px;min-width:0}
#memberSavedList .account-number-card{display:flex;flex-direction:column;gap:14px;min-width:0;padding:15px 16px;background:linear-gradient(135deg,#fff,#f8fbff);border:1px solid #dce6f3;border-radius:15px;box-shadow:0 3px 10px #0921430c}
#memberSavedList .account-number-meta{display:flex;align-items:center;gap:8px;min-width:0}
#memberSavedList .account-round{font-size:14px;font-weight:850;color:#19355b;white-space:nowrap}
#memberSavedList .account-kind{font-size:11px;color:#7586a0;white-space:nowrap}
#memberSavedList .account-delete{margin-left:auto;flex:0 0 auto;white-space:nowrap;border:1px solid #e8dbe0;color:#ad5160;background:#fff6f7;font-size:12px;font-weight:760;border-radius:8px;padding:7px 13px;line-height:1.2}
#memberSavedList .account-delete:hover{background:#ffe6ea}
#memberSavedList .account-number-balls{min-width:0;width:100%}
#memberSavedList .account-number-balls .balls{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:center;justify-items:center;gap:clamp(3px,1.5vw,12px);width:100%;min-width:0}
#memberSavedList .account-number-balls .ball{width:min(100%,39px);aspect-ratio:1;height:auto;min-width:0;display:flex;font-size:clamp(10px,3vw,13px);font-weight:800;box-shadow:inset 0 -3px 5px #10233a19,0 2px 5px #10233a16}
#memberSavedList .account-number-balls .pension-digits{font-size:clamp(17px,5vw,23px);letter-spacing:.05em;line-height:1.3;overflow-wrap:anywhere}
@media(max-width:600px){
 #memberSavedList{grid-template-columns:minmax(0,1fr);gap:9px}
 #memberSavedList .account-number-card{padding:12px 13px;gap:11px;border-radius:13px}
 #memberSavedList .account-number-meta{gap:7px}
 #memberSavedList .account-number-balls .balls{gap:clamp(3px,1vw,8px)}
 #memberSavedList .account-number-balls .ball{width:min(100%,38px);font-size:clamp(10px,3.1vw,12px)}
}
@media(max-width:360px){#memberSavedList .account-number-card{padding:11px 9px}#memberSavedList .account-number-balls .ball{width:min(100%,34px);font-size:10px}}

/* v0.2.3 matching report panel */
#modelReport{margin:17px 0 25px;padding:26px 29px;border-radius:20px;border:1px solid #334865;background:linear-gradient(125deg,#0a172d,#142a4a 68%,#13213c);color:#f6f8fd;box-shadow:0 16px 45px #06122555}
.report-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.report-intro .eyebrow{color:#eab75d}.report-intro h2{color:#fff;font-size:23px;margin:8px 0}.report-intro p{font-size:12px;color:#b4c7df;line-height:1.65;margin:0}.report-more{color:#d8eaff;white-space:nowrap;border:1px solid #465d7d;border-radius:999px;padding:9px 14px;background:#ffffff11;font-size:12px;font-weight:800}.report-more:hover{background:#ffffff23}.report-switch{max-width:350px;background:#08152a;border:1px solid #425777;padding:3px;margin:18px 0}.report-switch button{color:#a3b7cf;font-size:12px}.report-switch button.selected{color:#fff;background:#27466c}.report-main-grid{display:grid;grid-template-columns:1.25fr .9fr;gap:15px}.report-ranking,.report-highlight{background:#ffffff08;border:1px solid #ffffff1d;border-radius:15px;padding:15px}.report-col-caption{font-size:11px;color:#a5bedb;font-weight:700;margin-bottom:12px}.report-rank{display:flex;align-items:center;gap:9px;background:#ffffff08;padding:7px 9px;margin:5px 0;border-radius:8px;font-size:12px}.report-rank strong{margin-left:auto;color:#fff;font-size:14px}.rank-medal{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#cfb04e;color:#182239;font-size:12px;font-weight:900}.rank-2{background:#a5afbf}.rank-3{background:#cb8d64}.rank-4,.rank-5,.rank-6,.rank-7{background:#506684;color:#fff}.report-highlight{display:flex;flex-direction:column;align-items:flex-start;background:radial-gradient(circle at 100% 0,#37547577,transparent 65%),#ffffff05}.report-highlight strong{font-size:29px;color:#f7ce78;letter-spacing:-.04em;margin:5px 0}.report-highlight span{font-size:12px;font-weight:750;color:#e8effa}.report-highlight small{font-size:11px;line-height:1.7;color:#adc0d9;margin-top:15px}.report-hl-symbol{color:#f1c56d;font-size:29px;align-self:flex-end}.report-disclaimer{font-size:11px;color:#9db2cf;line-height:1.7;margin:14px 0 0}.report-history-title{margin:18px 0 12px;font-size:14px;font-weight:800}.report-history-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;border-top:1px solid #ffffff25;padding:12px 0;gap:9px}.report-history-row>div:first-child{display:flex;flex-direction:column;gap:5px}.report-history-row span{font-size:11px;color:#aec2db}.report-history-row .ball{width:29px;height:29px;font-size:10px}.report-history-row .pension-digits{font-size:14px;color:#fff}.report-caveat{font-size:12px;color:#f4d49d;line-height:1.7}
@media(max-width:620px){#modelReport{padding:20px 15px}.report-intro{flex-wrap:wrap}.report-intro h2{font-size:19px}.report-main-grid{grid-template-columns:1fr}.report-more{margin-left:auto}.report-ranking,.report-highlight{padding:13px}.report-highlight strong{font-size:25px}.report-history-row .balls{gap:3px}.report-history-row .ball{width:27px;height:27px}}

/* v0.2.4 simplified personalization */
.easy-custom{margin:14px 0 16px!important;overflow:hidden}.easy-custom>summary{font-weight:800;list-style:none;display:flex;justify-content:space-between;gap:10px;align-items:center;cursor:pointer}.easy-custom>summary::-webkit-details-marker{display:none}.easy-custom>summary:before{content:'+';margin-right:8px;color:#e8be65;font-size:20px}.easy-custom[open]>summary:before{content:'−'}.easy-custom>summary span{font-weight:500;font-size:12px;opacity:.75;margin-left:auto;float:none}.custom-intro{font-size:13px;opacity:.84;padding:14px 0 10px}.custom-mode{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:5px 0 10px}.custom-mode button{border-radius:10px;padding:12px 6px;background:rgba(116,153,203,.12);border:1px solid rgba(128,168,221,.26);color:inherit;font-size:13px;font-weight:800}.custom-mode button.selected{background:#2465c5;border-color:#518ef8;color:#fff}.custom-hint{font-size:12px;opacity:.8;margin:8px 0}.numbers-grid button.other-mode{opacity:.35;text-decoration:line-through}.custom-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-top:4px}.custom-bottom span{font-size:12px;opacity:.86}.expert-settings{margin-top:12px;border-top:1px solid rgba(148,174,205,.24);padding-top:12px}.expert-settings summary{font-size:12px;font-weight:700;cursor:pointer;opacity:.8}.expert-settings label{margin-top:10px}.count-field{width:100%;max-width:480px}.settings.compact-fields{display:block!important}@media(max-width:520px){.easy-custom{padding:12px!important}.custom-mode button{font-size:12px}.numbers-grid{grid-template-columns:repeat(9,minmax(0,1fr))!important}.numbers-grid button{min-width:0;padding:0;font-size:12px}}

/* v0.2.5 latest result showcase cards */
.draw-showcase-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.draw-showcase-card{position:relative;border:1px solid rgba(255,255,255,.16);border-radius:26px;padding:22px 24px 20px;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}.draw-showcase-card.pension{background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.015))}.draw-logo-row{display:flex;justify-content:space-between;align-items:center;gap:14px}.draw-brand{display:flex;align-items:center;gap:10px;font-size:22px;font-weight:900;letter-spacing:-.02em}.draw-brand.lotto strong{color:#f6fbff}.draw-brand.pension strong{color:#f6fbff}.draw-nav-pills{display:flex;gap:12px}.nav-pill{width:42px;height:42px;border-radius:999px;border:1px solid rgba(255,255,255,.26);display:grid;place-items:center;font-size:18px;color:#dbe6ff;background:rgba(255,255,255,.02)}.draw-round{margin-top:10px;font-size:24px;font-weight:900;letter-spacing:-.03em}.draw-date{margin-top:4px;color:#b6c7ea;font-size:14px}.draw-divider{height:1px;background:rgba(255,255,255,.12);margin:18px 0 16px}.showcase-numbers{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.showcase-numbers .balls{display:flex;gap:10px;flex-wrap:wrap}.showcase-plus{font-size:36px;font-weight:800;color:#aeb8c9;line-height:1}.bonus-ball{background:linear-gradient(180deg,#d94d70,#c02b52)!important;color:#fff}.pension-result-wrap{display:grid;gap:10px}.pension-result-row{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:16px}.pension-result-label{font-weight:800;font-size:24px;color:#f6fbff}.pension-main .pension-digits{display:flex;flex-wrap:wrap;gap:8px;font-size:0}.pension-main .pension-digits::before{content:''}.pension-main .pension-digits{font-size:18px;color:#fff;font-weight:700}.pension-main .pension-digits{letter-spacing:0}.pension-main .pension-digits span{display:none}.draw-prize{margin-top:22px;display:grid;gap:6px;justify-items:center;text-align:center}.draw-prize-label{font-size:13px;color:#b6c7ea;font-weight:700}.draw-prize strong{font-size:28px;letter-spacing:-.03em;line-height:1.15}.draw-prize small{font-size:14px;color:#d4def2}.draw-actions{margin-top:22px;display:flex;justify-content:center;gap:16px;flex-wrap:wrap}.ghost-btn,.buy-btn{display:inline-flex;align-items:center;justify-content:center;min-width:140px;padding:14px 18px;border-radius:16px;text-decoration:none;font-weight:800}.ghost-btn{background:#e9f0f0;color:#11253f}.buy-btn{background:linear-gradient(135deg,#0db18a,#0f8d8c);color:#fff;box-shadow:0 14px 26px rgba(8,167,133,.28)}.draw-history-grid{margin-top:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.draw-history-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:10px}.draw-history-head h3{margin:0;font-size:17px}.draw-history-head span{font-size:12px;color:#b8c8ea}.draw-showcase .notice{margin:0}.prior-row{background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:16px 18px;margin-bottom:12px}.prior-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px}.prior-heading span{font-size:12px;color:#b8c8ea}.prior-row .balls{margin:0 0 8px}.prior-row .pension-digits{font-size:18px;color:#fff;font-weight:800}
@media (max-width: 980px){.draw-showcase-grid,.draw-history-grid{grid-template-columns:1fr}.draw-brand{font-size:20px}.draw-prize strong{font-size:24px}}
@media (max-width: 640px){.draw-showcase-card{padding:18px 16px 18px;border-radius:22px}.draw-logo-row{align-items:flex-start}.nav-pill{width:38px;height:38px}.draw-round{font-size:22px}.showcase-numbers .balls{gap:8px}.showcase-plus{font-size:28px}.draw-actions{gap:10px}.ghost-btn,.buy-btn{flex:1 1 0;min-width:unset;padding:13px 14px;border-radius:14px}.pension-result-row{grid-template-columns:1fr;gap:10px}.pension-result-label{text-align:left;font-size:20px}.draw-prize strong{font-size:22px}}

/* v0.2.6 simplified draw cards */
#lastWin .section-head .muted{display:none}#lastWin .section-head{margin-bottom:18px}
.draw-showcase-card{display:flex;flex-direction:column;min-height:330px;gap:0}.draw-brandline{display:flex;align-items:center;gap:10px;font-size:22px;font-weight:850;letter-spacing:-.04em}.draw-brand-mark{display:inline-grid;place-items:center;width:35px;height:35px;background:rgba(255,255,255,.12);color:#e4c17b;border-radius:12px;font-size:24px}.draw-round{margin:20px 0 2px;font-size:25px}.draw-divider{margin:15px 0 8px}.draw-number-stage{flex:1;display:flex;align-items:center;justify-content:center;min-height:105px}.draw-number-stage .showcase-numbers{justify-content:center;flex-wrap:nowrap}.draw-number-stage .balls{flex-wrap:nowrap;gap:6px}.draw-number-stage .ball{width:40px;height:40px;font-size:12px;flex:0 0 auto}.draw-number-stage .showcase-plus{font-size:24px}.pension-winning-line{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}.winning-place{font-size:14px;color:#c7d7e9;font-weight:700}.pension-winning-line strong{font-size:23px}.pension-digits-clean{display:flex;gap:5px}.pension-digits-clean i{display:grid;place-items:center;width:34px;height:38px;border:1px solid rgba(255,255,255,.23);border-radius:10px;font-style:normal;font-size:18px;font-weight:800;color:#fff;background:rgba(255,255,255,.06)}.draw-actions{margin-top:15px}.draw-actions .ghost-btn,.draw-actions .buy-btn{flex:1;max-width:210px}.draw-history-grid .prior-row .muted.small{font-size:11px}.draw-unavailable{color:#aec0d3}
@media(max-width:650px){.draw-showcase-card{min-height:275px;padding:18px}.draw-brandline{font-size:19px}.draw-round{margin-top:12px}.draw-number-stage{min-height:86px}.draw-number-stage .ball{width:clamp(29px,8vw,38px);height:clamp(29px,8vw,38px);font-size:11px}.draw-number-stage .balls{gap:4px}.pension-digits-clean i{width:clamp(27px,7.6vw,34px);height:35px;font-size:16px}.draw-actions{gap:8px}.draw-actions .ghost-btn,.draw-actions .buy-btn{padding:12px 9px}}

/* v0.2.7 official supplied logos and prize amount */
.draw-brandline{min-height:58px;display:flex;align-items:center}.draw-official-logo{display:block;max-width:min(100%,210px);height:56px;object-fit:contain;object-position:left center;background:#fff;border-radius:12px;padding:6px 12px;box-shadow:0 8px 18px rgba(0,0,0,.1)}
.draw-prize-amount{text-align:center;display:flex;flex-direction:column;gap:6px;align-items:center;justify-content:center;margin-top:16px;min-height:85px}.draw-prize-amount small{color:#c8d8ef;font-size:12px}.draw-prize-amount strong{color:#fff;font-size:clamp(18px,2.1vw,26px);line-height:1.25;letter-spacing:-.025em}.draw-prize-amount span{font-size:12px;color:#b9cee8}
@media(max-width:640px){.draw-official-logo{height:49px;max-width:190px}.draw-prize-amount{min-height:70px}.draw-prize-amount strong{font-size:21px}}

/* v0.2.8 official logo premium refresh */
:root{--bg-grad-1:#071425;--bg-grad-2:#0f2849;--panel-1:#102749;--panel-2:#14335b;--line-soft:rgba(255,255,255,.11);--gold-soft:#f1cb7a;--text-soft:#c7d6ea;--mint-grad:linear-gradient(135deg,#11b790,#0c8f89)}
body{background:radial-gradient(circle at top,#183c6a 0%,#0a1730 42%,#07111f 100%)}
.header{backdrop-filter:blur(10px);background:rgba(7,18,34,.78);border-bottom:1px solid rgba(255,255,255,.06);position:sticky;top:0;z-index:10}.brand{gap:8px;font-size:28px}.brand span{color:#68adff}.nav{align-items:center;gap:18px}.nav nav{display:flex;gap:10px;flex-wrap:wrap}.navbtn{border-radius:14px;padding:12px 16px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06)}.navbtn.active{background:linear-gradient(180deg,#244c82,#1b3862);box-shadow:0 12px 24px rgba(0,0,0,.2)}
.panel,.lucky-promo,.feature-link,#modelReport{background:linear-gradient(180deg,rgba(17,39,72,.95),rgba(15,35,64,.96));border:1px solid rgba(255,255,255,.08);box-shadow:0 18px 40px rgba(2,8,20,.28)}
.hero.new-hero{background:linear-gradient(135deg,rgba(12,30,53,.96),rgba(19,49,89,.94));border:1px solid rgba(255,255,255,.09);box-shadow:0 24px 48px rgba(3,10,26,.34);overflow:hidden;position:relative}.hero.new-hero:after{content:'';position:absolute;right:-120px;top:-100px;width:320px;height:320px;background:radial-gradient(circle,var(--gold-soft) 0%,rgba(241,203,122,.05) 42%,transparent 70%);opacity:.22;pointer-events:none}.hero.new-hero h1{font-size:clamp(34px,4vw,56px);line-height:1.05;letter-spacing:-.04em}.hero.new-hero h1 em{font-style:normal;color:#ffd888}.hero.new-hero p{max-width:680px;color:#d4deef;font-size:16px;line-height:1.8}.hero-stat{background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.1);border-radius:24px;padding:22px 24px;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}.hero-stat strong{font-size:clamp(22px,2vw,30px)}
.workspace .section-head,.lab-panel .section-head,#lastWin .section-head,.view .eyebrow + h2{margin-bottom:16px}.workspace .switch{margin-bottom:18px}.switch button{font-weight:800;border-radius:16px}.switch button.selected{box-shadow:0 14px 28px rgba(0,0,0,.26)}
.compact-fields select,#group,#model,#statsWindow,input,textarea{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);color:#fff;border-radius:14px}.compact-fields select:focus,#group:focus,#model:focus,#statsWindow:focus,input:focus,textarea:focus{outline:none;border-color:#77b9ff;box-shadow:0 0 0 3px rgba(84,143,255,.18)}
.easy-custom,.expert-settings{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:16px 18px}.easy-custom>summary{font-size:15px}.numbers-grid button{border-radius:12px}.numbers-grid button.in{background:#2768cb;border-color:#6fa6ff}.numbers-grid button.out{background:#4a2131;border-color:#d46178}
.primary.wide{background:linear-gradient(135deg,#307cff,#1b52d4);box-shadow:0 20px 35px rgba(25,87,220,.28)}.secondary{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1)}.subtle{background:transparent;border:1px solid rgba(255,255,255,.08)}
.results .result,.account-number-card,.gift-history-card,.promo-copy,.feature-link{border-radius:22px}.result-tools button,.set-actions button{border-radius:12px}
#lastWin .section-head{margin-bottom:22px}.draw-showcase-grid{gap:22px}.draw-showcase-card{padding:24px 24px 22px;background:linear-gradient(180deg,#1a3963,#173255);border:1px solid rgba(255,255,255,.1);box-shadow:0 18px 36px rgba(1,7,19,.25)}.draw-card-top{display:grid;gap:14px;align-items:start}.draw-brandline{min-height:60px}.draw-official-logo{display:block;background:#fff;border-radius:16px;padding:10px 14px;height:66px;max-width:min(100%,260px);box-shadow:0 10px 26px rgba(0,0,0,.18)}.draw-round{margin:0;font-size:44px;font-weight:900;letter-spacing:-.05em}.draw-divider{margin:8px 0 18px}.draw-number-stage{min-height:120px}.draw-number-stage .showcase-numbers{justify-content:flex-start;gap:10px}.draw-number-stage .balls{gap:10px}.draw-number-stage .ball{width:46px;height:46px;font-size:13px;box-shadow:0 10px 20px rgba(0,0,0,.18)}.showcase-plus{font-size:30px}.pension-winning-line{justify-content:flex-start;gap:12px}.winning-place{font-size:18px;color:#f4d9a1}.pension-winning-line strong{font-size:34px;letter-spacing:-.04em}.pension-digits-clean{gap:7px}.pension-digits-clean i{width:38px;height:42px;border-radius:12px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16)}.draw-prize-amount{align-items:flex-start;text-align:left;min-height:auto;margin-top:6px}.draw-prize-amount small{font-size:12px;text-transform:none;color:#b8c9e3}.draw-prize-amount strong{font-size:clamp(21px,2vw,30px)}.draw-prize-amount span{font-size:13px;color:#dce6f4}.draw-actions{justify-content:flex-start;margin-top:18px}.ghost-btn,.buy-btn{min-width:156px;border-radius:16px;padding:14px 20px}.ghost-btn{background:#e9eff4;color:#0f2645}.buy-btn{background:var(--mint-grad)}
.draw-history-grid{gap:18px;margin-top:18px}.draw-history-head h3{font-size:18px}.prior-row{background:rgba(255,255,255,.04);border-radius:18px}
.model-report-panel,.lucky-promo,.feature-links{margin-top:22px}.feature-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.feature-link{background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.08);padding:18px 18px}.feature-link strong{font-size:16px}.feature-link small{color:#b9cae4}
.vault-tabs button{border-radius:14px}.vault-tabs button.selected{background:linear-gradient(180deg,#27528f,#1c3d69)}.account-number-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);padding:16px}.account-number-meta{gap:8px}.account-round,.account-kind{background:rgba(255,255,255,.07);border-radius:999px;padding:7px 10px}.account-delete{border-radius:12px;padding:8px 12px;background:#422332;color:#fff}
.footer{padding-bottom:46px}.footer p,.footer a{color:#9db0cd}
@media(max-width:980px){.feature-links{grid-template-columns:1fr}.hero.new-hero{grid-template-columns:1fr}.draw-official-logo{height:60px;max-width:230px}.draw-round{font-size:36px}.draw-number-stage{min-height:102px}.ghost-btn,.buy-btn{min-width:0}}
@media(max-width:640px){.header{position:static}.brand{font-size:24px}.nav{gap:12px}.nav nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.navbtn{width:100%;padding:11px 12px}.top-account{width:100%;display:flex;justify-content:space-between}.hero.new-hero{padding:24px 18px}.hero.new-hero h1{font-size:34px}.panel,.lucky-promo,#modelReport{padding:18px 16px;border-radius:22px}.draw-showcase-card{padding:18px 16px}.draw-official-logo{height:56px;max-width:205px;padding:8px 12px}.draw-round{font-size:30px}.draw-number-stage{min-height:86px}.draw-number-stage .showcase-numbers,.pension-winning-line{justify-content:center;flex-wrap:wrap}.draw-number-stage .balls{gap:6px}.draw-number-stage .ball{width:38px;height:38px;font-size:11px}.pension-winning-line strong{font-size:28px}.pension-digits-clean i{width:34px;height:38px;font-size:17px}.draw-prize-amount,.draw-actions{align-items:stretch;text-align:center;justify-content:center}.draw-actions a{flex:1}.hero-stat{padding:18px 18px}}

/* v0.2.9 separation: draw results on home, prediction performance in lab */
#stats .stats-report{margin:26px 0 0;padding:24px;border-radius:20px;border:1px solid rgba(255,255,255,.12);box-shadow:none;background:linear-gradient(155deg,#142d51,#102541)}
#stats .stats-report .report-intro{gap:12px;align-items:center}
#stats .stats-report .report-intro p{color:#b8c9e1;margin:7px 0 0}
#stats .stats-report .report-more[hidden]{display:none!important}
.report-empty-state{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;padding:34px 16px;border:1px dashed rgba(187,204,234,.22);border-radius:18px;background:rgba(255,255,255,.025)}
.report-empty-symbol{font-size:28px;color:#e7c37a}.report-empty-state strong{font-size:19px;color:#f3f6fd}.report-empty-state span{font-size:13px;line-height:1.6;color:#afc2dc;max-width:340px}
@media(max-width:640px){#stats .stats-report{padding:18px 14px;margin-top:18px}.report-empty-state{padding:28px 12px}}
/* v0.3.0 simple auth */
#accountDialog{width:min(440px,calc(100vw - 24px));max-height:min(90vh,800px);overflow:auto;border:1px solid rgba(255,255,255,.16);border-radius:24px;padding:24px;background:#122642;color:#f5f8ff}#accountDialog .eyebrow{color:#f3cb7c}#accountDialog h2{font-size:26px;letter-spacing:-.045em;margin:7px 0 22px}#accountDialog #memberGuest[hidden],#accountDialog #simpleAuth[hidden],#accountDialog #memberLogged[hidden]{display:none!important}.simple-auth{display:grid;gap:13px}.auth-social{display:grid;gap:10px}.auth-social a{text-decoration:none;min-height:51px;border-radius:13px;display:flex;align-items:center;justify-content:center;gap:12px;font-size:15px;font-weight:850}.auth-social-kakao{background:#fee500;color:#241b10}.auth-social-naver{background:#03c75a;color:#fff}.auth-social-naver b{font-size:21px}.auth-social-kakao span{font-size:20px}.auth-divider{text-align:center;font-size:12px;color:#a4b9d2;margin:4px 0}.auth-modes{display:grid;grid-template-columns:1fr 1fr;padding:3px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.08);border-radius:12px}.auth-modes button{padding:10px;border:0;color:#a8bed9;border-radius:10px;background:transparent;font-size:13px;font-weight:800}.auth-modes button.active{background:#285ca3;color:#fff}.simple-auth .auth-field{margin:0;font-size:12px;font-weight:750;color:#d3e1f0}.simple-auth input{height:46px;padding:11px 13px;border:1px solid #416080;background:#142d50;color:#fff;border-radius:11px}.simple-auth #simpleSubmit{margin-top:3px}.auth-text-button{background:none!important;border:0!important;color:#bbcce2!important;font-size:12px!important;text-decoration:underline;text-underline-offset:3px;padding:4px!important}.auth-status{min-height:18px;font-size:12px;line-height:1.55;color:#a9eac8}.auth-status.error{color:#ffb3b3}.auth-legacy{border-top:1px solid rgba(255,255,255,.12)!important;padding-top:13px!important;text-decoration:none!important}.simple-auth [hidden]{display:none!important}

/* v0.3.1 — high contrast for every editable control and native option popup.
   Native select popups are rendered by the OS: explicit option colors prevent
   white-on-white entries in Chrome/Edge on Windows. */
:root {color-scheme:light}
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
select,textarea {
  background-color:#ffffff;
  color:#152842;
  -webkit-text-fill-color:#152842;
  border:1px solid #9baec9;
  caret-color:#152842;
}
input::placeholder,textarea::placeholder {color:#72839c;opacity:1}
select option,select optgroup {background-color:#ffffff!important;color:#152842!important}
select option:checked {background-color:#dcecff!important;color:#092d66!important}
input:focus-visible,select:focus-visible,textarea:focus-visible {
  outline:2px solid #5d9ffc;outline-offset:2px;border-color:#3a7fe1;
}
/* dark-colored dialogs still use readable light text on dark fields */
#accountDialog input:not([type="checkbox"]):not([type="radio"]),
#giftDialog input:not([type="checkbox"]):not([type="radio"]),
#giftDialog textarea,#giftDialog select,
#admin input:not([type="checkbox"]):not([type="radio"]),#admin select {
  background-color:#ffffff!important;color:#13243e!important;
  -webkit-text-fill-color:#13243e!important;border-color:#a9bcd4;
}
#accountDialog input::placeholder,#giftDialog input::placeholder,
#giftDialog textarea::placeholder,#admin input::placeholder {color:#667a96!important;opacity:1}
/* preserve button contrast even when themes differ */
#accountDialog .auth-modes button.active{color:#fff!important}
#accountDialog .auth-modes button:not(.active){color:#d3e0f2!important}
#home .count-field select,#home #group,#home #model,#statsWindow{background-color:#fff!important;color:#152842!important;-webkit-text-fill-color:#152842!important}

/* v0.3.2: lottery-specific history tabs */
#performanceHistory.draw-history-grid{display:block;margin-top:16px}
#performanceHistory[hidden],#performanceHistory [hidden]{display:none!important}
.draw-history-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px;padding:5px;background:rgba(4,14,31,.4);border:1px solid rgba(255,255,255,.1);border-radius:16px}
.draw-history-tabs button{font:inherit;color:#b8cbe4;background:transparent;border:0;border-radius:12px;padding:13px 10px;font-weight:800;cursor:pointer;transition:background .15s ease,color .15s ease}
.draw-history-tabs button.selected{background:#2b65ad;color:#fff;box-shadow:0 6px 18px rgba(8,15,30,.25)}
.draw-history-tabs button:focus-visible{outline:2px solid #9ccaff;outline-offset:2px}
.draw-history-panes{max-width:920px;margin-inline:auto}
.draw-history-panes .draw-history-head{margin-bottom:14px}
@media(max-width:520px){.draw-history-tabs button{padding:12px 5px;font-size:13px}.draw-history-panes .prior-row{padding:13px}.draw-history-panes .prior-heading{flex-wrap:wrap}}

/* v0.3.3 mobile layout stabilization */
html,body{overflow-x:hidden}
main.shell{padding-bottom:28px}

/* make section heads stack cleanly on narrow widths */
.section-head{flex-wrap:wrap}
.workspace .section-head,.lab-panel .section-head,#lastWin .section-head,#mine .section-head{align-items:flex-start}
.workspace .section-head > div,.lab-panel .section-head > div,#lastWin .section-head > div{min-width:0;flex:1 1 0}
.workspace .section-head .pill,.lab-panel .section-head .pill{align-self:flex-start}
.workspace .section-head h2,.lab-panel .section-head h2,#lastWin .section-head h2{overflow-wrap:anywhere;word-break:keep-all}

/* feature cards */
.feature-link{display:flex;align-items:center;justify-content:space-between;gap:14px;text-align:left}
.feature-link > span:nth-child(2){display:grid;gap:4px;flex:1;min-width:0}
.feature-link b{font-size:26px;line-height:1;color:#d8e4f7}

/* result cards should not overflow */
.draw-showcase-card,.hero.new-hero,.panel,.lucky-promo,.feature-link{max-width:100%}
.draw-showcase-card .draw-number-stage,.draw-showcase-card .draw-actions,.draw-showcase-card .draw-prize-amount{min-width:0}
.draw-showcase-card .draw-actions a{white-space:nowrap}
.draw-history-panes,.draw-history-grid{min-width:0}

/* lottery result number grouping */
.showcase-numbers{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.showcase-numbers .balls{min-width:0}

/* mobile-first cleanup */
@media (max-width: 768px){
  .shell{padding-left:16px;padding-right:16px}
  .header{position:static}
  .nav{height:auto;padding:18px 0 14px;display:grid;grid-template-columns:1fr;gap:12px;align-items:stretch}
  .brand{font-size:20px}
  .top-account{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}
  .top-account .secondary,.top-account .adminlink{width:100%;min-height:44px;border-radius:14px;padding:11px 14px}
  .nav nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;overflow:visible}
  .navbtn{min-height:56px;padding:12px 10px;border-radius:16px;line-height:1.35;font-size:14px;text-align:center;white-space:normal;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.05);color:#d7e4f7}
  .navbtn.active{background:linear-gradient(180deg,#274b80,#1d3960);color:#fff}
  .subtle.adminlink{background:rgba(255,255,255,.03);color:#d6e3f5}

  .hero.new-hero{padding:22px 18px;display:grid;grid-template-columns:1fr;gap:18px;border-radius:24px}
  .hero.new-hero h1{font-size:clamp(31px,10vw,42px);line-height:1.08;margin:8px 0 10px}
  .hero.new-hero p{font-size:15px;line-height:1.65;margin:0}
  .hero-stat{padding:18px;border-radius:20px}
  .hero-stat strong{font-size:24px}

  .panel{padding:18px 16px;margin:14px 0 18px;border-radius:22px}
  .panel h2{font-size:24px;line-height:1.18;margin:6px 0 0}
  .panel h3{font-size:16px}
  .eyebrow{font-size:11px;letter-spacing:.16em}
  .section-head{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}
  .section-head .pill{margin-top:0}
  .muted{line-height:1.6}

  #home .switch{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:6px;border-radius:16px;margin:18px 0 14px}
  #home .switch button{min-height:54px;padding:12px 10px;border-radius:12px;line-height:1.35;font-size:15px}
  #home .settings{grid-template-columns:1fr}
  #home .count-field select{height:48px}
  #home .advanced{padding:14px 12px;border-radius:16px}
  #home .advanced summary{display:flex;align-items:center;justify-content:space-between;gap:12px}
  #home .advanced summary span{float:none;font-size:12px;flex:0 0 auto}
  #home .numbers-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
  #home .numbers-grid button{height:42px}
  #home .custom-bottom{display:grid;gap:10px}
  #home #generate{min-height:56px;border-radius:16px;font-size:17px}
  #results .result{padding:14px 12px;border-radius:16px}
  #results .result-head{gap:8px;flex-wrap:wrap}
  #results .balls{gap:7px}

  #lastWin .draw-showcase-grid{display:grid;grid-template-columns:1fr;gap:16px}
  .draw-showcase-card{padding:18px 16px 16px;border-radius:22px}
  .draw-official-logo{max-width:200px;height:54px;border-radius:14px}
  .draw-round{font-size:28px;line-height:1.05}
  .draw-divider{margin:14px 0}
  .draw-number-stage{min-height:auto}
  .draw-number-stage .showcase-numbers{justify-content:center}
  .draw-number-stage .balls{justify-content:center}
  .draw-number-stage .ball{width:40px;height:40px;font-size:12px}
  .showcase-plus{font-size:26px}
  .pension-winning-line{display:flex;flex-wrap:wrap;justify-content:center;text-align:center}
  .winning-place{width:100%;font-size:18px}
  .pension-winning-line strong{font-size:28px}
  .pension-digits-clean{justify-content:center;flex-wrap:wrap}
  .pension-digits-clean i{width:34px;height:36px}
  .draw-prize-amount{margin-top:14px;align-items:center;text-align:center}
  .draw-prize-amount strong{font-size:18px;line-height:1.35}
  .draw-prize-amount span{font-size:13px}
  .draw-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}
  .ghost-btn,.buy-btn{min-width:0;width:100%;padding:13px 12px;border-radius:14px;font-size:15px}
  #morePerformance{width:100%;margin-top:2px;min-height:48px;border-radius:14px}
  .draw-history-tabs{grid-template-columns:1fr 1fr;margin-bottom:14px}
  .draw-history-tabs button{padding:12px 8px;font-size:14px}
  .prior-row{padding:14px}
  .prior-heading{display:flex;flex-direction:column;align-items:flex-start;gap:4px}

  .lucky-promo{padding:18px 16px;display:grid;grid-template-columns:1fr;gap:14px;border-radius:22px}
  .promo-copy h2{font-size:28px;line-height:1.2;margin:8px 0}
  .promo-copy p{font-size:15px;line-height:1.65}
  .promo-action{width:100%;justify-content:center;min-height:54px}
  .promo-art{justify-content:center;min-height:120px}
  .gift-emoji{font-size:64px}

  .feature-links{display:grid;grid-template-columns:1fr;gap:12px}
  .feature-link{padding:16px;border-radius:18px}
  .feature-icon{width:54px;height:54px;border-radius:16px;flex:0 0 auto}
  .feature-link strong{font-size:17px}
  .feature-link small{font-size:13px;line-height:1.5}

  .lab-toolbar{display:grid;grid-template-columns:1fr;gap:12px}
  .lab-toolbar .switch{margin:0}
  .lab-toolbar .lab-period select{height:48px}
  #stats .stats-report{padding:18px 16px;border-radius:20px}
  #stats .report-intro{display:grid;gap:10px}
  #stats .report-more{width:100%;justify-content:center}
  .report-switch{display:grid;grid-template-columns:1fr 1fr}

  .vault-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .vault-tabs button{padding:12px 10px;min-height:48px}
  #savedList,#memberSavedList,#giftHistoryList{display:grid;gap:10px}
  .account-number-card,.gift-history-card{padding:14px;border-radius:18px}

  .method-grid{grid-template-columns:1fr;gap:12px}
  .method-grid article{padding:16px;border-radius:16px}

  dialog{padding:20px 16px 18px;border-radius:20px;width:calc(100vw - 20px)}
  #accountDialog h2{font-size:22px;margin-bottom:16px}
}

@media (max-width: 420px){
  .shell{padding-left:14px;padding-right:14px}
  .nav nav{grid-template-columns:1fr 1fr}
  .navbtn{font-size:13px;min-height:52px;padding:10px 8px}
  .top-account{grid-template-columns:1fr auto}
  .top-account .secondary,.top-account .adminlink{font-size:14px}
  .hero.new-hero{padding:20px 16px}
  .hero.new-hero h1{font-size:30px}
  .panel h2{font-size:22px}
  #home .section-head h2{font-size:20px}
  #home .section-head .muted{font-size:14px}
  #home .switch button{font-size:14px}
  #home .numbers-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
  #home .numbers-grid button{height:40px;font-size:13px}
  .draw-official-logo{max-width:185px;height:50px}
  .draw-round{font-size:26px}
  .draw-number-stage .ball{width:36px;height:36px;font-size:11px}
  .ghost-btn,.buy-btn{font-size:14px;padding:12px 10px}
  .promo-copy h2{font-size:24px}
}

/* v0.3.4 nav inactive visibility boost */
.nav nav{padding:6px;border-radius:22px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08)}
.navbtn{position:relative;font-weight:800;color:#7f99bd;background:rgba(255,255,255,.04);border:1px solid rgba(126,157,201,.18);box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.navbtn:hover{background:rgba(255,255,255,.08);color:#cfe1ff;border-color:rgba(135,172,224,.3)}
.navbtn.active{background:linear-gradient(180deg,#284d84,#1e3c66);color:#fff;border-color:rgba(167,200,245,.22);box-shadow:0 10px 24px rgba(7,18,36,.22)}

@media (max-width: 768px){
  .nav nav{padding:8px;gap:10px;border-radius:24px;background:rgba(255,255,255,.08)}
  .navbtn{color:#90a9cb;background:rgba(255,255,255,.045);border:1px solid rgba(145,173,214,.22)}
  .navbtn:hover{color:#d8e8ff}
  .navbtn.active{color:#fff}
}

@media (max-width: 420px){
  .nav nav{padding:7px;gap:8px}
  .navbtn{font-size:13px;line-height:1.3}
}

/* ==========================================================
 LOTTO LAB v0.3.5 — consolidated visual foundation
 Explicit surfaces, accessible contrast, and responsive rhythm.
 ========================================================== */
:root{--ink:#152a47;--muted-ink:#576c88;--night:#08182e;--navy:#112949;--navy-2:#1b3a63;--light:#f7faff;--stroke:#dce5f1;--blue:#2469cf;--gold:#ffd184;--green:#079c85}
html{scroll-behavior:smooth}body{background:#08172c;color:#eef4ff;line-height:1.55}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #ffcd76;outline-offset:3px}main.shell{padding-bottom:32px}
.header{background:#091a33;border-color:#233958}.nav{gap:16px}.brand,.brand b{color:#fff}.brand span{color:#7db2ff}.nav nav{background:#0f2747;border:1px solid #314968;gap:7px;padding:6px}.navbtn{background:#213856!important;border:1px solid #42607f!important;color:#e1ebf9!important;box-shadow:none!important;font-weight:780;min-width:0}.navbtn:hover{background:#28496f!important;color:#fff!important}.navbtn.active{background:#3370c4!important;border-color:#6ea1ef!important;color:#fff!important;box-shadow:0 6px 20px #020c1c55!important}.top-account .secondary{background:#223e65;color:#f7fbff;border:1px solid #476b9d}.top-account .adminlink{color:#cbd9eb;background:#172b49;border:1px solid #334f73}
.hero.new-hero{position:relative;background:linear-gradient(110deg,#112946dd,#17365cbb),url('/static/hero-lottery.webp') center/cover;border:1px solid #3a5272;border-radius:26px;padding:34px;box-shadow:0 16px 40px #0004}.hero.new-hero h1{font-size:clamp(30px,4vw,45px);line-height:1.15;letter-spacing:-.045em}.hero.new-hero h1 em{color:#ffd38a}.hero.new-hero p{max-width:570px;color:#e4ebf7;font-size:15px;line-height:1.65}.hero-stat{min-width:0;max-width:280px;background:#102542e8;color:#fff;border:1px solid #536783}.hero-stat small,.hero-stat span{color:#d6e3f5}.hero-stat strong{font-size:clamp(19px,2vw,26px)}
/* Editorial structure: white surfaces for tasks, dark for official results */
#home,#stats,#mine,#method,#admin{background:#f8fbff;color:var(--ink);border:1px solid #e4eaf3;box-shadow:0 16px 38px #020d2155;border-radius:24px}
#home h2,#stats h2,#mine h2,#method h2,#admin h2,#home h3,#stats h3,#mine h3,#method h3,#admin h3{color:var(--ink)}
#home .eyebrow,#stats .eyebrow,#mine .eyebrow,#method .eyebrow,#admin .eyebrow{color:#3569a5}
#home .muted,#stats .muted,#mine .muted,#method .muted,#admin .muted,#home .disclaimer,#mine .disclaimer{color:var(--muted-ink)}
#home .pill,#stats .pill{background:#e5f3eb;color:#176b55;border:1px solid #b9dcca}
#home .section-head h2{font-size:clamp(22px,3vw,30px);word-break:keep-all;overflow-wrap:normal;line-height:1.32}
#home .section-head .muted{font-size:14px;margin:6px 0 0}
/* Quick pick */
#home .switch{background:#e6edf8;border:1px solid #d3dff0;padding:5px;border-radius:17px;gap:7px}
#home .switch button{color:#294c77;background:#fff;border:1px solid #c5d7ed;font-weight:800;box-shadow:none;border-radius:12px}
#home .switch button.selected{background:linear-gradient(130deg,#2477de,#1953b1);border-color:#1554b2;color:#fff;box-shadow:0 8px 19px #1656b33d}
#home .count-field{color:#263b57;font-size:14px;font-weight:800}
#home select,#stats select,#home input{background:#fff!important;color:#142842!important;border:1px solid #a6b8ce!important;-webkit-text-fill-color:#142842!important;box-shadow:none}
#home .easy-custom{background:#eff5fb!important;border:1px solid #d3e1f0!important;padding:17px 18px!important;border-radius:16px;color:#253b57}
#home .easy-custom>summary{color:#193c66;font-size:15px}
#home .easy-custom>summary span{color:#5a708a;opacity:1}
#home .custom-intro,#home .custom-hint,#home .custom-bottom{color:#435b78;opacity:1}
#home .custom-mode button{background:#fff;color:#294b6f;border:1px solid #bbcee4}
#home .custom-mode button.selected{background:#2569c1;border-color:#2569c1;color:#fff}
#home .numbers-grid button{background:#fff;color:#264361;border:1px solid #cbd7e7}
#home .numbers-grid button.in{background:#d9f4e6;color:#075b3c;border-color:#54aa83}
#home .numbers-grid button.out{background:#ffe0e4;color:#9c2643;border-color:#d7869c}
#home .expert-settings{background:#fff;border:1px solid #d5e0ed;color:#253b57}
#home .expert-settings summary{color:#345272;opacity:1}
#home #generate{color:#fff;background:linear-gradient(110deg,#2676dd,#1554b8);border-radius:14px;min-height:56px;font-size:17px;box-shadow:0 12px 24px #125cc233}
#home .result,#savedList .result{background:#fff;color:#18324f;border:1px solid #d9e4f0}
#home .result .set-actions button,#home .result-tools button{color:#1d4b82;background:#ecf4ff;border:1px solid #c6d7ed}
/* The public results are dark but type and number colors stay fully readable */
#lastWin{background:linear-gradient(140deg,#122b50,#0c203e);color:#fff;border:1px solid #365071;box-shadow:0 20px 38px #0003;border-radius:24px}
#lastWin h2{color:#fff}#lastWin .eyebrow{color:#ffc870}
.draw-showcase-card{background:linear-gradient(145deg,#1a3b68,#153156);border:1px solid #496688;border-radius:22px;min-width:0;box-shadow:0 12px 26px #04132b42}
.draw-official-logo{background:#fff;object-fit:contain;box-shadow:0 6px 18px #05132940;max-width:min(100%,230px);height:58px}
.draw-card-top{gap:6px}.draw-round{font-size:clamp(27px,3vw,38px);margin-top:8px;color:#fff}
.draw-divider{background:#4d6380;margin:12px 0 18px}.draw-number-stage{min-height:100px}
.draw-number-stage .showcase-numbers{display:flex;align-items:center;gap:8px;justify-content:center;flex-wrap:wrap}
.draw-number-stage .balls{display:flex;gap:5px;flex-wrap:nowrap;justify-content:center}
.draw-number-stage .ball{width:clamp(30px,3.4vw,42px);height:clamp(30px,3.4vw,42px);font-size:12px}
.draw-number-stage .showcase-plus{font-size:23px}
.pension-winning-line{display:flex;justify-content:center;align-items:center;gap:8px}
.pension-winning-line strong{font-size:clamp(24px,3vw,30px)}.winning-place{color:#ffdf9c}
.draw-prize-amount{text-align:center;align-items:center;gap:5px;min-height:75px}.draw-prize-amount small{font-size:13px;color:#d3e2f5}.draw-prize-amount strong{color:#fff;font-size:clamp(20px,2.2vw,27px)}.draw-prize-amount span{color:#c8dded}
.draw-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:auto;padding-top:15px;width:100%}
.draw-actions a{width:100%;min-width:0;max-width:none;font-weight:850;font-size:14px;padding:13px 10px;border-radius:12px;white-space:nowrap;min-height:46px}
.ghost-btn{color:#102a4d;background:#ecf4fe}.buy-btn{color:#fff;background:#079c85}
#morePerformance{margin-top:16px;border:1px solid #6882a4;background:#24466e;color:#fff;border-radius:12px;padding:13px 20px;font-size:14px;font-weight:800}
#performanceHistory{color:#fff}.draw-history-tabs{background:#0c1d35;border-color:#3e597c}.draw-history-tabs button{color:#d5e5fa}.draw-history-tabs button.selected{background:#3371c6;color:#fff}
.draw-history-panes .prior-row{background:#223f65;border:1px solid #406187;color:#fff}.draw-history-panes .prior-heading span,.draw-history-panes .muted{color:#d6e2f2}
/* Secondary experiences are dark, deliberate, never low-contrast */
.lucky-promo{background:linear-gradient(120deg,#132c50,#1b3c67);color:#fff;border-color:#3c5577;border-radius:24px;padding:28px}.promo-copy h2{color:#fff}.promo-copy p{color:#e4ecf8}.promo-action{color:#ffdc98;border-color:#f5c579;max-width:100%;white-space:normal;text-align:center}
.feature-links{margin:16px 0 24px;gap:12px}.feature-link{border:1px solid #426187;background:linear-gradient(125deg,#152f53,#10233f);min-width:0;color:#fff;box-shadow:0 8px 22px #010a1b44;border-radius:18px}.feature-link:hover{background:#24466f}.feature-link strong{color:#f5f9ff!important;font-size:16px}.feature-link small{color:#c4d6eb!important}.feature-link b{color:#a9c4e5}.feature-icon{flex:0 0 auto}
/* Statistical reports: a separate dark nested surface */
#stats .stats-report{background:#152d4d;color:#fff;border:1px solid #345576;box-shadow:none;border-radius:18px}
#stats .stats-report h2{color:#fff}#stats .stats-report .eyebrow{color:#f4c673}
#stats .stats-report .report-more{color:#e7f2ff}.report-switch button{color:#d4e1f3}.report-switch button.selected{background:#33659b;color:#fff}.report-empty-state strong{color:#fff}
#stats .frequency,#stats .freq,#stats .statrow,#stats .notice{color:#183451}
#stats .freq{background:#e8f0f9}#stats .freq small{color:#627590}
/* Vault stays light, unlike the surrounding site */
#mine .vault-tabs{background:#eaf1fa;border-radius:13px;padding:5px;gap:6px}
#mine .vault-tabs button{color:#355575;background:#fff;border:1px solid #c9d8ec;border-radius:10px}
#mine .vault-tabs button.selected{background:#2566bb;color:#fff;border-color:#2566bb}
#mine #cloudSaveNotice{color:#345376;background:#e9f1fb}
#memberSavedList .account-number-card{background:#fff;color:#203e63;border-color:#d4e1f0}
#memberSavedList .account-round{color:#1a416d;background:#eaf2fb}
#memberSavedList .account-kind{color:#516a88;background:#eef4fb}
#memberSavedList .account-delete{background:#fff0f3;color:#a12d47}
#mine .vault-record,#mine .vault-empty{color:#223d60;background:#fff;border:1px solid #d5e0ed}
#mine .vault-record .vault-quote,#mine .vault-record .muted,#mine .vault-date{color:#4c6483}
#mine .secondary,#mine .subtle{color:#24538b;background:#eaf2fc;border:1px solid #cad8ea}
#mine .danger{color:#a9334b}
#method .method-grid article{background:#fff;color:#223d5b;border-color:#d4e1ef}
#method .method-grid h3{color:#1a3d69}#method .method-grid p{color:#536986}#method .notice{color:#2b4c6e;background:#eaf1fa}
#admin label{color:#27425f}#admin .notice{color:#355371;background:#e6eef9}#admin .adminmetric{color:#193a5e;background:#e5eefb}
/* Interactions must contrast in every browser, including native select options */
input:not([type=checkbox]):not([type=radio]),select,textarea{background:#fff!important;color:#142941!important;-webkit-text-fill-color:#142941!important;border:1px solid #9eafc6!important;caret-color:#142941;border-radius:11px}
input::placeholder,textarea::placeholder{color:#697c94!important;opacity:1}select option,select optgroup{background:#fff!important;color:#152940!important}select option:checked{background:#cfe2fb!important;color:#133e78!important}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #2471d7;outline-offset:2px}
#accountDialog{background:#132b4c;border:1px solid #4a6789;color:#fff}#accountDialog .simple-auth label,#accountDialog .auth-field{color:#dceafa}#accountDialog .auth-modes button:not(.active){color:#d7e4f5!important}#accountDialog .auth-social-kakao{color:#251e13}#accountDialog .auth-social-naver{color:#fff}#giftDialog{background:#f8fbff;color:#152e50}#giftDialog h2{color:#17345b}
.footer{color:#bdcbe0}.footer b,.footer a{color:#d7e8ff}.footer p{color:#adbfda}
/* Mobile: deliberate density, never clipped text or oversized panels */
@media(max-width:768px){
 .shell{padding-inline:14px}.nav{padding:12px 0 14px;gap:10px}.brand{font-size:21px}.nav nav{order:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;border-radius:15px;padding:7px;width:100%}.navbtn{font-size:13px!important;min-height:46px!important;padding:10px 7px!important;border-radius:11px!important;white-space:normal}.top-account{order:3;display:grid;grid-template-columns:1fr auto;gap:8px;width:100%}.top-account .secondary,.top-account .adminlink{min-height:42px;padding:10px 12px;font-size:13px}
 .hero.new-hero{padding:22px 18px;border-radius:20px;gap:12px;margin-top:12px}.hero.new-hero h1{font-size:clamp(27px,7.6vw,34px);margin:8px 0}.hero.new-hero p{font-size:14px;line-height:1.5}.hero-stat{max-width:none;padding:13px 16px;gap:3px;border-radius:14px}.hero-stat strong{font-size:20px}.hero-stat small{font-size:11px}
 .panel,#home,#stats,#mine,#method,#admin,#lastWin{border-radius:19px;padding:19px 15px;margin:13px 0 18px}.section-head{margin:0 0 14px;gap:6px}.panel h2{font-size:clamp(21px,6.3vw,26px);line-height:1.25;word-break:keep-all}.workspace .section-head .pill{display:none}#home .section-head .muted{font-size:13px;margin-top:2px}
 #home .switch{margin:13px 0}.switch button{line-height:1.3}#home .switch button{font-size:13px;min-height:48px;padding:10px 6px}.count-field{max-width:none}
 #home .easy-custom{padding:13px!important}#home .easy-custom>summary{font-size:14px;flex-wrap:wrap}#home .easy-custom>summary span{margin-left:0}
 #home .numbers-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:7px}#home .numbers-grid button{height:40px;font-size:13px}
 .draw-showcase-grid{display:grid;grid-template-columns:1fr;gap:13px}.draw-showcase-card{padding:17px 15px;border-radius:17px;min-height:0}.draw-brandline{min-height:0}.draw-official-logo{height:49px;max-width:190px;padding:7px 10px}.draw-card-top{gap:3px}.draw-round{font-size:28px;margin:4px 0}.draw-divider{margin:12px 0 14px}.draw-number-stage{min-height:80px}.draw-number-stage .showcase-numbers{gap:5px;flex-wrap:wrap}.draw-number-stage .balls{gap:clamp(2px,1.4vw,6px)}.draw-number-stage .ball{width:clamp(30px,9vw,40px);height:clamp(30px,9vw,40px);font-size:11px}.draw-number-stage .bonus-ball{width:37px;height:37px}.draw-prize-amount{margin:12px 0 0;min-height:0}.draw-prize-amount strong{font-size:clamp(19px,5.6vw,25px)}.draw-actions{gap:8px;padding-top:14px}.draw-actions a{min-height:46px;font-size:13px}
 .lucky-promo{display:grid;grid-template-columns:1fr;padding:21px 18px;border-radius:20px;gap:9px}.promo-copy h2{font-size:25px}.promo-copy p{font-size:14px;line-height:1.5}.promo-action{width:100%;min-height:50px}.promo-art{display:none}
 .feature-links{grid-template-columns:1fr;gap:10px;margin:12px 0 20px}.feature-link{padding:13px 15px;border-radius:16px;min-height:72px}.feature-icon{width:46px;height:46px;border-radius:13px}.feature-link strong{font-size:15px!important}.feature-link small{font-size:12px!important}
 #stats .stats-report{padding:17px 13px;margin-top:18px}.report-main-grid{grid-template-columns:1fr}.report-intro h2{font-size:20px}.lab-toolbar{display:grid;grid-template-columns:1fr}.lab-period{color:#24466b}
 #mine .vault-tabs{grid-template-columns:1fr 1fr}#mine .vault-tabs button{min-height:46px}.method-grid{grid-template-columns:1fr}
}
@media(min-width:769px){.draw-showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-links{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* v0.3.6 — header action row and accessible footer: final cascade */
/* Desktop: brand | navigation | account actions on the same horizontal band. */
.header .nav{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;align-items:center!important;gap:clamp(12px,1.7vw,24px)!important;min-height:82px;height:auto!important;padding-block:12px!important}
.header .nav>.brand{grid-column:1;grid-row:1;justify-self:start;font-size:clamp(19px,2vw,25px);white-space:nowrap}
.header .nav>nav{grid-column:2;grid-row:1;margin:0!important;width:auto!important;min-width:0;justify-self:center;display:flex!important;align-items:center;justify-content:center;gap:4px;padding:5px!important;overflow:visible}
.header .nav>nav .navbtn{min-width:0;padding:11px 12px!important;white-space:nowrap;font-size:12px!important;min-height:42px!important}
.header .nav>.top-account{grid-column:3;grid-row:1;justify-self:end;display:flex!important;align-items:center;gap:7px;width:auto!important;margin:0!important;min-width:0}
.header .nav>.top-account button{white-space:nowrap;min-height:42px;line-height:1.2;padding:11px 12px!important;font-size:12px!important;border-radius:11px}
.header .nav>.top-account .adminlink{opacity:1!important;color:#e1edff!important}
/* Mid-sized screens: brand/account first row; navigation second row */
@media(max-width:1090px){
  .header .nav{grid-template-columns:minmax(0,1fr) auto!important;gap:10px 12px!important}
  .header .nav>.brand{grid-column:1;grid-row:1}
  .header .nav>.top-account{grid-column:2;grid-row:1}
  .header .nav>nav{grid-column:1/-1;grid-row:2;justify-self:stretch;width:100%!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
  .header .nav>nav .navbtn{width:100%;white-space:normal;min-height:43px!important}
}
@media(max-width:620px){
  .header .nav{grid-template-columns:minmax(0,1fr) auto!important;gap:9px 10px!important;padding:12px 0!important}
  .header .nav>.brand{font-size:21px!important}
  .header .nav>.top-account{gap:6px}
  .header .nav>.top-account button{font-size:12px!important;padding:9px 10px!important;min-height:38px}
  .header .nav>.top-account .adminlink{padding:9px 8px!important}
  .header .nav>nav{grid-template-columns:repeat(2,minmax(0,1fr));padding:6px!important;gap:6px}
  .header .nav>nav .navbtn{font-size:13px!important;min-height:43px!important;padding:9px 6px!important}
}
@media(max-width:380px){
  .header .nav>.brand{font-size:18px!important}
  .header .nav>.top-account button{font-size:11px!important;padding:8px 7px!important}
}
/* Footer: consistent light surface with dark, high contrast type */
.footer.shell{background:#f2f6fc!important;color:#243c5a!important;border-top:1px solid #cfdaea!important;padding:27px max(18px,calc((100% - 1120px)/2)) 35px!important;margin-top:28px;max-width:none!important;font-size:14px!important;line-height:1.75!important}
.footer.shell>div{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 12px;margin-bottom:9px}
.footer.shell b{color:#102d54!important;font-size:17px!important;font-weight:900}
.footer.shell span{color:#415b7b!important;font-size:13px!important}
.footer.shell p{color:#425c7c!important;font-size:13px!important;line-height:1.8!important;margin:7px 0!important}
.footer.shell a{color:#095bb7!important;font-weight:800!important;text-decoration:underline;text-underline-offset:3px}
.footer.shell a:hover{color:#073e81!important}
@media(max-width:620px){
 .footer.shell{padding:22px 17px 30px!important;font-size:13px!important}
 .footer.shell>div{display:grid;gap:2px}
 .footer.shell b{font-size:17px!important}
 .footer.shell p{font-size:13px!important;overflow-wrap:anywhere}
}


/* Your Turn footer brand: preserve icon + text horizontally on mobile.
   Overrides the @media(max-width:620px) .footer.shell > div grid rule. */
.footer.shell > div.yourturn-footer-brand {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  column-gap: 9px !important;
  row-gap: 0 !important;
}
.footer.shell > div.yourturn-footer-brand > img {
  display: block !important;
  flex: 0 0 32px !important;
  width: 32px !important;
  height: 32px !important;
}
.footer.shell > div.yourturn-footer-brand > b {
  display: inline-block !important;
  white-space: nowrap !important;
  margin: 0 !important;
}


/* v146 gift hero refinement */
.gift-luxe{display:grid;gap:16px}
.gift-hero-card{position:relative;padding:22px 22px 18px;border-radius:24px;background:linear-gradient(145deg,#153761,#1d4a7f 62%,#16385f 100%);border:1px solid rgba(180,210,246,.22);box-shadow:0 18px 34px rgba(9,22,43,.18);overflow:hidden}
.gift-hero-card::before{content:"";position:absolute;inset:-18% auto auto -12%;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.12),rgba(255,255,255,0) 68%);pointer-events:none}
.gift-hero-card::after{content:"";position:absolute;right:-40px;top:-36px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.11),rgba(255,255,255,0) 72%);pointer-events:none}
.gift-hero-meta,.gift-hero-headline,.gift-hero-caption,.gift-hero-divider{position:relative;z-index:1}
.gift-hero-meta{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:18px}
.gift-hero-badge{display:inline-flex;align-items:center;min-height:30px;padding:7px 12px;border-radius:999px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.18);color:#fff6da;font-size:12px;font-weight:800;letter-spacing:-.01em}
.gift-hero-kind{font-size:clamp(18px,4.6vw,22px);font-weight:900;color:#f7fbff;letter-spacing:-.04em;text-align:right}
.gift-hero-headline{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;flex-wrap:wrap}
.gift-hero-headline h1{margin:0;font-size:clamp(24px,8vw,33px);line-height:1.1;color:#fff;letter-spacing:-.06em}
.gift-hero-draw{display:flex;align-items:flex-end}.gift-hero-draw .gift-luxe-draw-date{font-size:clamp(16px,4.2vw,19px);font-weight:800;color:#eef5ff;white-space:nowrap}
.gift-hero-divider{height:1px;margin:16px 0 12px;background:linear-gradient(90deg,rgba(255,255,255,.3),rgba(255,255,255,.08))}
.gift-hero-caption{margin:0;color:#d4e3f8;font-size:13px;line-height:1.6}
.gift-message-card{border-top:4px solid #7fb3ff;background:linear-gradient(180deg,#143457,#102848);box-shadow:0 12px 26px rgba(15,31,58,.16)}
.gift-message-card p{margin:0;color:#fff;line-height:1.75;font-size:clamp(15px,3.9vw,18px);font-weight:750}
.gift-message-card .gift-luxe-sign{margin-top:18px;padding-top:14px;border-top:1px solid rgba(255,255,255,.16);text-align:right;color:#d7e6f8;font-size:12px}
.gift-message-card .gift-luxe-sign strong{color:#fff}
@media(max-width:620px){.gift-luxe{gap:14px}.gift-hero-card{padding:18px 16px 16px;border-radius:20px}.gift-hero-meta{margin-bottom:14px}.gift-hero-kind{width:100%;text-align:left}.gift-hero-headline{align-items:flex-start}.gift-hero-draw .gift-luxe-draw-date{font-size:16px}.gift-hero-divider{margin:14px 0 10px}.gift-message-card{padding:22px 18px}}
