:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}body{margin:0}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;width:1126px;max-width:100%;min-height:100svh;margin:0 auto;display:flex}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}*{box-sizing:border-box}:root{color:#263b32;font-synthesis:none;background:#f5f8f5;font-family:Noto Sans JP,Hiragino Kaku Gothic ProN,sans-serif}body{min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button{cursor:pointer}.app{min-height:100vh;padding-bottom:90px}.header{color:#fff;background:#174b37;padding:28px 24px;box-shadow:0 3px 12px #14322326}.header-inner{max-width:1100px;margin:0 auto}.dojo-name{letter-spacing:.12em;opacity:.85;margin-bottom:8px;font-size:14px}.header h1{letter-spacing:.04em;margin:0;font-size:clamp(23px,4vw,34px);font-weight:700}.home-page,.main-page{width:min(100% - 40px,1100px);margin:0 auto;padding:42px 0}.page-heading,.event-heading,.list-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.eyebrow{color:#6a947b;letter-spacing:.16em;margin:0 0 8px;font-size:11px;font-weight:700}h2{color:#214c38;margin:0;font-size:25px}.subtext{color:#7b8c82;margin:8px 0 0;font-size:14px}.primary-button{color:#fff;background:#236b4b;border:none;border-radius:10px;padding:13px 22px;font-weight:700;transition:background .2s,transform .2s}.primary-button:hover{background:#174b37;transform:translateY(-1px)}.outline-button{color:#286044;background:#fff;border:1px solid #a9c2b1;border-radius:9px;padding:11px 18px;font-weight:600}.tournament-list{grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:18px;display:grid}.tournament-card{color:#263b32;text-align:left;background:#fff;border:1px solid #dce9df;border-radius:14px;justify-content:space-between;align-items:center;gap:15px;width:100%;padding:24px;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 3px 12px #1e462d0a}.tournament-card:hover{transform:translateY(-3px);box-shadow:0 7px 20px #1e462d1a}.card-label{color:#83a58d;letter-spacing:.15em;font-size:10px;font-weight:700}.tournament-card h3{color:#214c38;margin:9px 0;font-size:19px}.tournament-card p{color:#87968c;margin:0;font-size:13px}.card-right{align-items:center;gap:12px;display:flex}.status-label{color:#34704c;white-space:nowrap;background:#e9f3eb;border-radius:20px;padding:6px 10px;font-size:11px}.arrow{color:#6a947b;font-size:27px}.back-button{color:#47765b;background:0 0;border:none;margin-bottom:25px;padding:0;font-weight:600}.back-button:hover{color:#174b37}.event-heading{background:#eaf3ec;border-radius:14px;margin-bottom:35px;padding:24px}.list-heading{margin-bottom:18px}.search-input{background:#fff;border:1px solid #d8e5db;border-radius:10px;outline:none;width:100%;margin-bottom:15px;padding:15px 17px}.search-input:focus,.modal input:focus{border-color:#4d9569;box-shadow:0 0 0 3px #4d95691f}.filter-area{flex-wrap:wrap;gap:12px;margin-bottom:22px;display:flex}.filter-area label{color:#52705d;align-items:center;gap:9px;font-size:13px;font-weight:600;display:flex}.filter-area select{color:#345a43;background:#fff;border:1px solid #d8e5db;border-radius:8px;padding:9px 30px 9px 12px}.participant-list{gap:15px;display:grid}.participant-card{background:#fff;border:1px solid #e0eae2;border-radius:13px;padding:20px;box-shadow:0 3px 10px #1e462d09}.participant-top{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:17px;display:flex}.division-label{color:#397653;background:#edf5ef;border-radius:5px;padding:5px 10px;font-size:11px;font-weight:700;display:inline-block}.participant-top h3{color:#244b36;margin:9px 0 5px;font-size:19px}.participant-top p{color:#85938a;margin:0;font-size:13px}.small-button{color:#397653;background:#fff;border:1px solid #d5e4d8;border-radius:7px;padding:7px 14px;font-size:12px}.round-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:17px;display:grid}.round-item{text-align:center;background:#f1f6f2;border-radius:8px;flex-direction:column;gap:7px;padding:11px 8px;display:flex}.round-item span{color:#809287;font-size:11px}.round-item strong{color:#286044;font-size:15px}.result-area{border-top:1px solid #edf1ed;justify-content:space-between;align-items:center;gap:12px;padding-top:14px;display:flex}.result-area>span{color:#708579;font-size:13px;font-weight:600}.result-button{color:#286044;background:#eaf3ec;border:none;border-radius:8px;padding:10px 14px;font-size:13px;font-weight:700}.empty-message{text-align:center;color:#84958a;padding:40px}.simple-section{background:#fff;border:1px solid #e0eae2;border-radius:13px;padding:25px}.simple-section h2{margin-bottom:12px}.final-card{color:#315b40;background:#f0f6f1;border-radius:9px;margin-top:15px;padding:17px}.final-card p{margin:7px 0}.final-card span{color:#66836e;font-size:13px}.bottom-nav{z-index:10;padding:9px 10px calc(9px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #dce8df;justify-content:center;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -3px 15px #1e462d0f}.bottom-nav button{color:#91a096;background:0 0;border:none;flex-direction:column;flex:1;align-items:center;gap:4px;max-width:220px;padding:6px;font-size:12px;font-weight:600;display:flex}.bottom-nav button span{font-size:20px}.bottom-nav button.active{color:#236b4b}.modal-overlay{z-index:30;background:#0f23188c;justify-content:center;align-items:center;padding:18px;display:flex;position:fixed;inset:0;overflow-y:auto}.modal{background:#fff;border-radius:16px;width:min(100%,520px);max-height:90vh;padding:25px;overflow-y:auto;box-shadow:0 15px 50px #0003}.modal-heading{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.modal-heading h2{font-size:21px}.modal-heading button{color:#315b40;background:#f0f5f1;border:none;border-radius:50%;width:34px;height:34px;font-size:22px}.modal label{color:#52705d;flex-direction:column;gap:7px;margin-bottom:15px;font-size:13px;font-weight:600;display:flex}.modal input{background:#fff;border:1px solid #d8e5db;border-radius:8px;outline:none;width:100%;padding:12px}.form-subheading{color:#286044;margin:23px 0 14px;font-size:16px}.modal-actions{justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.result-modal{width:min(100%,400px)}.result-person{color:#286044;margin-bottom:15px;font-size:17px;font-weight:700}.result-option{text-align:left;color:#315b40;background:#f8faf8;border:1px solid #e0eae2;border-radius:8px;width:100%;margin:7px 0;padding:13px 15px;display:block}.result-option:hover{background:#eaf3ec;border-color:#a9c9b2}.full-button{width:100%;margin-top:20px}@media (width<=650px){.header{padding:22px 18px}.home-page,.main-page{width:calc(100% - 28px);padding:27px 0}.page-heading,.event-heading,.list-heading{align-items:flex-start}.page-heading{flex-direction:column}.event-heading{flex-direction:column;padding:19px}.list-heading{flex-direction:row;align-items:center}.primary-button{padding:11px 14px;font-size:13px}.tournament-list{grid-template-columns:1fr}.tournament-card{padding:19px}.round-list{gap:5px}.round-item{padding:10px 4px}.round-item span{font-size:10px}.round-item strong{font-size:14px}.participant-card{padding:15px}.result-area{flex-direction:column;align-items:flex-start}.result-button{text-align:left;width:100%}.bottom-nav button{font-size:11px}}
