:root{--coral:#ec5568;--navy:#17364b;--aqua:#dff8f5;--paper:#fffdfa;--muted:#71818a;--line:#eadfd6}.cloud-girl{object-fit:contain;filter:drop-shadow(0 5px 6px #80422d2b);width:58px;height:68px}.welcome-card{display:block}.welcome-intro{grid-template-columns:auto 1fr 58px;align-items:center;gap:10px;margin-bottom:9px;display:grid}.thumbnail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:14px;display:grid}.thumbnail-card{text-align:left;background:#fff;border:1px solid #fff;border-radius:18px;padding:0 0 12px;overflow:hidden;box-shadow:0 8px 24px #68412d14}.event-thumbnail img{aspect-ratio:4/3;object-fit:cover;width:100%}.thumbnail-card img{object-fit:contain;background:#fff8ef;width:100%;height:auto;display:block}.thumbnail-card h3,.thumbnail-card b,.thumbnail-card span{margin:7px 12px 0;display:block}.thumbnail-card h3{color:#d71920;font-size:15px;font-weight:950;line-height:1.25}.thumbnail-card span{color:var(--muted);font-size:12px}.thumbnail-card .oripa-price-row,.oripa-price-row{justify-content:space-between;align-items:center;gap:8px;margin:9px 12px 0;display:flex}.thumbnail-card .oripa-price-row b,.thumbnail-card .oripa-price-row span,.oripa-price-row b,.oripa-price-row span{color:#d94f58;font-variant-numeric:tabular-nums;white-space:nowrap;margin:0;font-size:13px;font-weight:900;display:block}.detail-oripa-price{background:#fff5f6;border:1px solid #f1c1c6;border-radius:12px;margin:12px 0;padding:11px 12px}.detail-oripa-price b,.detail-oripa-price span{font-size:14px}.thumb-placeholder,.event-thumbnail>div{aspect-ratio:4/3;background:linear-gradient(135deg,#ffe8bd,#ff9e86);place-items:center;font-size:52px;display:grid}.event-thumbnail{background:#eee;border:0;width:calc(100% + 34px);margin:-17px -17px 13px;padding:0;display:block}.detail-thumbnail{object-fit:contain;background:#fff8ef;width:100%;height:min(34vh,245px);display:block}.event-thumbnail-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.event-list-card{border:1px solid var(--line);background:#fff;border-radius:17px;overflow:hidden;box-shadow:0 7px 20px #68412d14}.event-list-image{background:#f5f3ef;border:0;width:100%;padding:0;display:block}.event-list-image img,.event-list-image span{aspect-ratio:4/3;object-fit:contain;place-items:center;width:100%;display:grid}.event-list-image span{color:var(--navy);background:linear-gradient(135deg,#ffe8bd,#ff9e86);padding:12px;font-weight:900}.event-list-body{gap:7px;padding:11px;display:grid}.event-list-body h3{margin:0;font-size:15px}.event-list-body time{color:var(--muted);font-size:11px;font-weight:800}.event-list-body>div{color:var(--muted);justify-content:space-between;align-items:center;gap:5px;font-size:9px;font-weight:900;display:flex}.event-list-state{background:var(--aqua);color:#087686;border-radius:99px;padding:4px 7px}.event-list-state.closed,.event-list-state.cancelled{color:#777;background:#eee}.event-list-body>.primary{width:100%;min-height:38px}.event-list-body>.event-list-entry-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:5px;display:grid}.event-list-entry-row button{border:1px solid var(--line);min-width:0;min-height:34px;color:var(--navy);background:#fff;border-radius:9px;padding:5px;font-size:9px;font-weight:900}.event-list-entry-row button.active{background:var(--aqua);color:#087686;border-color:#1689ad}.event-list-entry-row button.active.planned{color:var(--coral);background:#fff1f3;border-color:#ef9da8}.event-list-entry-row button:disabled{opacity:.55}.event-list-entry-row>b{color:var(--navy);font-variant-numeric:tabular-nums;white-space:nowrap;align-self:center;font-size:12px}.event-list-body>.event-list-result-row{color:var(--navy);background:#f2f6f5;border-radius:9px;padding:7px 9px}.event-list-result-row b{font-size:11px}.event-list-result-row span{color:#087686;font-size:9px}.past-events{border-top:1px solid var(--line);margin-top:18px;padding-top:12px}.past-events>summary{color:var(--navy);cursor:pointer;background:#f1efeb;border-radius:13px;justify-content:space-between;align-items:center;padding:12px 14px;list-style:none;display:flex}.past-events>summary::-webkit-details-marker{display:none}.past-events>summary span{color:var(--muted);font-size:11px}.past-events>.event-thumbnail-list{margin-top:12px}.past-events .event-list-card{box-shadow:none;opacity:.92}.event-capacity-status{color:#16824b;background:#e8f8ee;border-radius:99px;padding:4px 7px}.event-capacity-status.full{color:var(--coral);background:#fff0f1}.event-availability-banner{color:#167643;width:100%;font:inherit;text-align:left;cursor:pointer;background:#edf9f2;border:1px solid #8bd4aa;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;margin:9px 0 14px;padding:11px 13px;display:flex}.event-availability-banner.full{color:var(--coral);background:#fff1f3;border-color:#ef9da8}.event-availability-banner:active:not(:disabled){transform:translateY(1px)}.event-availability-banner:focus-visible{outline:3px solid var(--coral);outline-offset:2px}.event-availability-banner:disabled{cursor:default;opacity:.72}.event-availability-banner span{white-space:nowrap;font-size:11px;font-weight:900}.standings-row>span{gap:2px;display:grid}.standings-row small{color:var(--muted);font-size:9px;font-weight:800}.standings-row>strong{white-space:nowrap;color:var(--coral)}.event-entry-names{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:8px 0 14px;display:grid}.event-entry-name{background:var(--aqua);color:var(--navy);text-align:center;text-overflow:ellipsis;white-space:nowrap;border:1px solid #c8e7e3;border-radius:9px;padding:7px 6px;font-size:10px;font-weight:800;overflow:hidden}.event-entry-empty{color:var(--muted);text-align:center;background:#f5f3ef;border-radius:10px;grid-column:1/-1;padding:12px}@media (max-width:350px){.event-entry-names{grid-template-columns:repeat(2,minmax(0,1fr))}}.detail-stats{grid-template-columns:1fr 1fr;gap:7px;display:grid}.detail-stats span{background:var(--aqua);border-radius:10px;padding:9px;font-size:12px;font-weight:800}.detail-stats span:first-child{grid-column:1/-1}.rules-text{white-space:pre-wrap}.prize-grid{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.prize-grid article{border:1px solid var(--line);background:#fff;border-radius:11px;padding:6px}.prize-grid img{aspect-ratio:3/4;object-fit:contain;width:100%}.prize-grid b,.prize-grid span{font-size:10px;display:block}.prize-grid .prize-meta{min-height:1.3em;color:var(--muted);margin-top:2px;font-size:8px;font-weight:800;line-height:1.3;display:block}.point-exchange-badge{color:#087c8d;background:#e9f8fb;border-radius:7px;margin:4px 0;padding:3px 5px;font-size:9px;font-style:normal;font-weight:900;display:block}.settlement-item{background:#fff8ed;border-radius:12px;align-items:center;gap:9px;padding:8px;display:flex}.settlement-item img{object-fit:contain;width:48px;height:58px}.settlement-item span,.settlement-item small{display:block}.admin-section{border:1px solid var(--line);background:#fffaf2;border-radius:14px;padding:12px}.admin-section summary{cursor:pointer;font-weight:900}.admin-section[open]{gap:9px;display:grid}.check-row{align-items:center;grid-template-columns:auto 1fr!important}.check-row input{width:22px;min-height:22px}.form-grid{grid-template-columns:1fr 1fr;gap:9px;margin:14px 0;display:grid}.form-grid label,.modal-card label{gap:5px;font-size:11px;font-weight:800;display:grid}.form-grid input,.form-grid select,.form-grid textarea,.modal-card input,.admin-stack input,.admin-stack select{border:1px solid var(--line);background:#fff;border-radius:10px;width:100%;min-height:43px;padding:8px;font-size:14px}.form-grid textarea{min-height:90px}.form-grid .full{grid-column:1/-1}.organizer-create summary{cursor:pointer}.organizer-editor{border:1px solid var(--line);background:#fffaf2;border-radius:12px;margin:12px 0;padding:11px}.organizer-editor summary{cursor:pointer;color:var(--coral);font-weight:900}.qr-image{width:min(320px,100%);margin:12px auto;display:block}.member-manual-code{text-align:center;background:#f1faf5;border:2px solid #173f35;border-radius:12px;gap:5px;margin:8px 0 12px;padding:11px;display:grid}.member-manual-code small{font-size:10px;font-weight:900}.member-manual-code b{color:#102c3d;letter-spacing:.12em;font-size:28px}.member-manual-code span{font-size:9px;font-weight:800}.member-manual-code button{color:#173f35;background:#fff;border:1px solid #173f35;border-radius:8px;min-height:34px;font-size:10px;font-weight:900}.qr-detail{white-space:pre-line;margin-top:10px;line-height:1.75;display:block}.popup-copy{line-height:1.75}.modal-card{max-height:90vh;overflow:auto}.admin-stack{gap:9px;display:grid}.admin-member-row{align-items:center;gap:8px}.admin-member-row>div{flex-wrap:wrap;justify-content:flex-end;gap:5px;display:flex}.admin-member-row button{min-height:34px;padding:6px 9px}.warning{color:#754d00;background:#fff3c7;border-radius:11px;margin:10px 0;padding:10px;font-weight:800}.ledger-row{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;align-items:center;gap:7px;padding:9px 0;display:grid}.organizer-notice{color:#17677e;background:#e9f8fb;border-radius:12px;margin-bottom:10px;padding:11px}.organizer-match{border-top:1px solid var(--line);padding:10px 0}@media (max-width:520px){.thumbnail-grid,.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.prize-grid{grid-template-columns:repeat(2,1fr)}.cloud-girl{width:52px;height:62px}.header-actions{gap:3px}.header-actions button{padding:8px 9px}}*{box-sizing:border-box}html{background:#f5eee8}body{color:var(--navy);font-family:var(--font-geist-sans), -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Yu Gothic", sans-serif;background:linear-gradient(#ffddd8 0,#fffaf2 260px,#f5eee8 100%);min-height:100vh;margin:0}button{font:inherit;cursor:pointer;touch-action:manipulation}.site-shell{min-height:100vh}.pull-refresh{z-index:19;top:max(58px,env(safe-area-inset-top));background:var(--navy);color:#fff;pointer-events:none;opacity:.88;border-radius:999px;width:max-content;max-width:90vw;padding:7px 13px;font-size:10px;font-weight:900;transition:transform .18s,opacity .18s;position:fixed;left:50%;box-shadow:0 5px 18px #0b304344}.pull-refresh.active{opacity:1}.app-header{z-index:20;padding:max(12px, env(safe-area-inset-top)) 17px 10px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffaf2ed;border-bottom:1px solid #fff;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.app-header small,.page-title small,.notice-card>small,.modal-card>small{letter-spacing:.14em;color:var(--coral);font-size:9px;font-weight:900}.app-header h1{margin:2px 0;font-size:18px}.header-actions{align-items:center;gap:7px;display:flex}.header-actions button{background:var(--navy);color:#fff;text-overflow:ellipsis;white-space:nowrap;border:0;border-radius:99px;max-width:min(46vw,180px);padding:9px 13px;font-weight:800;overflow:hidden}.header-actions .header-refresh,.header-actions .header-share{flex:0 0 38px;place-items:center;width:38px;min-height:38px;padding:0;font-size:22px;line-height:1;display:grid}.header-actions .header-share{font-size:19px}.header-actions .header-refresh.refreshing{animation:.7s linear infinite refresh-spin}@keyframes refresh-spin{to{transform:rotate(360deg)}}.demo-badge{color:#855900;background:#fff0c9;border-radius:99px;padding:6px 8px;font-size:10px;font-weight:900}main{width:min(760px,100%);margin:auto;padding:14px}.welcome-card{background:linear-gradient(135deg,#fff,#fff2d3);border-radius:22px;padding:15px;box-shadow:0 10px 30px #744c3420}.install-banner{width:100%;min-height:42px;color:var(--navy);text-align:left;background:#fffdf2eb;border:1px solid #ffffffa6;border-radius:13px;grid-template-columns:28px auto 1fr;align-items:center;gap:7px;margin-top:9px;padding:7px 10px;display:grid;box-shadow:0 5px 14px #733d2a1c}.install-banner>span{background:var(--coral);color:#fff;border-radius:8px;place-items:center;width:28px;height:28px;font-size:17px;display:grid}.install-banner b{white-space:nowrap;font-size:12px}.install-banner small{color:var(--muted);justify-self:end;font-size:9px;font-weight:800}.install-card>p{color:var(--muted);margin:8px 0 14px;font-size:12px;line-height:1.65}.install-card ol{counter-reset:install-step;gap:8px;margin:0;padding:0;list-style:none;display:grid}.install-card li{counter-increment:install-step;background:#fff6ec;border-radius:12px;gap:2px;min-height:54px;padding:9px 10px 9px 48px;display:grid;position:relative}.install-card li:before{content:counter(install-step);background:var(--coral);color:#fff;border-radius:50%;place-items:center;width:30px;height:30px;font-weight:900;display:grid;position:absolute;top:10px;left:11px}.install-card li b{font-size:13px}.install-card li span{color:var(--muted);font-size:10px;font-weight:700}.install-card .install-share{width:100%;margin-top:14px}@media (max-width:390px){.install-banner{grid-template-columns:28px 1fr}.install-banner small{display:none}}.flower{font-size:38px}.welcome-copy small{color:var(--coral);font-weight:900}.welcome-copy h2{white-space:nowrap;margin:3px 0;font-size:14px}.member-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.identity-card label{gap:5px;margin:10px 0;font-size:12px;font-weight:800;display:grid}.identity-card input{border:1px solid var(--line);border-radius:10px;width:100%;min-height:44px;padding:9px}.identity-saved{color:#39765a;font-weight:800}.identity-saved small{color:var(--muted);margin-top:3px;font-weight:700;display:block}.danger-button{color:#b52e42!important;background:#fff5f6!important;border-color:#f0bdc3!important}.identity-card .identity-consent{align-items:flex-start;gap:8px;font-size:12px;font-weight:700;line-height:1.55;display:flex}.identity-card .identity-consent input{width:auto;margin-top:3px}@media (max-width:520px){.welcome-copy h2{font-size:clamp(9px,2.3vw,11px)}.member-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.member-summary button{padding:9px}.member-summary em{margin-left:2px;font-size:8px}.member-summary small{font-size:9px}}.member-summary button{min-width:0;min-height:66px;color:var(--navy);text-align:left;background:#fff9ed;border:1px solid #f1dfc7;border-radius:14px;padding:8px 11px;position:relative;overflow:hidden}.member-summary small,.member-summary strong{z-index:1;display:block;position:relative}.member-summary small{color:var(--muted);font-size:10px}.member-summary strong{font-variant-numeric:tabular-nums;letter-spacing:-.04em;white-space:nowrap;font-size:clamp(17px,4vw,24px);line-height:1.12;overflow:hidden}.member-summary em{margin-left:3px;font-size:11px;font-style:normal}.member-summary .metric-note{white-space:nowrap;margin-top:3px}.member-summary .buyback-progress{isolation:isolate;background:#fff9ed}.member-summary .buyback-progress:before{content:"";z-index:0;width:var(--buyback-progress);opacity:.65;background:linear-gradient(90deg,#ffd86b,#ff9d70);border-radius:0 0 13px 13px;transition:width .25s;position:absolute;inset:50% auto 0 0}.buyback-remaining{gap:1px;white-space:normal!important;line-height:1!important;display:grid!important;overflow:visible!important}.buyback-remaining span{letter-spacing:0;white-space:nowrap;font-size:9px}.buyback-remaining b{letter-spacing:-.04em;white-space:nowrap;font-size:clamp(11px,3.3vw,17px)}@media (max-width:520px){.member-summary button{padding:9px}.member-summary em{margin-left:2px;font-size:8px}.member-summary small{font-size:9px}}.service-menu{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(82px,.9fr);gap:6px}.service-menu>button{min-height:70px}.service-menu>button strong{letter-spacing:-.02em;font-size:clamp(13px,3.5vw,18px)}.service-menu>button>span{z-index:1;color:var(--navy);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:clamp(8px,2.5vw,10px);font-weight:900;display:block;position:relative;overflow:hidden}.service-menu-side{grid-template-rows:1fr 1fr;gap:5px;min-width:0;display:grid}.member-summary .service-menu-side button{text-align:left;border-radius:10px;justify-content:space-between;align-items:center;gap:3px;min-width:0;min-height:0;padding:4px 6px;display:flex}.service-menu-side button strong{letter-spacing:-.04em;font-size:clamp(8px,2.4vw,11px)}.service-menu-side button span{z-index:1;color:var(--navy);white-space:nowrap;flex:none;font-size:clamp(8px,2.2vw,10px);font-weight:900;position:relative}.service-menu .stamp-service{background:#effafb;border-color:#b9e2e5}.service-menu .buyback-service .buyback-count{font-variant-numeric:tabular-nums;letter-spacing:-.04em;text-overflow:clip;font-size:clamp(12px,3.2vw,16px);overflow:visible}.service-menu .future-ticket{background:linear-gradient(135deg,#fff5f6,#ffe2de);border-color:#efb9c0;text-align:center!important;justify-content:center!important}.service-menu .future-ticket strong{white-space:normal;width:100%;font-size:clamp(8px,2.35vw,10px);line-height:1.18;overflow:visible}.service-menu .future-ticket:disabled{opacity:.7}.service-menu .available-point-count{font-variant-numeric:tabular-nums;letter-spacing:-.04em;text-overflow:clip;margin-top:8px;font-size:clamp(14px,3.7vw,19px);overflow:visible}.service-menu .buyback-service .buyback-count{font-variant-numeric:tabular-nums;letter-spacing:-.07em;white-space:nowrap;margin-top:9px;font-size:clamp(10px,2.65vw,13px);font-weight:700;line-height:1;overflow:visible}.service-menu .buyback-service .buyback-count b{font-size:1em;font-weight:950}.service-menu>button .service-title{align-items:center;height:20px;font-size:clamp(13px,3.5vw,18px);line-height:20px;display:flex}.member-summary-loading{min-height:75px;color:var(--navy);text-align:center;background:#fffaf1;border:1px solid #eadfce;border-radius:14px;place-items:center;margin-top:4px;padding:10px;display:grid}.member-summary-loading b{font-size:12px}.member-summary-loading small{color:var(--muted);font-size:9px}.loading-spinner{border:3px solid #efd9c7;border-top-color:var(--coral);border-radius:50%;width:20px;height:20px;animation:.75s linear infinite loading-spin}@keyframes loading-spin{to{transform:rotate(360deg)}}@media (max-width:360px){.service-menu{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 78px}.service-menu>button{padding:7px}.service-menu>button .metric-note,.service-menu-side button strong{font-size:8px}}.quick-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.quick-actions button{background:var(--navy);color:#fff;border:0;border-radius:13px;min-height:47px;font-size:11px;font-weight:900}.quick-actions button:last-child{background:linear-gradient(135deg, var(--coral), #ff8069)}.quick-actions button:first-child{background:linear-gradient(135deg,#1689ad,#16b4ac)}.quick-actions b{margin-right:7px}.quick-actions span{vertical-align:middle;line-height:1.3;display:inline-block}.member-history{border:1px solid var(--line);background:var(--paper);border-radius:15px;margin-top:14px;padding:12px}.member-history summary{cursor:pointer;font-weight:900}.offline-queue>p{color:var(--muted);margin:8px 0;font-size:11px}.offline-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:10px 0;display:grid}.offline-row span,.offline-row small{min-width:0;display:block}.offline-row small{overflow-wrap:anywhere;color:var(--muted);margin-top:3px;font-size:9px}.offline-row>div{gap:5px;display:flex}.offline-row button{border:1px solid var(--line);background:#fff;border-radius:9px;min-height:34px;font-weight:800}.offline-retry-all{width:100%;margin-top:10px}.member-history .ledger-row span small,.tournament-history-row small{color:var(--muted);margin-top:3px;font-size:10px;display:block}.tournament-history-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto minmax(145px,.8fr);align-items:center;gap:9px;padding:11px 0;display:grid}.tournament-history-row:last-child{border-bottom:0}.tournament-history-event{min-width:0}.tournament-history-event b{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.tournament-history-result{color:var(--coral);white-space:nowrap;font-size:12px;font-weight:900}.tournament-history-score{text-align:right;gap:3px;display:grid}.tournament-history-earned{color:#087686;white-space:nowrap;font-size:10px}.tournament-history-row.no-deck{grid-template-columns:minmax(0,1fr) auto}.tournament-history-popup{max-height:62vh;overflow:auto}.payment-balance{background:var(--aqua);text-align:center;border-radius:12px;padding:12px}.payment-balance b{color:#087686;font-size:22px}.payment-presets{grid-template-columns:repeat(4,1fr);gap:6px;margin:10px 0;display:grid}.payment-presets:empty{display:none}.payment-presets button{border:1px solid var(--line);min-height:38px;color:var(--navy);background:#fff;border-radius:9px;font-weight:900}.point-receive-button{color:#fff;background:linear-gradient(135deg,#1689ad,#16b4ac);border:0;border-radius:12px;width:100%;min-height:48px;margin:0 0 14px;font-weight:900}.buyback-popup-progress{isolation:isolate;background:#fff9ed;border:1px solid #f0c985;border-radius:14px;gap:2px;margin:12px 0;padding:16px;display:grid;position:relative;overflow:hidden}.buyback-popup-progress:before{content:"";z-index:-1;width:var(--buyback-progress);opacity:.72;background:linear-gradient(90deg,#ffd86b,#ff9d70);position:absolute;inset:0 auto 0 0}.buyback-popup-progress span{font-size:11px;font-weight:900}.buyback-popup-progress b{font-variant-numeric:tabular-nums;font-size:26px}.buyback-identity-note{color:var(--coral);margin-top:10px;font-weight:800;line-height:1.6;display:block}.point-popup-history{border-top:1px solid var(--line);margin-top:14px;padding-top:10px}.point-popup-history summary{cursor:pointer;font-size:12px;font-weight:900}.point-popup-history .ledger-row{margin:0}.point-popup-history .ledger-row span{gap:2px;display:grid}.point-popup-history .ledger-row small{color:var(--muted);font-size:9px}.point-popup-history .ledger-row strong{font-size:13px}.point-plus{color:#168a70}.point-minus{color:#d84e45}.earn-point-section{border:1px solid var(--line);background:#fff;border-radius:14px;margin-top:12px;padding:13px}.earn-point-section h3{margin:0 0 7px}.earn-point-section p{margin:6px 0;font-size:11px;line-height:1.65}.purchase-point-section{background:linear-gradient(145deg,#effaf6,#fff)}.permanent-member-number{text-align:center;background:#fff;border:2px solid #173f35;border-radius:12px;gap:3px;margin:10px 0;padding:12px;display:grid}.permanent-member-number small,.permanent-member-number span{font-size:10px;font-weight:900}.permanent-member-number b{font-variant-numeric:tabular-nums;letter-spacing:.12em;font-size:27px}.earn-point-section .earn-rule{color:#173f35;margin-top:8px;font-size:13px;font-weight:900}.earn-point-section>.buyback-popup-progress{margin-bottom:10px}.tournament-deck-field{gap:3px;min-width:0;display:grid}.tournament-deck-field>small{color:var(--muted);margin:0;font-size:9px;font-weight:900}.tournament-deck-field>span{grid-template-columns:minmax(0,1fr) auto;gap:4px;display:grid}.tournament-deck-field input{border:1px solid var(--line);border-radius:8px;width:100%;min-width:0;min-height:36px;padding:6px 7px;font-size:12px}.tournament-deck-field button{background:var(--navy);color:#fff;border:0;border-radius:8px;min-height:36px;padding:6px 8px;font-size:10px;font-weight:900}@media (max-width:560px){.tournament-history-row{grid-template-columns:minmax(0,1fr) auto}.tournament-deck-field{grid-column:1/-1}.tournament-deck-field>span{grid-template-columns:minmax(0,1fr) 58px}.payment-presets{grid-template-columns:repeat(2,1fr)}}.history-empty{color:var(--muted);font-size:12px}.organizer-match>small{color:var(--muted);margin:4px 0 7px;font-weight:800;display:block}.member-match-card{background:#fff;border:2px solid #8fd4df;border-radius:14px;margin:12px 0;overflow:hidden;box-shadow:0 5px 14px #11698212}.member-match-head{background:var(--aqua);justify-content:space-between;align-items:center;padding:8px 11px;display:flex}.member-match-head b{color:#087686}.member-match-head span{font-size:10px;font-weight:900}.member-match-card>strong{border-bottom:1px solid var(--line);color:var(--coral);padding:9px 12px;font-size:20px;display:block}.member-player-row{grid-template-columns:70px 1fr;align-items:center;padding:9px 12px;display:grid}.member-player-row span{color:var(--muted);font-size:10px;font-weight:900}.member-player-row b{font-size:14px}.member-player-row.mine{background:#fff8f8}.member-versus{text-align:center;color:var(--muted);margin:-4px 12px;font-size:9px;font-weight:900}.participant-pairings{background:#f4fbfc;border:1px solid #b9dfe4;border-radius:14px;margin:14px 0;padding:12px}.participant-pairing-tabs{background:#dfecef;border-radius:11px;grid-template-columns:1fr 1fr;gap:5px;margin:-3px -3px 10px;padding:3px;display:grid}.participant-pairing-tabs button{color:#587176;background:0 0;border:0;border-radius:9px;min-height:38px;font-size:11px;font-weight:900}.participant-pairing-tabs button.active{color:#087686;background:#fff;box-shadow:0 2px 7px #5b82851f}.participant-pairing-tabs button span{background:#c7dadd;border-radius:99px;place-items:center;min-width:18px;height:18px;margin-left:3px;font-size:9px;display:inline-grid}.participant-pairing-tabs button.active span{background:#dff4f5}.participant-pairings-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.participant-pairings-head h3{margin:0;font-size:14px}.participant-pairings-head span{color:#087686;background:#dff4f5;border-radius:99px;padding:3px 8px;font-size:9px;font-weight:900}.participant-pairings-list{gap:6px;display:grid}.participant-pairings-list article{background:#fff;border:1px solid #d7e7e8;border-radius:10px;grid-template-columns:56px minmax(0,1fr) 52px;align-items:center;gap:7px;padding:8px;display:grid}.participant-pairings-list article>strong{color:var(--coral);font-size:12px;display:grid}.participant-pairings-list article>strong small{color:var(--muted);font-size:8px}.participant-pairings-list article>div{text-align:center;grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr);align-items:center;gap:3px;min-width:0;display:grid}.participant-pairings-list article>div b{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.participant-pairings-list article>div small{color:var(--muted);font-size:8px;font-weight:900}.participant-pairings-list article>span{color:#087686;text-align:right;font-size:8px;font-weight:900}.participant-pairings-list article.confirmed{background:#f3f1ed}.participant-pairings-list article.confirmed>span{color:var(--muted)}.participant-pairings-empty{text-align:center;color:var(--muted);padding:18px;font-size:11px;font-weight:800}.participant-history-round-tabs{scroll-snap-type:x proximity;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:6px;margin:0 -2px 9px;padding:2px 2px 5px;display:flex;overflow-x:auto}.participant-history-round-tabs::-webkit-scrollbar{display:none}.participant-history-round-tabs button{scroll-snap-align:start;color:#587176;background:#fff;border:1px solid #c8dde0;border-radius:10px;flex:none;min-width:66px;min-height:42px;padding:5px 10px;font-size:11px;font-weight:900;display:grid}.participant-history-round-tabs button small{font-size:8px;font-weight:800}.participant-history-round-tabs button.active{color:#fff;background:#168da0;border-color:#168da0;box-shadow:0 3px 8px #168da033}.tournament-record{color:#76888b;letter-spacing:0;white-space:nowrap;margin-left:3px;font-size:.7em;font-weight:700}.app-update-banner,.connection-banner{z-index:90;color:#fff;justify-content:space-between;align-items:center;gap:10px;padding:9px 12px;display:flex;position:sticky;top:0;box-shadow:0 5px 15px #102c3d2b}.app-update-banner{background:#087686}.connection-banner{background:#a55d1c}.app-update-banner span,.connection-banner span{min-width:0;display:grid}.app-update-banner b,.connection-banner b{font-size:11px}.app-update-banner small,.connection-banner small{font-size:8px;font-weight:700}.app-update-banner button,.connection-banner button{min-height:34px;color:var(--navy);background:#fff;border:1px solid #ffffff80;border-radius:9px;flex:none;padding:6px 10px;font-size:10px;font-weight:900}.event-detail-hero{background:#fff8ef;border-radius:20px 20px 14px 14px;margin:0 -12px 8px;position:relative;overflow:hidden}.event-detail-hero-placeholder{color:#fff;letter-spacing:.12em;background:linear-gradient(135deg,#ffe8bd,#ff9e86);place-items:center;height:min(34vh,245px);font-size:24px;font-weight:900;display:grid}.event-detail-title{color:#fff;background:linear-gradient(#0000,#102c3dcc);padding:24px 12px 10px;position:absolute;bottom:0;left:0;right:0}.event-detail-title small{font-size:9px;font-weight:900}.event-detail-title h2{text-overflow:ellipsis;white-space:nowrap;margin:2px 0 0;font-size:clamp(15px,4vw,20px);line-height:1.25;overflow:hidden}.event-settings-button{z-index:3;color:#fff;background:#102c3dcc;border:1px solid #ffffffa6;border-radius:50%;width:44px;height:44px;font-size:20px;position:absolute;top:10px;left:10px}.event-detail-action-row{grid-template-columns:1fr;gap:8px;margin:8px 0 4px;display:grid}.event-detail-action-row.registered{grid-template-columns:1fr 1fr}.event-detail-action-row button{border:1px solid var(--line);min-height:38px;color:var(--navy);background:#f7f5f2;border-radius:10px;font-size:11px;font-weight:900}.event-detail-action-row .cancel{color:#a33;background:#fff1f3;border-color:#efb7bd}.event-entry-heading{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:7px;display:flex}.event-entry-heading small{color:var(--muted);white-space:nowrap;font-size:8px;font-weight:800}.dropout-button{color:#a33;background:#fff;border:1px solid #d3a2a2;width:100%;margin:10px 0}.organizer-drawer{border-top:3px solid var(--navy);margin:18px -8px 0;padding:12px 8px 0}.organizer-drawer-head{justify-content:space-between;align-items:center;margin-bottom:9px;display:flex}.organizer-drawer-head>b{font-size:17px}.organizer-drawer-head button{min-height:34px}.has-active-match main{padding-bottom:230px}.active-match-popup{z-index:95;left:50%;bottom:max(12px,env(safe-area-inset-bottom));background:#fff;border:2px solid #64c5cf;border-radius:18px;width:min(520px,100% - 20px);animation:.22s match-pop;position:fixed;overflow:hidden;transform:translate(-50%);box-shadow:0 18px 55px #102c3d66}.active-match-popup-large{border-width:3px;width:min(600px,100% - 20px)}.active-match-title{background:var(--navy);color:#fff;grid-template-columns:minmax(0,1fr) auto 34px;align-items:center;gap:8px;padding:10px 10px 10px 14px;display:grid}.active-match-title span{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;font-weight:900;overflow:hidden}.active-match-title b{white-space:nowrap;font-size:12px}.active-match-close{color:#fff;background:#ffffff1f;border:1px solid #ffffff80;border-radius:50%;place-items:center;width:34px;height:34px;padding:0;font-size:23px;font-weight:700;line-height:1;display:grid}.active-match-main{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:13px;padding:10px 12px 5px;display:grid}.active-match-main>strong{color:var(--coral);white-space:nowrap;font-size:27px}.active-match-main>span{min-width:0;display:grid}.active-match-main small{color:var(--muted);font-size:9px;font-weight:900}.active-match-main b{text-overflow:ellipsis;white-space:nowrap;font-size:17px;overflow:hidden}.active-match-popup>p{color:var(--muted);margin:0;padding:0 12px 8px;font-size:10px;font-weight:800}.active-match-actions{grid-template-columns:92px minmax(0,1fr);gap:7px;padding:0 12px 11px;display:grid}.active-match-actions button{border:1px solid var(--line);min-height:43px;color:var(--navy);background:#fff;border-radius:10px;font-size:12px;font-weight:900}.active-match-actions .primary{border-color:var(--coral);background:var(--coral);color:#fff}.active-match-actions button:disabled{opacity:.7}.active-match-popup.confirmed{border-color:#8fd4a9}.active-match-popup.confirmed .active-match-title{background:#39765a}@keyframes match-pop{0%{opacity:0;transform:translate(-50%,12px)}}.match-notification-button{color:#087686;background:#eafafb;border:1px solid #5aaeb9;border-radius:11px;width:calc(100% - 24px);min-height:42px;margin:0 12px 8px;font-size:12px;font-weight:900;display:block}.match-notification-button.enabled{color:#39765a;opacity:1;background:#effaf3;border-color:#8fd4a9}.active-match-reopen{z-index:95;right:10px;bottom:max(78px,calc(env(safe-area-inset-bottom) + 70px));background:var(--navy);color:#fff;border:2px solid #64c5cf;border-radius:99px;min-height:44px;padding:9px 14px;font-size:11px;font-weight:900;position:fixed;box-shadow:0 10px 28px #102c3d55}@media (max-width:430px){.has-active-match main{padding-bottom:292px}.active-match-popup{bottom:max(7px,env(safe-area-inset-bottom));width:calc(100% - 10px)}.active-match-main{padding:15px 14px 8px}.active-match-main>strong{font-size:31px}.active-match-main b{font-size:19px}.active-match-popup>p{padding:0 14px 11px;font-size:11px}.active-match-actions{grid-template-columns:88px minmax(0,1fr);padding:0 10px 13px}.active-match-actions button{min-height:49px;font-size:13px}.active-match-title{padding:10px 9px 10px 13px}.match-notification-button{width:calc(100% - 20px);min-height:46px;margin:0 10px 9px;font-size:13px}}.winner-report p{color:var(--muted);margin:8px 0;font-size:11px}.winner-report button{width:100%}.organizer-match>em{color:var(--coral);margin:4px 0;font-size:10px;font-style:normal;font-weight:900;display:block}.event-rsvp{grid-template-columns:1fr 1fr;gap:8px;margin:11px 0;display:grid}.event-my-status{min-height:35px;color:var(--navy);background:#fff6f7;border:1px solid #f0c4ca;border-radius:10px;grid-column:1/-1;justify-content:space-between;align-items:center;padding:7px 11px;display:flex}.event-my-status span{font-size:10px;font-weight:900}.event-my-status b{font-size:13px}.event-my-status.registered,.event-my-status.checked_in,.event-my-status.joined,.event-my-status.playing{background:var(--aqua);color:#087686;border-color:#8fd4df}.event-rsvp button{border:1px solid var(--line);min-width:0;min-height:48px;color:var(--navy);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;padding:8px 11px;display:flex}.event-rsvp button span{font-size:11px;font-weight:900}.event-rsvp button b{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:17px}.event-rsvp button.active{background:var(--aqua);color:#087686;border-color:#1689ad}.event-rsvp button.active.planned{color:var(--coral);background:#fff1f3;border-color:#ef9da8}.event-rsvp button:disabled{opacity:.72}.attendance-summary{flex-wrap:wrap;gap:6px;margin:9px 0;display:flex}.attendance-summary span{background:var(--aqua);border-radius:99px;padding:5px 8px;font-size:10px;font-weight:900}.participant-admin-list{grid-template-columns:1fr 1fr;gap:5px;margin-top:8px;display:grid}.participant-admin-row{border:1px solid var(--line);background:#fff;border-radius:9px;grid-template-columns:50px minmax(0,1fr) 82px 42px;align-items:center;gap:5px;min-height:40px;padding:4px;display:grid}.participant-admin-row button{border:0;border-radius:7px;min-height:32px;padding:4px;font-size:10px;font-weight:900}.participant-admin-row .checkin{background:var(--coral);color:#fff}.participant-admin-row .checkin.done{background:var(--aqua);color:#087686}.participant-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;overflow:hidden}.participant-state{text-overflow:ellipsis;white-space:nowrap;text-align:right;width:82px;color:var(--muted);font-size:10px;font-weight:900;overflow:hidden}.participant-state.at-table{color:var(--coral)}.participant-delete{color:#a33;background:#f6ecec}.organizer-interested{margin:12px 0}.organizer-interested>small{color:var(--muted);margin:8px 0;font-size:10px;display:block}.organizer-interested-list{grid-template-columns:1fr 1fr;gap:6px;display:grid}.organizer-interested-row{border:1px solid var(--line);background:#fff;border-radius:9px;justify-content:space-between;align-items:center;gap:8px;min-height:40px;padding:6px 8px;display:flex}.organizer-interested-row b{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;overflow:hidden}.organizer-interested-row button{border:0;border-radius:7px;min-height:30px;padding:5px 9px;font-size:10px;font-weight:900}.organizer-interested-row.anonymous{color:var(--muted);background:#f5f3ef}.organizer-interested-row.anonymous span{font-weight:900}.organizer-flow{grid-template-columns:repeat(4,1fr);gap:5px;margin:12px 0;display:grid}.organizer-flow span{min-height:40px;color:var(--muted);text-align:center;background:#eee;border-radius:9px;place-items:center;padding:5px;font-size:9px;font-weight:900;display:grid}.organizer-flow span.done{background:var(--aqua);color:#087686}.organizer-flow span.active{color:#754d00;background:#fff3c7}.organizer-primary-actions .primary{flex:1}.organizer-subsection{border:1px solid var(--line);border-radius:12px;margin:12px 0;padding:10px}.tournament-rounds{margin-top:14px}.round-tabs{scrollbar-width:none;gap:6px;padding:4px 1px 8px;display:flex;overflow-x:auto}.round-tabs::-webkit-scrollbar{display:none}.round-tabs button{border:1px solid var(--line);min-height:48px;color:var(--muted);background:#f3f1ee;border-radius:12px;flex:0 0 94px;gap:2px;display:grid}.round-tabs button b{font-size:12px}.round-tabs button span{font-size:9px}.round-tabs button.active{border-color:var(--coral);background:var(--coral);color:#fff}.round-panel{padding-top:4px}.round-panel-head{background:var(--navy);color:#fff;border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:8px;padding:9px 11px;display:flex}.round-panel-head span{font-size:10px;font-weight:900}.match-table-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.round-empty{text-align:center;color:var(--muted);border:1px dashed #b9b3ac;border-radius:12px;gap:4px;margin-top:12px;padding:16px;display:grid}.round-empty span{font-size:11px}.organizer-match{border:1px solid var(--line);background:#fff;border-radius:12px;margin:0;padding:0 10px 10px;overflow:hidden}.organizer-match.disputed{background:#fffaf0;border-color:#e9a400}.organizer-match-title{border-bottom:1px solid var(--line);background:#faf9f7;justify-content:space-between;align-items:center;gap:8px;margin:0 -10px 7px;padding:8px 10px;display:flex}.organizer-match-title b{color:var(--coral)}.organizer-match-title span{font-size:10px;font-weight:900}.organizer-player-list{border:1px solid var(--line);border-radius:9px}.organizer-player-list>div{grid-template-columns:25px minmax(0,1fr);align-items:center;min-height:38px;padding:5px 8px;display:grid}.organizer-player-list>div+div{border-top:1px solid var(--line)}.organizer-player-list span{background:var(--aqua);color:#087686;border-radius:99px;place-items:center;width:22px;height:22px;font-size:9px;font-weight:900;display:grid}.organizer-player-list b{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.result-buttons{grid-template-columns:1fr auto 1fr;margin-top:8px;display:grid}.result-buttons button{text-overflow:ellipsis;min-width:0;overflow:hidden}.match-edit-toggle{border:1px solid var(--line);background:#f7f5f2;width:100%;margin-top:7px}.pairing-editor{background:#f7f5f2;border-radius:10px;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px;padding:10px;display:grid}.pairing-editor label{gap:4px;font-size:10px;font-weight:900;display:grid}.pairing-editor label:nth-child(3),.pairing-editor button,.pairing-editor small{grid-column:1/-1}.pairing-editor select{width:100%;min-width:0}.pairing-editor small{color:var(--muted)}.match-secondary-actions button{font-size:10px}.event-edit-actions{margin-top:10px}.format-choice.single{grid-template-columns:1fr}@media (max-width:620px){.event-thumbnail-list,.match-table-grid,.result-buttons,.pairing-editor{grid-template-columns:1fr}.pairing-editor label,.pairing-editor label:nth-child(3),.pairing-editor button,.pairing-editor small{grid-column:1}.participant-admin-list,.organizer-interested-list{grid-template-columns:1fr}.round-tabs{z-index:4;background:#fffdf8;position:sticky;top:0}}.section-nav{z-index:10;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffdfaf2;border:1px solid #fff;border-radius:17px;grid-template-columns:repeat(4,1fr);gap:4px;margin:10px 0 12px;padding:6px;display:grid;position:sticky;top:67px;box-shadow:0 6px 18px #68412d12}.section-nav button{color:#839097;background:0 0;border:0;border-radius:12px;justify-content:center;align-items:center;gap:5px;min-height:47px;font-size:10px;font-weight:900;display:flex}.section-nav b{font-size:18px}.section-nav .active{color:var(--coral);background:#fff0f2}.page{animation:.18s in}.page-title{padding:7px 2px 11px}.page-title h2{margin:2px 0;font-size:25px}.oripa-page-title{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.oripa-share-button{border:1px solid var(--line);min-height:38px;color:var(--navy);white-space:nowrap;background:#fff;border-radius:11px;padding:7px 12px;font-size:11px;font-weight:900}@media (max-width:390px){.oripa-page-title h2{font-size:20px}.oripa-share-button{padding:7px 9px}}.play-page-title{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.play-title-actions{justify-content:flex-end;align-items:center;gap:6px;display:flex}.match-alert-toggle{border:1px solid var(--line);min-height:40px;color:var(--navy);white-space:nowrap;background:#fff;border-radius:11px;padding:8px 10px;font-size:10px;font-weight:900}.match-alert-toggle.active{background:var(--aqua);color:#087686;border-color:#64c5cf}.new-event-button{background:var(--coral);color:#fff;white-space:nowrap;border:0;border-radius:11px;min-height:40px;padding:8px 12px;font-size:11px;font-weight:900;box-shadow:0 5px 14px #e65f4b2c}@media (max-width:520px){.play-title-actions{flex-direction:column;align-items:stretch;gap:4px}.match-alert-toggle,.new-event-button{min-height:34px;padding:6px 8px}.new-event-button{white-space:normal;max-width:126px;line-height:1.2}.play-page-title h2{font-size:22px}}.notice-card,.event-card,.empty-card,.info-card{background:var(--paper);border:1px solid #fff;border-radius:20px;margin-bottom:12px;padding:17px;box-shadow:0 8px 24px #68412d14}.notice-card{background:linear-gradient(135deg,#fff,#fff0c8)}.notice-card h2{margin:7px 0}.notice-card p,.event-card p,.info-card p,.empty-card p{color:var(--muted);line-height:1.6}.notice-card button,.primary{background:linear-gradient(135deg, var(--coral), #ff8460);color:#fff;border:0;border-radius:12px;min-height:44px;padding:10px 14px;font-weight:900}.empty-card{text-align:center;padding:30px 16px}.event-top{justify-content:space-between;align-items:center;display:flex}.event-top small{color:var(--coral);font-weight:900}.event-top span{background:var(--aqua);color:#17677e;border-radius:99px;padding:5px 8px;font-size:10px;font-weight:900}.event-top .soon{color:#777;background:#eee}.event-card h2{margin:8px 0;font-size:20px}.tags{flex-wrap:wrap;gap:6px;display:flex}.tags span{background:var(--aqua);border-radius:99px;padding:5px 8px;font-size:10px;font-weight:800}.joined,.waiting{color:#16744b;background:#ecfbf4;border-radius:12px;margin-top:10px;padding:10px;font-weight:900}.waiting{color:#755000;background:#fff3c7}.event-actions{gap:8px;margin-top:10px;display:flex}.event-actions button{background:var(--aqua);color:#17677e;border:0;border-radius:12px;min-height:44px;padding:10px 14px;font-weight:900}.event-actions .primary{background:linear-gradient(135deg, var(--coral), #ff8460);color:#fff}.member-card{color:#fff;background:linear-gradient(135deg,#123c58,#ef5b6d);border-radius:24px;padding:24px;position:relative;overflow:hidden;box-shadow:0 18px 34px #4c314c35}.member-card:after{content:"🌺";opacity:.18;font-size:100px;position:absolute;bottom:-18px;right:-12px}.member-card small{opacity:.75}.member-card h2{margin:16px 0 4px;font-size:26px}.member-card code{font-size:11px}.member-card .member-metrics{z-index:1;gap:6px;margin-top:18px;display:grid;position:relative}.member-card strong{font-size:27px}.member-card span{font-size:12px}.member-card .member-name-row{z-index:1;justify-content:space-between;align-items:center;gap:10px;margin-top:13px;display:flex;position:relative}.member-card .member-name-row h2{text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;overflow:hidden}.member-card .member-name-row button{color:#fff;background:#ffffff20;border:1px solid #ffffff80;border-radius:9px;flex:none;min-height:30px;padding:5px 8px;font-size:9px;font-weight:900}.member-card .member-point-line{align-items:baseline;gap:3px;min-width:0;display:flex}.member-card .member-expiry-note{letter-spacing:-.03em;opacity:.8;white-space:nowrap;font-size:8px;font-weight:700}.member-card .member-stamp-line{align-items:baseline;gap:8px;min-width:0;display:flex}.member-card .member-stamp-line strong{letter-spacing:-.04em;flex:none;font-size:20px;font-weight:900}.member-card .member-stamp-line small{opacity:.85;min-width:0;font-size:8px;font-weight:800;line-height:1.35}.progress{background:#eee;border-radius:99px;height:10px;overflow:hidden}.progress i{background:linear-gradient(90deg, #f0b33e, var(--coral));width:66%;height:100%;display:block}.text-button{color:#1689ad;background:0 0;border:0;margin:12px auto;display:block}.modal{z-index:100;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#102c3d99;place-items:center;padding:12px;display:grid;position:fixed;inset:0}.modal.modal-front{z-index:1000}.modal-card{width:min(430px,100%);color:var(--navy);background:#fff;border-radius:24px;padding:24px;position:relative;box-shadow:0 30px 90px #172e3b75}.modal-card.event-detail-modal{border-radius:20px;padding:0 12px 14px}.modal-card.event-detail-modal>.close{z-index:4;color:#fff;background:#102c3de6;border:1px solid #ffffffa6;width:44px;height:44px;font-size:27px;line-height:1;top:10px;right:10px}.modal-card.oripa-detail-modal>.close{z-index:5;color:#fff;background:#102c3de6;border:1px solid #ffffffa6;width:44px;height:44px;margin:-8px -8px -36px auto;font-size:27px;line-height:1;display:block;position:sticky;top:0}.close{background:#eee;border:0;border-radius:50%;width:38px;height:38px;font-size:20px;position:absolute;top:16px;right:16px}.scanner{aspect-ratio:4/3;background:#102c3d;border-radius:18px;margin:14px 0;position:relative;overflow:hidden}.scanner video{object-fit:cover;width:100%;height:100%}.scanner i{border:3px solid #fff;border-radius:16px;position:absolute;inset:17%;box-shadow:0 0 0 999px #102c3d66}.amounts{grid-template-columns:1fr 1fr;gap:8px;display:grid}.amounts button{border:1px solid var(--line);background:#fff;border-radius:12px;min-height:48px;font-weight:900}.toast{z-index:2200;background:var(--navy);color:#fff;border:0;border-radius:99px;max-width:90%;padding:12px 16px;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 12px 30px #102c3d55}.processing-overlay{z-index:3000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#102c3d80;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.processing-card{width:min(300px,88vw);color:var(--navy);text-align:center;background:#fff;border-radius:20px;justify-items:center;gap:8px;padding:24px 20px;display:grid;box-shadow:0 24px 70px #102c3d66}.processing-card i{border:4px solid #dce7e9;border-top-color:var(--coral);border-radius:50%;width:34px;height:34px;animation:.8s linear infinite processing-spin}.processing-card b{font-size:15px;line-height:1.5}.processing-card span{color:var(--muted);font-size:12px;font-weight:800}@keyframes processing-spin{to{transform:rotate(360deg)}}@keyframes in{0%{opacity:.4;transform:translateY(4px)}}@media (min-width:700px){.welcome-card{max-width:100%}}@media (max-width:390px){.app-header>div:first-child{min-width:0}.header-actions>button:first-child{max-width:92px}.app-header h1{font-size:15px}.demo-badge{display:none}.welcome-card{padding:12px}.flower{font-size:32px}.welcome-copy h2{font-size:9px}.quick-actions button{padding:7px 4px;font-size:9px}.quick-actions b{margin:0 0 3px;font-size:15px;display:block}.section-nav button{gap:3px;font-size:9px}.section-nav b{font-size:16px}.member-card .member-metrics{gap:5px}.member-card .member-stamp-line{gap:6px}.member-card .member-stamp-line strong{font-size:18px}.member-card .member-stamp-line small{font-size:7px}.member-card .member-name-row{flex-direction:row;align-items:center;gap:7px}.member-card .member-name-row button{font-size:8px}}.news-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.member-notice-list{gap:8px;margin-bottom:16px;display:grid}.member-notice-list article{background:#fff1f3;border:1px solid #ef9da8;border-radius:12px;padding:11px 13px}.member-notice-list b{color:var(--coral)}.member-notice-list p{color:var(--muted);margin:4px 0 0;font-size:11px}.broadcast-notice-modal{z-index:135}.broadcast-notice-card{text-align:center;border:3px solid #ef9da8;padding:25px 22px}.broadcast-notice-card>.close{color:#fff;background:#102c3d;width:44px;height:44px;font-size:25px;top:10px;right:10px}.broadcast-notice-card>small{color:var(--coral);font-weight:900}.broadcast-notice-card h2{margin:12px 32px 8px;font-size:20px}.broadcast-notice-card p{white-space:pre-wrap;background:#fff6f7;border-radius:12px;padding:12px;font-weight:800;line-height:1.7}.event-notice-history{gap:8px;margin:12px 0;display:grid}.event-notice-history h3{margin-bottom:0}.event-notice-history article{background:#fff6f7;border:1px solid #efb7bd;border-radius:12px;padding:11px 12px}.event-notice-history article b{color:var(--coral)}.event-notice-history article p{white-space:pre-wrap;margin:5px 0;line-height:1.55}.event-notice-history article small{color:var(--muted);font-size:8px}.sent-broadcast-list{border-top:1px solid var(--line);gap:8px;margin-top:12px;padding-top:10px;display:grid}.sent-broadcast-list article{border:1px solid var(--line);background:#fff;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:9px;display:grid}.sent-broadcast-list article p{color:var(--muted);white-space:pre-wrap;margin:3px 0;font-size:10px}.sent-broadcast-list article small{font-size:8px}.sent-broadcast-list article>div:last-child{gap:5px;display:grid}.sent-broadcast-list button{min-height:30px;padding:4px 9px;font-size:9px}@media (max-width:390px){.sent-broadcast-list article{grid-template-columns:1fr}.sent-broadcast-list article>div:last-child{grid-template-columns:1fr 1fr}}.champion-notice-modal{z-index:145}.champion-notice-card{background:linear-gradient(#fff9df,#fff);border:3px solid #f4ba49;max-height:min(88vh,760px);padding:25px 18px 18px;overflow:auto}.champion-notice-card>.close{color:#fff;background:#102c3d;width:44px;height:44px;font-size:25px;top:10px;right:10px}.champion-notice-card>small{color:#a26700;padding-right:48px;font-weight:900;display:block}.champion-notice-card h2{color:var(--coral);margin:12px 42px 7px 0;font-size:22px}.champion-notice-card>p{margin:0 0 12px;font-weight:900}.champion-ranking{gap:5px;display:grid}.champion-ranking>div{background:#f5f3ef;border-radius:9px;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;font-size:11px;display:flex}.champion-ranking>div.champion{color:#8a5600;background:#fff4c7;border:2px solid #efb635}.champion-ranking span{color:var(--muted);white-space:nowrap;font-weight:800}.champion-close-command{width:100%;margin-top:14px}.pending-match-check{color:var(--navy);background:#fff1f3;border:1px solid #eeb8bd;border-radius:12px;gap:6px;margin:10px 0;padding:12px;display:grid}.pending-match-check b{color:var(--coral)}.pending-match-check button{width:100%;color:var(--navy);text-align:left;background:#fff;border:1px solid #eeb8bd;border-radius:9px;gap:2px;padding:9px 10px;font-size:12px;font-weight:900;display:grid}.pending-match-check button small{color:var(--coral);font-size:9px}.organizer-match{scroll-margin-top:18px}.organizer-match.match-focus-target{border-color:var(--coral);box-shadow:0 0 0 4px #d243482e}.organizer-broadcast{margin:12px 0}.organizer-broadcast textarea{min-height:80px}.event-template-tools{background:var(--aqua);border-radius:12px;grid-template-columns:minmax(0,1fr) auto auto;align-items:end;gap:8px;margin:10px 0;padding:10px;display:grid}.event-template-tools label{margin:0}@media (max-width:560px){.event-template-tools{grid-template-columns:1fr 1fr}.event-template-tools label{grid-column:1/-1}}.news-card{background:var(--paper);border:1px solid #fff;border-radius:18px;overflow:hidden;box-shadow:0 8px 24px #68412d14}.news-card img{aspect-ratio:4/3;object-fit:contain;background:#fff8ef;width:100%;display:block}.news-card>div{padding:13px}.news-card small{color:var(--coral);font-weight:900}.news-card h3{margin:4px 0 7px}.news-card p{color:var(--muted);white-space:pre-wrap;margin:0;font-size:12px}.news-card-button{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;padding:0}.news-card-button:active{transform:translateY(1px)}.news-card-button:focus-visible{outline:3px solid var(--coral);outline-offset:3px}.news-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.news-heading h3{margin:0}.news-heading button{background:var(--navy);color:#fff;border:0;border-radius:999px;min-height:36px;padding:7px 12px;font-size:10px;font-weight:900}.news-editor-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:16px;display:grid}.news-editor-form,.news-editor-list{min-width:0}.news-editor-form textarea{min-height:110px}.news-editor-preview{align-items:center;gap:9px;margin:8px 0;display:flex}.news-editor-preview img{object-fit:contain;background:#fff8ef;border-radius:9px;width:92px;height:68px}.news-editor-list{align-content:start;gap:8px;display:grid}.news-editor-list h3{margin:0 0 3px}.news-editor-list article{border:1px solid var(--line);background:#fff;border-radius:11px;grid-template-columns:54px minmax(0,1fr) auto auto;align-items:center;gap:7px;padding:7px;display:grid}.news-editor-list article.active{border-color:var(--coral);background:var(--coral-soft)}.news-editor-list article>img{object-fit:contain;background:#fff8ef;border-radius:7px;width:54px;height:44px}.news-editor-list article>div{min-width:0;display:grid}.news-editor-list article b{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.news-editor-list article small{font-size:8px}.news-editor-list article>button{min-height:32px;padding:5px 8px;font-size:9px}@media (max-width:520px){.news-grid{grid-template-columns:1fr}}@media (max-width:620px){.news-editor-layout{grid-template-columns:1fr}.news-editor-list article{grid-template-columns:46px minmax(0,1fr) auto auto}.news-editor-list article>img{width:46px;height:40px}}.event-create-steps{grid-template-columns:repeat(3,1fr);gap:5px;margin:14px 0;display:grid}.event-create-steps button{min-height:38px;color:var(--muted);background:#ece9e5;border:0;border-radius:9px;font-size:10px;font-weight:900}.event-create-steps button.active{background:var(--coral);color:#fff}.format-choice{grid-template-columns:1fr 1fr;gap:10px;display:grid}.format-choice button{border:2px solid var(--line);text-align:left;min-height:120px;color:var(--navy);background:#fff;border-radius:14px;padding:16px}.format-choice button.active{border-color:var(--coral);background:var(--coral-soft)}.format-choice b,.format-choice span{display:block}.format-choice span{color:var(--muted);margin-top:7px;font-size:12px}.event-image-upload{background:var(--coral-soft);min-height:95px;color:var(--coral);border:2px dashed #ebb3ba;border-radius:14px;place-items:center;display:grid!important}.event-image-upload input{opacity:0;pointer-events:none;position:absolute}.event-create-confirm,.event-prize{background:var(--aqua);border-radius:12px;margin:10px 0;padding:12px}.event-step-actions{border-top:1px solid var(--line);justify-content:flex-end;gap:8px;margin-top:12px;padding-top:10px;display:flex}@media (max-width:520px){.format-choice{grid-template-columns:1fr}.event-create-steps button{font-size:0}.event-create-steps button:first-letter{font-size:11px}}.event-rsvp button,.event-list-entry-row button{flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex}.event-rsvp button b{line-height:1}.event-list-entry-row button b{font-size:12px;line-height:1}.event-list-entry-row button span{white-space:nowrap;font-size:9px}.participant-admin-row{grid-template-columns:minmax(0,1fr) 88px 82px 42px}.modal-card.wide{border-radius:18px;width:min(920px,100%);height:calc(100vh - 24px);max-height:none;padding:20px 18px}.organizer-modal-head{min-width:0;padding-right:42px}.organizer-modal-head h2{white-space:nowrap;text-overflow:ellipsis;margin:2px 0 12px;font-size:clamp(16px,4vw,24px);overflow:hidden}@media (max-width:620px){.modal-card.wide{border-radius:0;width:100%;height:100vh;max-height:100vh;padding:18px 12px}.participant-admin-row{grid-template-columns:minmax(0,1fr) 84px 78px 40px}}.guest-interest-note{color:var(--muted);text-align:center;grid-column:1/-1;font-size:9px;font-weight:800;line-height:1.5}.finish-tournament-button{color:#fff;background:#1d2638;border-color:#1d2638;width:100%;margin-top:8px}.finish-tournament-button:disabled{color:#8b857e;background:#e9e6e1;border-color:#d8d3cc}.tournament-finished{text-align:center;background:linear-gradient(135deg,#fff3d5,#fffaf0);border-radius:14px;margin:16px 0;padding:16px}.tournament-finished b{color:var(--coral);font-size:16px}.tournament-finished p{margin:6px 0 0;font-weight:800;line-height:1.7}.sync-status{color:#24734a;margin-top:3px;font-size:9px;font-weight:900;display:block}.qr-countdown{text-align:center;background:#eef8f3;border-radius:10px;margin:8px 0;padding:8px}.qr-countdown b{color:#16734b;font-size:16px}.qr-expired{color:#a52127;text-align:center;background:#fff0f0;border-radius:12px;gap:8px;margin:8px 0;padding:10px;display:grid}.ranking-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.ranking-heading h3{margin:12px 0 7px}.ranking-heading>div{gap:5px;display:flex}.ranking-heading button{min-height:32px;padding:5px 8px;font-size:9px}.event-create-simple{margin-top:12px}.event-create-summary{background:var(--aqua);border-radius:12px;gap:4px;margin:10px 0;padding:11px;font-size:11px;display:grid}.event-create-summary b{color:var(--coral);font-size:14px}.create-event-submit{width:100%;min-height:48px}.operations-panel>.primary{margin:10px 0}.sync-health-card{background:#eef8f3;border-radius:12px;gap:3px;margin:8px 0 12px;padding:11px;display:grid}.sync-health-card span{color:#24734a;font-weight:900}.operations-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;padding:8px 0;display:flex}.operations-row span{display:grid}.operations-error{background:#fff2f2;border-radius:9px;gap:2px;margin:6px 0;padding:8px;font-size:10px;display:grid}.operations-error b{color:#a52127}.operations-error small{color:var(--muted)}@media print{body *{visibility:hidden}.event-detail-modal,.event-detail-modal *{visibility:visible}.event-detail-modal{position:absolute!important;inset:0!important}.modal-backdrop,.modal-card>.close,.event-detail-action-row,.event-rsvp,.event-settings-button,.member-match-card,.winner-report,.dropout-button,.ranking-heading button{display:none!important}}.gunslinger-next-actions{grid-template-columns:1fr 1fr;gap:7px;padding:0 12px 11px;display:grid}.active-match-actions .gunslinger-next-actions{padding:0}.gunslinger-next-actions button{border:1px solid var(--line);min-width:0;min-height:43px;color:var(--navy);background:#fff;border-radius:10px;font-size:12px;font-weight:900}.gunslinger-next-actions .primary{border-color:var(--coral);background:var(--coral);color:#fff}.gunslinger-status-main{gap:3px;padding:14px 12px;display:grid}.gunslinger-status-main strong{color:#087686;font-size:20px}.gunslinger-status-main span{color:var(--muted);font-size:11px;font-weight:800}.gunslinger-status-popup.break{border-color:#e2b85b}.gunslinger-status-popup.break .active-match-title{background:#8a6a22}.gunslinger-choice-card,.gunslinger-member-state{background:#f2fbfc;border:1px solid #9fd9df;border-radius:12px;gap:7px;margin:10px 0;padding:11px;display:grid}.gunslinger-choice-card>span,.gunslinger-member-state>span{color:var(--muted);font-size:10px;font-weight:800}.gunslinger-choice-card>div{grid-template-columns:1fr 1fr;gap:7px;display:grid}.gunslinger-choice-card button,.gunslinger-member-state button,.gunslinger-exit-button{border:1px solid var(--line);min-height:38px;color:var(--navy);background:#fff;border-radius:9px;font-size:11px;font-weight:900}.gunslinger-choice-card .primary,.gunslinger-member-state .primary{border-color:var(--coral);background:var(--coral);color:#fff}.gunslinger-member-state.break{background:#fff9e9;border-color:#e5c773}.gunslinger-exit-button{color:#963838;border-color:#d6a2a2;width:100%}.participant-admin-row.gunslinger{grid-template-columns:minmax(68px,1fr) 70px 82px 42px 42px}.participant-name small{color:#b06710;font-size:8px;display:block}.gunslinger-admin-state{color:#765000;background:#fff2ca}.gunslinger-board{background:#f4fbfc;border:1px solid #acdce0;border-radius:14px;margin-top:14px;padding:12px}.gunslinger-board-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:9px;display:flex}.gunslinger-board-head small{color:#087686;letter-spacing:.1em;font-size:8px;font-weight:900}.gunslinger-board-head h3{margin:1px 0 0;font-size:16px}.gunslinger-board-head>span{color:#087686;background:#dff4f5;border-radius:99px;padding:5px 8px;font-size:9px;font-weight:900}.gunslinger-manual-pair,.gunslinger-history{background:#fff}.gunslinger-manual-pair .form-grid,.gunslinger-history .match-table-grid{margin-top:9px}.match-cancel-button{color:#a52c38;background:#fff6f7;border:1px solid #d9a3a8;border-radius:10px;width:calc(100% - 24px);min-height:38px;margin:0 12px 5px;font-size:11px;font-weight:900}.winner-report .match-cancel-button{width:100%;margin:8px 0 2px}.match-cancel-help{color:var(--muted);text-align:center;margin:0 12px 10px;font-size:8px;font-weight:800;display:block}.winner-report .match-cancel-help{margin:0 0 4px}.organizer-cancel-choices{background:#fff8f8;border:1px solid #e6c5c8;border-radius:9px;gap:5px;margin-top:8px;padding:8px;display:grid}.organizer-cancel-choices>small{color:#93414a;font-size:9px;font-weight:900}.organizer-cancel-choices>div{grid-template-columns:1fr 1fr;gap:5px;display:grid}.organizer-cancel-choices button{color:#a52c38;text-overflow:ellipsis;white-space:nowrap;background:#fff;border:1px solid #d9a3a8;min-width:0;min-height:34px;font-size:9px;font-weight:900;overflow:hidden}.organizer-cancel-request{background:#fff3df;border:2px solid #de8c32;border-radius:10px;gap:4px;margin-top:8px;padding:9px;display:grid}.organizer-cancel-request>b{color:#8b4200;font-size:11px}.organizer-cancel-request>span{color:#76583c;font-size:9px;font-weight:800}.organizer-cancel-request>div{grid-template-columns:1fr 1fr;gap:6px;margin-top:3px;display:grid}.organizer-cancel-request button{min-height:36px;font-size:10px;font-weight:900}.in-app-browser-guide{color:#624600;background:#fff8dc;border:1px solid #e0b84c;border-radius:11px;justify-content:space-between;align-items:center;gap:8px;width:min(100% - 20px,680px);margin:7px auto 0;padding:8px 10px;display:flex}.in-app-browser-guide span{min-width:0;display:grid}.in-app-browser-guide b{font-size:11px}.in-app-browser-guide small{font-size:8px;font-weight:800}.in-app-browser-guide button{color:#fff;background:#102c3d;border:0;border-radius:8px;flex:none;min-height:34px;padding:5px 10px;font-size:9px;font-weight:900}.offline-action-alert{z-index:120;color:#743500;background:#fff4e7;border:2px solid #d27620;border-radius:11px;justify-content:space-between;align-items:center;gap:8px;width:min(100% - 20px,680px);margin:7px auto 0;padding:9px 10px;display:flex;position:sticky;top:4px;box-shadow:0 5px 16px #0002}.offline-action-alert span{min-width:0;display:grid}.offline-action-alert b{font-size:11px}.offline-action-alert small{font-size:8px;font-weight:800}.offline-action-alert button{color:#fff;background:#b34e00;border:0;border-radius:8px;flex:none;min-height:35px;padding:5px 10px;font-size:9px;font-weight:900}.format-choice.compact{margin:10px 0}.format-choice.compact button{min-height:72px;padding:11px}.format-choice.compact span{margin-top:3px;font-size:10px}@media (max-width:620px){.participant-admin-row.gunslinger{grid-template-columns:minmax(64px,1fr) 68px 76px 40px 40px}.participant-admin-row.gunslinger button{padding:3px;font-size:9px}.participant-admin-row.gunslinger .participant-state{width:76px}}
