:root{--bg:#fff;--surface:#fff;--surface-subtle:#f7f8fa;--text:#1f2937;--muted:#6b7280;--border:#e5e7eb;--accent:#15803d;--accent-text:#fff;--warn-bg:#fff7ed;--warn-text:#9a3412;--radius:14px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}[hidden]{display:none!important}body{background:var(--bg);color:var(--text);-webkit-text-size-adjust:100%;margin:0;font-family:Hiragino Sans,Noto Sans JP,Yu Gothic UI,Meiryo,system-ui,sans-serif;line-height:1.6}.site-header{text-align:center;padding:28px 16px 8px}.top-nav{border-bottom:1px solid var(--border);padding:10px 16px}.top-nav-link{color:var(--text);align-items:center;gap:8px;font-size:.85rem;font-weight:600;text-decoration:none;display:inline-flex}.top-nav-link:hover,.top-nav-link:focus-visible{color:var(--accent)}.top-nav-link svg{border-radius:4px;flex:none;width:18px;height:18px}.site-header h1{margin:0;font-size:1.6rem}.tagline{color:var(--muted);margin:4px 0 0;font-size:.9rem}.layout{flex-direction:column;gap:14px;max-width:760px;margin:0 auto;padding:16px;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px;box-shadow:0 1px 2px #1018280a}.card h2{margin:0 0 10px;font-size:1rem}.field{margin-top:14px;display:block}.field:first-of-type{margin-top:0}.label{color:var(--muted);justify-content:space-between;margin-bottom:4px;font-size:.85rem;display:flex}input[type=text],input[type=number],input[type=url],select,textarea{width:100%;font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:10px;padding:10px 12px;font-size:16px}textarea{resize:vertical;line-height:1.6}input:focus-visible,select:focus-visible,textarea:focus-visible,.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.note{color:var(--muted);margin:8px 0 12px;font-size:.82rem}.note.warning{color:var(--warn-text);background:var(--warn-bg);border-radius:8px;margin:8px 0 0;padding:8px 10px}.btn{min-height:44px;font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:0 16px;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover:not(:disabled){border-color:var(--accent)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.ghost{background:0 0}.btn.small{min-height:36px;padding:0 12px;font-size:.85rem}.result-table{border-collapse:collapse;width:100%;margin-bottom:14px;font-size:.9rem}.result-table th,.result-table td{text-align:left;border-bottom:1px solid var(--border);padding:8px 6px}.result-table th{color:var(--muted);font-size:.8rem;font-weight:600}.result-summary{gap:6px;margin:0 0 16px;display:grid}.result-summary div{justify-content:space-between;gap:8px;font-size:.9rem;display:flex}.result-summary dt{color:var(--muted);margin:0}.result-summary dd{margin:0;font-weight:600}input[type=date],input[type=time]{width:100%;font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:10px;padding:9px 12px;font-size:16px}.related-links{padding-left:1.3em;line-height:1.9}.related-links a{color:var(--accent)}.area-about p{color:var(--muted);line-height:1.7}.area-about h3{margin-top:20px}.how-to{color:var(--muted);padding-left:1.3em;line-height:1.8}.area-about details{border-top:1px solid var(--border);padding:10px 0}.area-about summary{cursor:pointer;font-weight:600}.area-about details p{margin:8px 0 0}.support{text-align:center}.support p{color:var(--muted);margin:0 0 12px;font-size:.9rem}.support-buttons{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.btn.coffee{color:#1f2937;background:#fd0;border-color:#fd0}.btn.amazon{color:#1f2937;background:#f90;border-color:#f90}.site-footer{text-align:center;color:var(--muted);padding:16px 16px 32px}.two-col{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;display:grid}.two-col .field{margin-top:0}.two-col+.two-col,.card>.field{margin-top:12px}.card>.field:first-of-type{margin-top:0}.check-option{cursor:pointer;align-items:flex-start;gap:8px;margin-top:12px;font-size:.88rem;display:flex}.check-option input{width:18px;height:18px;accent-color:var(--accent);flex:none;margin-top:2px}.result-summary{margin-top:16px}.result-summary dd.big{color:var(--accent);font-size:1.3rem}.preset-row{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.btn-row{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.result-summary div.sub{padding-left:1em;font-size:.85rem}.result-summary div.sub dd{font-weight:400}.option-field{border:0;min-width:0;margin:0;padding:0}.option-field legend{color:var(--muted);margin-bottom:6px;padding:0;font-size:.85rem}.table-wrap{overflow-x:auto}.result-table{margin-bottom:0}.note a,.area-about details a{color:var(--accent)}.tab-row{gap:6px;display:flex;overflow-x:auto}.tab-btn{white-space:nowrap;min-height:44px;font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;flex:1;padding:0 10px;font-size:.9rem;font-weight:600}.tab-btn:hover{color:var(--text)}.tab-btn.active{background:var(--accent);color:var(--accent-text)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.btn.primary:hover:not(:disabled){filter:brightness(1.08)}.tab-panel h2{margin-bottom:12px}.draw-stage{flex-direction:column;align-items:center;padding:10px 0 4px;display:flex}.ball{aspect-ratio:1;font-variant-numeric:tabular-nums;background:radial-gradient(circle at 35% 30%,#fff 0 18%,#dcfce7 45%,#86efac 100%);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:min(56vw,220px);display:flex;box-shadow:inset -10px -14px 24px #15803d40,0 10px 24px #10182826}.ball-letter{color:var(--accent);min-height:1.3em;font-size:clamp(1.2rem,6vw,2rem);font-weight:700;line-height:1.3}.ball-number{color:#14532d;font-size:clamp(3.4rem,20vw,6.5rem);font-weight:800;line-height:1}.ball.is-spinning .ball-number{opacity:.6}.ball.pop{animation:.35s ease-out pop}@keyframes pop{0%{transform:scale(.85)}60%{transform:scale(1.08)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.ball.pop{animation:none}}.draw-count{color:var(--muted);font-variant-numeric:tabular-nums;margin:10px 0 0;font-size:.9rem}.control-row{grid-template-columns:2fr 1fr;gap:8px;margin-top:12px;display:grid}.btn.big{min-height:56px;font-size:1.1rem}.board{gap:3px;margin-top:16px;display:grid}.board-row{grid-template-columns:repeat(10,minmax(0,1fr));gap:3px;display:grid}.board[data-max="75"] .board-row{grid-template-columns:1.2fr repeat(15,minmax(0,1fr))}.board-letter{color:var(--accent);justify-content:center;align-items:center;font-size:.8rem;font-weight:800;display:flex}.board-cell{aspect-ratio:1;background:var(--surface-subtle);color:#9ca3af;font-variant-numeric:tabular-nums;border-radius:4px;justify-content:center;align-items:center;font-size:clamp(.55rem,2.3vw,.85rem);font-weight:600;display:flex}.board-cell.is-drawn{background:var(--accent);color:#fff}.board-cell.is-last{color:#1f2937;background:#f59e0b}.history-wrap{margin-top:12px}.history{overflow-wrap:anywhere;margin:2px 0 0;font-size:.85rem;line-height:1.8}.draw-settings{border-top:1px solid var(--border);margin-top:14px;padding-top:10px}.draw-settings summary{cursor:pointer;font-size:.9rem;font-weight:600}.draw-settings .field{margin-top:10px}#panel-draw:fullscreen{border:0;border-radius:0;flex-direction:column;justify-content:center;padding:3vw 5vw;display:flex;overflow:auto}#panel-draw:fullscreen .ball{width:min(38vh,40vw)}#panel-draw:fullscreen .ball-number{font-size:min(18vh,20vw)}:is(#panel-draw:fullscreen .draw-settings,#panel-draw:fullscreen .history-wrap){display:none}#panel-draw:fullscreen .board-cell{font-size:clamp(.7rem,1.6vw,1.3rem)}.two-col+.field{margin-top:12px}.cards-preview{gap:14px;margin-top:8px;display:grid}.print-page{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.cards-preview[data-per-page="1"] .print-page{grid-template-columns:minmax(0,1fr)}.bingo-card{border:2px solid var(--accent);break-inside:avoid;background:#fff;border-radius:10px;padding:8px}.card-head{justify-content:space-between;align-items:baseline;gap:6px;margin-bottom:6px;display:flex}.card-title{color:var(--accent);overflow-wrap:anywhere;font-weight:800}.card-no{color:var(--muted);flex:none;font-size:.7rem}.bingo-card table{border-collapse:collapse;table-layout:fixed;width:100%}.bingo-card th{background:var(--accent);color:#fff;-webkit-print-color-adjust:exact;print-color-adjust:exact;padding:4px 0;font-weight:800}.bingo-card td{text-align:center;font-variant-numeric:tabular-nums;border:1.5px solid #374151;height:2.6em;font-size:1.1rem;font-weight:700}.bingo-card td.free{color:var(--accent);-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#dcfce7;font-size:.7rem}@media (width<=420px){.print-page{grid-template-columns:minmax(0,1fr)}}@page{size:A4;margin:10mm}@media print{body.printing-cards .top-nav,body.printing-cards .site-header,body.printing-cards .site-footer,body.printing-cards .layout>:not(#panel-card),body.printing-cards #panel-card>:not(.cards-preview){display:none!important}body.printing-cards .layout{max-width:none;padding:0}body.printing-cards #panel-card{box-shadow:none;border:0;padding:0}body.printing-cards .cards-preview{margin:0;display:block}body.printing-cards .print-page{break-after:page;align-content:space-around;align-items:start;gap:8mm;height:276mm;display:grid}body.printing-cards .print-page:last-child{break-after:auto}body.printing-cards .cards-preview[data-per-page="4"] .print-page{grid-template-columns:1fr 1fr}body.printing-cards .cards-preview[data-per-page="2"] .print-page{grid-template-columns:1fr;justify-items:center}body.printing-cards .cards-preview[data-per-page="2"] .bingo-card{width:120mm}body.printing-cards .cards-preview[data-per-page="1"] .print-page{grid-template-columns:1fr;align-content:center;justify-items:center}body.printing-cards .cards-preview[data-per-page="1"] .bingo-card{width:170mm}body.printing-cards .cards-preview[data-per-page="1"] td{height:30mm;font-size:2.2rem}body.printing-cards .cards-preview[data-per-page="2"] td{height:20mm;font-size:1.6rem}body.printing-cards .cards-preview[data-per-page="4"] td{height:16mm;font-size:1.2rem}}
