:root{--ink:#404356;--muted:#777987;--paper:#fffaf2;--white:#fff;--peach:#fff1dc;--yellow:#ffe2a0;--coral:#ff8292;--coral-dark:#eb6b7e;--mint:#80d9c0;--blue:#8bc7f3;--lilac:#c7b0ee;--line:#eee8e4;--shadow:0 15px 55px rgba(154,126,104,.11);color-scheme:light;font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:ui-rounded,"Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic",Meiryo,system-ui,sans-serif;line-height:1.5}button,input{font:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent}button:disabled{cursor:not-allowed}button:focus-visible,input:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #2c9196;outline-offset:3px}a{color:inherit}[hidden]{display:none!important}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.page-shell{overflow-x:hidden;min-height:100vh}.topbar{width:min(1140px,calc(100% - 40px));min-height:91px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:18px}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;white-space:nowrap}.brand-mark{position:relative;display:block;width:49px;height:48px;transform:rotate(-12deg)}.brand-mark>span{position:absolute;border-radius:12px;display:grid;place-items:center;font-size:16px;border:2px solid #fff;box-shadow:0 5px 12px #dfb6a65c}.brand-mark>span:first-child{width:38px;height:40px;left:1px;top:3px;background:#ffe09a;color:#d87e78}.brand-mark>span:last-child{width:32px;height:34px;right:0;bottom:-2px;background:#ff9ca5;color:#fff;transform:rotate(17deg)}.brand-name{font-size:25px;font-weight:1000;letter-spacing:-.07em}.brand-name span,.footer strong span{color:var(--coral-dark)}.header-right{display:flex;align-items:center;gap:12px}.demo-label{border-radius:99px;background:#fff0db;padding:7px 11px;color:#b18d6e;font-size:10px;font-weight:900;letter-spacing:.07em}.tools-link{background:white;border:1px solid #ece5e0;border-radius:12px;padding:11px 15px;font-size:12px;font-weight:900;text-decoration:none;color:#777583;box-shadow:0 3px 0 #f1e9e1}.tools-link:hover{background:#fff6e9}.tools-link span{font-size:15px}.hero{text-align:center;padding:32px 20px 34px}.eyebrow{display:inline-flex;align-items:center;gap:11px;color:#ab8175;background:#fff0e0;padding:8px 17px;border-radius:100px;font-size:11px;font-weight:950}.eyebrow span{color:#f2a86f}.hero h1{margin:15px 0 9px;font-weight:1000;font-size:clamp(30px,4vw,48px);line-height:1.5;letter-spacing:-.09em}.highlight{position:relative;white-space:nowrap;isolation:isolate}.highlight:after{content:"";position:absolute;z-index:-1;left:0;right:-.01em;height:.42em;bottom:0;transform:rotate(-1deg);border-radius:12px;background:#ffe39d}.hero p{margin:0;color:#888591;font-size:13px;font-weight:700;line-height:1.9}.mobile-break{display:none}.panel{border-radius:29px;box-shadow:var(--shadow)}.setup-wrap{width:min(1120px,calc(100% - 40px));margin:0 auto;display:grid;grid-template-columns:minmax(0,1.03fr) minmax(0,.97fr);gap:20px;align-items:stretch}.setup-main{background:#fff;border:1px solid #f1eae3;padding:30px 34px 30px}.section-heading{display:flex;align-items:center;gap:13px}.step-mark{display:grid;place-items:center;width:44px;height:44px;background:#ffe5a9;border-radius:13px;color:#846246;font-weight:1000;font-size:17px;transform:rotate(-6deg)}.overline{color:#d29e95;font-size:10px;font-weight:1000;letter-spacing:.15em}.section-heading h2{font-size:25px;margin:3px 0 0;letter-spacing:-.07em}.mode-tabs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:26px 0 27px}.mode-tab{height:65px;border:2px solid #ece8e8;background:#fcfbfb;border-radius:18px;color:#6b6b7b;font-size:15px;font-weight:1000;display:flex;align-items:center;justify-content:center;gap:10px;transition:transform .15s,border-color .15s,background .15s}.mode-tab span:first-child{font-size:23px}.mode-tab.active{border-color:#ffbca7;background:#fff2e8;color:#9a5f58;box-shadow:inset 0 -3px 0 #ffe0c9}.mode-tab:hover{transform:translateY(-2px)}.setup-inner{border-top:1px dashed #e8e0da;padding-top:22px}.section-subhead{display:flex;align-items:start;gap:11px;margin-bottom:20px}.step-dot{display:grid;place-items:center;width:31px;height:31px;background:#c1eee4;border-radius:50%;font-size:12px;color:#3e8e7c;font-weight:1000}.section-subhead h3{margin:0;font-size:19px;font-weight:1000;letter-spacing:-.04em}.section-subhead p{margin:4px 0 0;font-size:11px;color:#99939a;font-weight:700}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:block;font-size:13px;font-weight:1000;color:#5b5c6c}.field-note{display:block;color:#a8a4aa;font-size:10px;font-weight:700;margin-top:3px}.input-unit{position:relative;display:block;margin-top:10px}.input-unit input{display:block;width:100%;height:61px;min-width:0;padding:8px 37px 8px 18px;font-size:25px;font-weight:1000;color:#46465a;border:1.5px solid #eae2da;border-radius:13px;background:#fffaf5}.input-unit>span{position:absolute;right:16px;top:20px;font-size:12px;font-weight:800;color:#a59a97}.input-unit input:focus,.prize-row input:focus{border-color:#e9a58e}.calculation-row{margin-top:17px;border-radius:13px;background:#f4f9f7;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px;font-weight:800;color:#718079}.calculation-row strong{color:#438c7a;font-size:18px}.total-field{max-width:230px}.prize-heading{margin:19px 0 10px;font-size:12px;color:#8c8991;font-weight:900}.prize-rows{display:grid;gap:8px}.prize-row{display:grid;grid-template-columns:46px minmax(0,1fr) 63px 13px;align-items:center;gap:7px}.prize-tag{padding:10px 3px;border-radius:11px;text-align:center;font-size:11px;font-weight:1000}.p1{background:#ffe4a5;color:#95661e}.p2{background:#dbeafe;color:#5b83a7}.p3{background:#f9d5de;color:#bb6987}.prize-row input{min-width:0;height:43px;border:1.5px solid #ece7e2;border-radius:10px;padding:7px 9px;background:#fff;font-size:13px;color:#46465a;font-weight:850}.prize-row .prize-count{text-align:center;padding:7px 3px;font-size:17px;font-weight:1000}.prize-row .unit{color:#9b989e;font-size:11px}.validation{padding:12px 13px;background:#fff0ef;color:#be4e58;border-radius:10px;margin:14px 0 -1px;font-size:12px;font-weight:850}.action-button{border:none;display:flex;align-items:center;justify-content:center;gap:10px;color:#fff;background:#ff8292;box-shadow:0 6px 0 #dd667b,0 14px 21px #efb1aa66;border-radius:18px;font-size:17px;font-weight:1000;transition:transform .14s,filter .14s;touch-action:manipulation}.action-button:hover:not(:disabled){filter:brightness(1.03);transform:translateY(-2px)}.action-button:active:not(:disabled){transform:translateY(4px);box-shadow:0 2px 0 #dd667b}.action-button:disabled{background:#cfcbd0;box-shadow:none}.start-button{margin-top:19px;width:100%;min-height:63px}.helper-note{text-align:center;font-size:10px;color:#aaa3a4;font-weight:700;margin:15px 0 0;line-height:1.6}.setup-aside{overflow:hidden;background:#fff0d6;border:1px solid #f9e2b6;border-radius:29px;display:flex;flex-direction:column}.showcase-art{min-height:315px;position:relative;display:grid;place-items:center;background:radial-gradient(circle at 50% 40%,#fff9e9 0,#fff0d9 54%,#ffead0 100%)}.ticket-back,.sample-ticket{position:absolute;width:175px;height:225px;border-radius:20px;box-shadow:0 15px 25px #a5818040}.ticket-back-a{background:#8cd9c2;transform:rotate(-22deg) translate(-48px,-9px)}.ticket-back-b{background:#c6bcfa;transform:rotate(18deg) translate(51px,-4px)}.sample-ticket{z-index:1;background:#fff;border:11px solid #fff;outline:4px dashed #ffb1a1;display:flex;align-items:center;justify-content:center;flex-direction:column;transform:rotate(-5deg);color:#ff8995}.sample-ticket::before{content:"";position:absolute;inset:0;border-radius:9px;background:#fff7ed;z-index:-1}.sample-ticket small{font-weight:1000;letter-spacing:.14em;font-size:12px;color:#d5aaa2}.sample-ticket b{font-size:130px;line-height:1.12;text-shadow:4px 3px 0 #ffdfcf}.mini-scissors{position:absolute;top:-28px;left:-23px;color:#dc947c;font-size:25px}.small-stars{font-size:17px;letter-spacing:8px;color:#edbe78}.showcase-sparkle{position:absolute;color:#fca48f}.s1{font-size:47px;left:13%;top:12%}.s2{font-size:32px;right:15%;top:22%;color:#93d7bf}.s3{font-size:40px;left:15%;bottom:10%;color:#c1b2f1}.aside-copy{padding:0 35px 35px;text-align:center}.aside-kicker{font-size:10px;color:#ca9f8f;font-weight:1000;letter-spacing:.13em}.aside-copy h2{font-size:23px;line-height:1.5;letter-spacing:-.06em;margin:9px 0}.aside-copy p{font-size:12px;color:#988f8c;line-height:1.9;font-weight:700}.aside-pills{display:flex;justify-content:center;gap:7px;flex-wrap:wrap;margin-top:17px}.aside-pills span{background:#fff9ef;border:1px solid #f6e3c4;border-radius:100px;padding:7px 10px;color:#90816f;font-size:10px;font-weight:900}.stage-section{width:min(1160px,calc(100% - 40px));margin:auto}.stage-topbar{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:15px;padding:0 7px}.stage-topbar h2{font-size:25px;line-height:1.3;letter-spacing:-.05em;margin:4px 0}.stage-toolbar{display:flex;gap:8px;flex-wrap:wrap}.mini-button{background:#fff;border:1px solid #e8e1e1;border-radius:12px;color:#6d6b78;min-height:43px;padding:8px 12px;font-size:12px;font-weight:1000;box-shadow:0 3px 0 #f1eae5}.mini-button:hover{background:#fff9f4}.stage-layout{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);align-items:stretch;gap:18px}.draw-panel{padding:23px 28px 24px;min-height:565px;display:flex;flex-direction:column;position:relative;overflow:hidden;background:radial-gradient(circle at 50% 30%,#fff9ed 0,#fff2db 62%,#ffedd1 100%);border:1px solid #f5e3c6}.draw-panel::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.45;background-image:radial-gradient(#f8cda0 1px,transparent 1px);background-size:17px 17px;mask-image:linear-gradient(to bottom,transparent 10%,#000 60%,transparent 100%)}.draw-topline,.ticket-area,.result-message,.draw-actions,.progress-label,.progress-track{position:relative;z-index:1}.draw-topline{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:950;color:#8e8280}.live-dot{width:11px;height:11px;border:3px solid #fff;border-radius:50%;background:#ff9ba7;box-shadow:0 0 0 3px #ffb9c1;flex:0 0 auto}.draw-counter{margin-left:auto;color:#ad8580;background:#fff9ee;padding:6px 10px;border-radius:100px}.ticket-area{flex:1;min-height:285px;display:grid;place-items:center}.big-ticket{position:relative;width:218px;min-height:266px;padding:23px 18px 25px;border-radius:17px;border:8px solid #fff;outline:4px dashed #ffb2a2;background:#fffdf8;box-shadow:0 15px 0 #eacdb1,0 24px 40px #a86f6330;transform:rotate(-6deg);display:flex;flex-direction:column;align-items:center;justify-content:center;transition:transform .3s,background .3s}.big-ticket:before{content:"";position:absolute;inset:0;border-radius:9px;background:linear-gradient(155deg,#fff8eb,#fffefa);z-index:-1}.ticket-kicker{font-weight:1000;color:#bc968f;font-size:12px;letter-spacing:.15em}.big-ticket strong{font-size:116px;letter-spacing:-.09em;line-height:1.18;color:#ff8e97;font-weight:1000;text-align:center;overflow-wrap:anywhere;max-width:100%}.big-ticket.is-result strong{font-size:clamp(42px,5.2vw,80px);line-height:1.2;letter-spacing:-.05em}.big-ticket.is-result.is-loser strong{font-size:clamp(40px,5vw,65px)}.big-ticket.is-result.is-winner{background:#fff8e5;outline-color:#ffcf66}.big-ticket.is-result.is-winner strong{color:#ee9b36}.big-ticket.is-result.is-loser{outline-color:#afd6dc}.big-ticket.is-result.is-loser strong{color:#698ea1}.ticket-subtitle{margin-top:7px;color:#b59c92;font-size:12px;font-weight:900;text-align:center;overflow-wrap:anywhere;max-width:100%;line-height:1.55}.ticket-notch{position:absolute;width:24px;height:24px;border-radius:50%;background:#fff0db;top:50%;transform:translateY(-50%)}.ticket-notch-left{left:-20px}.ticket-notch-right{right:-20px}.ticket-decoration{position:absolute;color:#f5a0a8;pointer-events:none}.decoration-a{top:15%;left:9%;font-size:35px}.decoration-b{bottom:17%;right:12%;font-size:29px;color:#80cdb8}.ticket-area.is-drawing .big-ticket{animation:ticketShake .12s ease-in-out infinite alternate}.ticket-area.is-revealing .big-ticket{animation:ticketReveal .65s ease-out both}.ticket-area.is-celebrating:after{content:"✨   ★   ✨   ★   ✨";position:absolute;font-size:26px;top:18%;color:#eeac45;animation:confettiFall .95s ease-out both;white-space:nowrap}.result-message{text-align:center;margin:0 0 15px;min-height:27px;font-size:13px;font-weight:900;color:#9e8980}.result-message.win{font-size:17px;color:#e4903e}.draw-actions{display:flex;flex-direction:column;align-items:center;gap:15px}.draw-button{min-width:min(100%,318px);min-height:66px;font-size:23px;padding:9px 22px}.sub-actions{display:flex;align-items:center;justify-content:center;gap:13px}.subtle-button{background:none;border:0;color:#9d8882;font-size:12px;font-weight:1000;padding:7px 5px}.subtle-button:hover:not(:disabled){color:#df7281}.subtle-button:disabled{opacity:.45}.action-sep{height:14px;width:1px;background:#e9cab7}.progress-label{margin-top:14px;text-align:center;font-size:12px;color:#998881;font-weight:900}.progress-label strong{font-size:16px;color:#636170}.progress-track{width:100%;height:10px;border-radius:99px;background:#ffdfbd;margin-top:8px;overflow:hidden}.progress-bar{height:100%;border-radius:99px;background:linear-gradient(90deg,#80d9c0,#8bc7f3);transition:width .3s}.history-panel{padding:26px 25px 24px;min-height:565px;background:#fff;border:1px solid #f1eae5;display:flex;flex-direction:column}.history-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.history-heading h3{font-size:21px;letter-spacing:-.06em;margin:5px 0 0}.history-count{border-radius:99px;background:#fff0ef;color:#d8888a;padding:7px 10px;font-size:11px;font-weight:1000}.history-intro{font-size:11px;font-weight:700;color:#a39fa5;margin:8px 0 16px}.history-list{display:flex;align-content:start;align-items:stretch;flex:1;flex-direction:column;gap:8px;min-height:150px}.history-empty{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:9px;font-size:11px;color:#aba4a7;text-align:center}.history-empty>span:first-child{font-size:40px}.history-empty strong{color:#83808d;font-size:14px}.result-item{display:flex;align-items:center;gap:10px;border:1px solid #f2e9e4;padding:10px 12px;border-radius:15px;background:#fffdfb;min-width:0}.result-item.is-latest{border-color:#ffc7aa;background:#fff9f0}.result-number{display:grid;place-items:center;min-width:31px;height:31px;border-radius:100px;background:#f4f0ef;color:#99909a;font-size:11px;font-weight:950}.result-chip{display:grid;place-items:center;width:34px;height:34px;flex:0 0 auto;border-radius:12px;font-size:16px;background:#e2f5f1}.result-item.is-win .result-chip{background:#fff0c3}.result-item.is-loser .result-chip{background:#e7f4fd}.result-text{display:flex;flex-direction:column;gap:2px;min-width:0}.result-text strong{font-size:13px;overflow-wrap:anywhere}.result-text small{font-size:11px;color:#99939c;overflow-wrap:anywhere}.history-toggle{border:0;background:#f6f7f8;border-radius:9px;font-size:12px;padding:9px;color:#787685;font-weight:900;margin-top:9px}.breakdown{margin-top:17px;border-top:1px dashed #e7e1dd;padding-top:15px}.breakdown summary{cursor:pointer;font-size:11px;font-weight:950;color:#82828f}.breakdown-body{padding:10px 3px}.breakdown-row{display:flex;justify-content:space-between;font-size:12px;padding:5px 0;color:#6f7282}.breakdown-row strong{color:#404356}.breakdown p{margin:3px 0 0;font-size:10px;color:#aaa2a4;line-height:1.6}.stage-note{margin-top:17px;display:flex;align-items:center;gap:8px;font-size:10px;font-weight:800;color:#aaa1a5}.stage-footer{display:flex;align-items:center;justify-content:center;gap:15px;padding:19px 0 9px;flex-wrap:wrap}.stage-footer span{font-size:10px;color:#aaa2a6;font-weight:800}.outline-button{background:#fff;border:1px solid #e9dfdc;border-radius:11px;padding:12px 16px;color:#6b6d7b;font-weight:950;font-size:12px}.outline-button:hover{border-color:#ffb4b4}.howto{width:min(1120px,calc(100% - 40px));margin:64px auto 65px;text-align:center}.howto h2{font-size:23px;letter-spacing:-.06em}.howto h2 span{box-shadow:inset 0 -.38em #ffead0}.howto-steps{margin-top:25px;display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.howto-steps>div{border:1px solid #eee5dc;border-radius:21px;background:white;padding:20px}.howto-icon{display:grid;place-items:center;width:44px;height:44px;background:#fff1d7;border-radius:13px;color:#b8845a;font-size:19px;font-weight:1000;margin:0 auto 12px}.howto-steps>div:nth-child(2) .howto-icon{background:#def6f0;color:#4b9986}.howto-steps>div:nth-child(3) .howto-icon{background:#ffe4e8;color:#d07885}.howto-steps strong{display:block;font-size:14px}.howto-steps p{margin:6px 0 0;font-size:11px;color:#97939f;font-weight:700}.footer{width:min(1140px,calc(100% - 40px));margin:auto;border-top:1px solid #f0e4d6;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:25px 0 33px;color:#aaa1a0;font-size:11px}.footer strong{font-size:17px;color:#777583}.footer small{font-size:9px;margin-left:5px}.stage-layout:fullscreen{display:grid;align-items:stretch;min-height:100dvh;width:100vw;max-width:none;padding:clamp(14px,2vw,35px);background:#fffaf2;gap:clamp(10px,1.5vw,25px)}.stage-layout:fullscreen .draw-panel,.stage-layout:fullscreen .history-panel{min-height:calc(100dvh - 70px)}.stage-layout:fullscreen .ticket-area{min-height:0}.stage-layout:fullscreen .big-ticket{width:min(24vw,340px);min-height:min(30vw,410px)}.stage-layout:fullscreen .big-ticket strong{font-size:clamp(120px,11vw,175px)}.stage-layout:fullscreen .big-ticket.is-result strong{font-size:clamp(52px,7vw,105px)}.stage-layout:fullscreen .result-message{font-size:clamp(16px,2vw,26px)}.stage-layout.is-expanded{position:fixed;inset:0;z-index:9000;width:100vw;height:100dvh;padding:clamp(9px,2vw,30px);background:var(--paper);overflow-y:auto}.stage-layout.is-expanded .draw-panel,.stage-layout.is-expanded .history-panel{min-height:calc(100dvh - 50px)}body.has-expanded{overflow:hidden}@keyframes ticketShake{from{transform:rotate(-9deg) translate(-7px,2px)}to{transform:rotate(5deg) translate(6px,-4px)}}@keyframes ticketReveal{0%{transform:rotate(-10deg) scale(.88);opacity:.6}55%{transform:rotate(4deg) scale(1.08)}100%{transform:rotate(-5deg) scale(1);opacity:1}}@keyframes confettiFall{0%{opacity:0;transform:translateY(-30px) scale(.7)}30%{opacity:1}100%{opacity:0;transform:translateY(120px) scale(1.4)}}@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media(max-width:850px){.setup-wrap,.stage-layout{grid-template-columns:1fr}.setup-aside{display:grid;grid-template-columns:1fr 1fr;align-items:center;min-height:260px}.showcase-art{min-height:260px}.aside-copy{padding:20px 22px;text-align:left}.aside-pills{justify-content:flex-start}.history-panel,.draw-panel{min-height:auto}.history-list{min-height:120px}.stage-layout:fullscreen{grid-template-columns:1fr;overflow-y:auto}.stage-layout:fullscreen .draw-panel,.stage-layout:fullscreen .history-panel,.stage-layout.is-expanded .draw-panel,.stage-layout.is-expanded .history-panel{min-height:auto}.stage-layout:fullscreen .big-ticket{width:210px;min-height:250px}.stage-layout:fullscreen .big-ticket strong{font-size:110px}}
@media(max-width:620px){.topbar{width:calc(100% - 28px);min-height:76px}.brand-mark{transform:scale(.84) rotate(-12deg);margin-left:-4px}.brand-name{font-size:20px}.demo-label{display:none}.tools-link{font-size:10px;padding:10px 11px}.hero{padding:20px 15px 25px}.eyebrow{font-size:10px;padding:7px 11px;gap:6px}.hero h1{font-size:clamp(26px,7vw,36px);margin:12px 0 8px}.hero p{font-size:12px}.mobile-break{display:block}.setup-wrap,.stage-section,.howto{width:calc(100% - 24px)}.setup-main{padding:24px 18px}.section-heading h2{font-size:23px}.mode-tabs{gap:9px;margin:24px 0}.mode-tab{font-size:12px;height:61px;gap:5px}.mode-tab span:first-child{font-size:20px}.field-grid{gap:10px}.input-unit input{height:59px;font-size:24px}.start-button{min-height:62px;font-size:14px;gap:5px}.setup-aside{display:none}.stage-topbar{align-items:start;padding:4px 2px 10px}.stage-topbar h2{font-size:19px}.stage-toolbar{gap:5px}.mini-button{min-height:40px;padding:8px 9px;font-size:10px}.draw-panel{padding:19px 17px 22px;border-radius:24px}.draw-topline{font-size:11px}.ticket-area{min-height:278px}.big-ticket{width:187px;min-height:235px}.big-ticket strong{font-size:95px}.big-ticket.is-result strong{font-size:43px}.result-message{font-size:12px}.draw-button{width:min(100%,315px);font-size:20px;min-height:65px}.history-panel{padding:24px 19px;border-radius:24px}.howto{margin:50px auto}.howto h2{font-size:20px}.howto-steps{gap:9px}.howto-steps>div{padding:15px 7px}.howto-steps strong{font-size:11px}.howto-steps p{font-size:10px}.footer{width:calc(100% - 30px);align-items:start;flex-direction:column}.prize-row{grid-template-columns:40px minmax(0,1fr) 52px 12px;gap:5px}.prize-row input{font-size:11px;padding:7px 6px}.prize-row .prize-count{font-size:15px}.stage-layout:fullscreen,.stage-layout.is-expanded{padding:9px;grid-template-columns:1fr}.stage-layout:fullscreen .ticket-area,.stage-layout.is-expanded .ticket-area{min-height:230px}.stage-layout:fullscreen .big-ticket,.stage-layout.is-expanded .big-ticket{width:170px;min-height:212px}.stage-layout:fullscreen .big-ticket strong,.stage-layout.is-expanded .big-ticket strong{font-size:86px}.stage-layout:fullscreen .big-ticket.is-result strong,.stage-layout.is-expanded .big-ticket.is-result strong{font-size:42px}}

.fullscreen-controls{display:none}.stage-layout:fullscreen .fullscreen-controls,.stage-layout.is-expanded .fullscreen-controls{display:flex;align-items:center;justify-content:flex-end;gap:8px;grid-column:1/-1;position:absolute;z-index:21;top:8px;right:14px}.stage-layout:fullscreen,.stage-layout.is-expanded{position:relative;grid-template-rows:1fr}.stage-layout.is-expanded{position:fixed}.stage-layout:fullscreen .draw-panel,.stage-layout.is-expanded .draw-panel{padding-top:60px}.stage-layout:fullscreen .history-panel,.stage-layout.is-expanded .history-panel{padding-top:60px}.stage-layout:fullscreen{height:100dvh}.stage-layout:fullscreen .fullscreen-controls button,.stage-layout.is-expanded .fullscreen-controls button{background:#fff;box-shadow:0 4px 14px #6c5b5633}@media(max-width:850px){.stage-layout:fullscreen,.stage-layout.is-expanded{display:block;overflow:auto;height:100dvh}.stage-layout:fullscreen .draw-panel,.stage-layout.is-expanded .draw-panel{margin-bottom:14px;padding-top:59px}.stage-layout:fullscreen .history-panel,.stage-layout.is-expanded .history-panel{padding-top:22px}}

/* 大画面で履歴が増えても、右パネルの外へはみ出さない */
@media (min-width:851px){.stage-layout:fullscreen .history-panel,.stage-layout.is-expanded .history-panel{min-height:0;max-height:calc(100dvh - 2 * clamp(14px,2vw,35px));overflow:hidden}.stage-layout:fullscreen .draw-panel,.stage-layout.is-expanded .draw-panel{min-height:0;max-height:calc(100dvh - 2 * clamp(14px,2vw,35px))}.stage-layout:fullscreen .history-list,.stage-layout.is-expanded .history-list{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-right:4px}.stage-layout:fullscreen .ticket-area,.stage-layout.is-expanded .ticket-area{min-height:0}}
@media(max-width:620px){.stage-layout:fullscreen .big-ticket.is-result strong,.stage-layout.is-expanded .big-ticket.is-result strong{font-size:34px;white-space:nowrap;overflow-wrap:normal}}

/* Phase 2: 安全な設定変更とローカルCSVエクスポート */
.resume-banner{margin-top:20px;padding:13px 15px;background:#effaf5;border:1px solid #c4eadb;border-radius:15px;display:flex;align-items:center;justify-content:space-between;gap:14px}
.resume-banner strong{font-size:13px;color:#327b68}.resume-banner p{font-size:11px;color:#6f9388;margin:3px 0 0;line-height:1.5}
.resume-button{flex-shrink:0;border:1px solid #91d5bf;color:#367c69;font-size:12px;font-weight:1000;background:#fff;border-radius:11px;padding:12px 14px;min-height:42px}
.resume-button:hover{background:#dbf5ea}
.history-tools{display:flex;gap:8px;flex-wrap:wrap;margin-top:9px}
.history-tools .history-toggle{margin-top:0}
.csv-button{border:1px solid #bde3d4;background:#e8f8f1;border-radius:9px;padding:9px 12px;font-size:12px;color:#3c816b;font-weight:900;min-height:36px}
.csv-button:hover{background:#d9f3e8}
.stage-note.save-warning{color:#b05a4b;background:#fff1ed;padding:11px;border-radius:10px}
@media(max-width:620px){.resume-banner{flex-direction:column;align-items:stretch}.resume-button{width:100%}.history-tools{flex-direction:column}.history-tools>button{width:100%}}

/* Phase 3: Language & social sharing; lottery UI remains unchanged */
.language-link{display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;min-height:40px;border-radius:12px;text-decoration:none;font-weight:900;font-size:12px;color:#df637b;background:#fff;border:1px solid #f0e3df;box-shadow:0 3px 0 #f1e9e1}
.language-link:hover{background:#fff1e8}
.share-section{width:min(1120px,calc(100% - 40px));margin:-24px auto 65px;padding:26px 24px 27px;background:#fff;border:1px solid #f3e8e2;border-radius:22px;text-align:center;box-shadow:0 12px 32px rgba(154,126,104,.07)}
.share-section h2{font-size:22px;letter-spacing:-.035em;margin:0;color:#404356}.share-section>p{font-size:12px;color:#8c8991;margin:7px 0 18px}.share-buttons{display:flex;justify-content:center;flex-wrap:wrap;gap:10px}.share-btn{min-width:104px;min-height:44px;border-radius:12px;border:1px solid #eae1df;font-weight:900;font-size:12px;background:white;color:#454556;transition:transform .15s,background .15s}.share-btn:hover{transform:translateY(-1px);background:#fff5eb}.share-x{background:#262735;color:#fff;border-color:#262735}.share-x:hover{background:#36374b}.share-facebook{background:#e6f0fe;color:#2767af;border-color:#d3e4fc}.share-line{background:#e5fbe9;color:#228e51;border-color:#caeed2}.share-copy{background:#fff0d4;color:#9e713b;border-color:#ffe2a0}.share-status{margin-bottom:0!important;min-height:1em;overflow-wrap:anywhere}
@media(max-width:620px){.share-section{width:calc(100% - 24px);margin:-15px auto 45px;padding:22px 15px}.share-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.share-btn{min-width:0}.header-right{gap:6px}.language-link{padding:8px 12px;font-size:11px}.topbar{gap:8px}.brand{gap:7px}}
