:root{font-family:Avenir Next,Hiragino Sans,Yu Gothic,sans-serif;color:#10243e;background:radial-gradient(circle at top left,rgba(255,214,153,.5),transparent 28%),linear-gradient(180deg,#fffdf7,#f5f7ff 52%,#eef6ff);line-height:1.5;font-weight:400}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input{font:inherit}.app-shell{min-height:100vh;padding:32px 20px 48px}.screen{width:100%;max-width:1180px;margin:0 auto;display:grid;gap:20px}.screen>*{width:100%;min-width:0}.hero-card,.card{width:100%;min-width:0;border:1px solid rgba(16,36,62,.08);border-radius:24px;background:#ffffffe0;box-shadow:0 20px 60px #0f234014;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);overflow:hidden}.hero-card{padding:28px}.card{padding:24px}.accent-card{background:linear-gradient(145deg,#effcf7,#d8f4ee)}.eyebrow{margin:0 0 8px;text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;color:#1d4ed8}h1,h2,p{margin-top:0}h1{margin-bottom:10px;font-size:clamp(2rem,4vw,3.4rem);line-height:1.1}h2{margin-bottom:16px;font-size:1.15rem}.hero-copy{margin-bottom:0;color:#44546a}.grid{display:grid;gap:20px}.two-up,.result-top,.result-bottom{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.form-card{display:grid;gap:16px}.field{display:grid;gap:8px}.input-mode-toggle{display:flex;gap:10px;flex-wrap:wrap}.field span{font-weight:600}.field input{width:100%;padding:14px 16px;border-radius:16px;border:1px solid rgba(16,36,62,.14);background:#fdfefe}.number-input-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:stretch}.stepper-buttons{display:grid;grid-template-rows:1fr 1fr;gap:6px}.stepper-button{width:40px;min-height:24px;border-radius:10px;border:1px solid rgba(16,36,62,.12);background:#fff;cursor:pointer;font-weight:700}.invalid-text-input{border-color:#d92d20!important;background:#fff1f0!important;color:#b42318}.field-warning{margin:0;font-size:.84rem;color:#b42318;font-weight:700}.field input:focus,.probability-slider:focus{outline:2px solid rgba(29,78,216,.24);outline-offset:2px}.primary-button,.secondary-button{border:none;border-radius:999px;padding:14px 20px;font-weight:700;cursor:pointer;transition:transform .16s ease,opacity .16s ease}.primary-button{background:linear-gradient(135deg,#0f766e,#2563eb);color:#fff}.secondary-button{background:#ffffffeb;color:#10243e;border:1px solid rgba(16,36,62,.12)}.subtle-button{opacity:.7;font-size:.8em}.draw-toggle{display:inline-flex;align-items:center;gap:8px;text-align:right;-webkit-tap-highlight-color:transparent}.draw-toggle input{display:none}.draw-toggle-switch{width:54px;height:30px;border-radius:999px;background:#c8c8c8;position:relative;transition:background-color .15s ease,box-shadow .15s ease}.draw-toggle-switch:before{content:"";position:absolute;width:24px;height:24px;top:3px;left:4px;border-radius:50%;background:#fff;transition:transform .2s ease}.draw-toggle input:checked+.draw-toggle-switch:before{transform:translate(22px)}.draw-toggle input:checked+.draw-toggle-switch{background:#4b5563;transition:background .2s ease}.primary-button:disabled{opacity:.45;cursor:not-allowed}.primary-button:not(:disabled):hover,.secondary-button:hover{transform:translateY(-1px)}.summary-list{margin:0;display:grid;gap:14px}.summary-list.compact{gap:10px}.summary-list div{display:flex;justify-content:space-between;gap:16px}.summary-list dt{color:#516175}.summary-list dd{margin:0;font-weight:700}.error-list{margin:16px 0 0;padding-left:20px;color:#b42318}.hint-text{margin-bottom:0;color:#516175}.config-help{margin-top:16px}.share-card{width:100%;max-width:1180px;min-width:0;margin:0 auto 20px}.share-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.share-url-panel{margin-top:14px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:stretch}.share-url-box{padding:14px 16px;border-radius:16px;background:#0f172a;border:1px solid rgba(15,23,42,.18);color:#e2e8f0;overflow-wrap:anywhere;min-width:0}.share-url-box code{display:block;white-space:pre-wrap;word-break:break-all;font-size:.9rem;line-height:1.45;color:inherit}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.toolbar-left,.toolbar-right{flex:1;display:flex}.toolbar-left button,.toolbar-right button{width:100%}.status-row{justify-content:flex-end;display:flex;gap:10px}.status-row,.status-pill{flex:1;display:flex}.status-row .status-pill,.status-pill button{width:100%}.status-pill{display:flex;align-items:center;justify-content:center;border-radius:999px;padding:8px 12px;background:#2563eb1f;color:#1d4ed8;font-weight:700;font-size:.9rem}.status-pill-accent{background:#0f766e24;color:#0f766e}.status-pill-error{background:#d92d201f;color:#b42318}.last-updated-text{margin-left:auto}.section-heading{display:flex;align-items:center;justify-content:space-between;width:100%;gap:16px;margin-bottom:16px}.match-table-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%}.share-heading{display:flex;align-items:center;justify-content:space-between}.slider-card{display:grid;gap:16px}.slider-value{font-weight:700;color:#1d4ed8}.slider-heading-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.slider-reset-button{padding:10px 14px}.probability-slider{width:100%;accent-color:#0f766e}.slider-mini-chart-card{display:grid;gap:14px;padding:18px;border-radius:20px;background:linear-gradient(135deg,#f7fbff,#fff8ef);border:1px solid rgba(16,36,62,.08)}.slider-outcome-graph{display:grid;grid-template-columns:minmax(180px,220px) minmax(0,1fr);gap:18px;align-items:center}.slider-outcome-pie-block{display:flex;justify-content:center}.slider-outcome-pie{width:min(180px,100%);aspect-ratio:1;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 0 1px #ffffffa6}.slider-outcome-pie-center{width:46%;aspect-ratio:1;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fffffff2;color:#24364d;font-size:1rem;font-weight:800;text-align:center;line-height:1.2;box-shadow:0 10px 24px #24364d14}.slider-outcome-legend{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.slider-outcome-legend-row{display:grid;justify-items:center;gap:8px;align-content:start;text-align:center;color:#24364d}.slider-preview-copy{margin:0;color:#516175;line-height:1.5}.slider-preview-swatch{width:14px;height:14px;border-radius:999px}.slider-preview-swatch-win{background:#0f766e}.slider-preview-swatch-draw{background:#f59e0b}.slider-preview-swatch-loss{background:#2563eb}.slider-embedded-chart-card{display:grid;gap:12px;padding:18px;border-radius:20px;background:#f8fbff;border:1px solid rgba(16,36,62,.08)}.chart-shell-embedded{height:260px}.slider-metadata{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;color:#516175}.safe-label{margin-bottom:8px;font-size:clamp(2rem,4vw,3rem);font-weight:800}.safe-probability{margin-bottom:16px;font-size:1.35rem;font-weight:700;line-height:1.5;overflow-wrap:anywhere}.safe-subsection{display:grid;gap:6px;color:#324252}.probability-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.probability-item{display:flex;justify-content:space-between;gap:16px;border-radius:16px;padding:14px 16px;background:#f6f9ff}.probability-item.active{background:linear-gradient(135deg,#d9f4ef,#e8f0ff);border:1px solid rgba(15,118,110,.18)}.team-status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}.team-status-card{display:grid;gap:6px;padding:16px;border-radius:18px;background:#f7faff}.selected-team-card{border:1px solid rgba(15,118,110,.28);background:linear-gradient(135deg,#d9f4ef,#eef8ff)}.team-status-top{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}.team-name-inline-input{width:100%;max-width:100%;min-width:0;padding:10px 12px;border-radius:14px;border:1px solid rgba(16,36,62,.14);background:#fff;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-status-top .chip-button{width:100%;justify-self:stretch}.match-p-label{font-size:clamp(1.6rem,3vw,2.4rem)}.residual-probability-list{display:grid;gap:10px}.compact-residual-list{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.residual-probability-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:14px;background:#f7faff}.compact-residual-row{padding:10px 12px}.endgame-grid{display:grid;gap:16px}.endgame-summary{display:grid;gap:14px}.endgame-block{display:grid;gap:6px;width:100%;align-content:center;min-height:108px}.endgame-sufficient,.endgame-necessary{margin-bottom:0}.endgame-line{display:grid;grid-template-columns:minmax(120px,180px) minmax(0,1fr);gap:14px;align-items:stretch}.endgame-line-title{display:flex;align-items:center;justify-content:center;gap:8px;text-align:center}.endgame-info-button{width:24px;height:24px;border:1px solid rgba(16,36,62,.16);border-radius:999px;background:#f8fafc;color:#516175;font-size:.84rem;font-weight:800;line-height:1;cursor:pointer}.endgame-info-button:hover{background:#eef2f7}.endgame-info-text{margin:0;padding:10px 12px;border-radius:12px;background:#f8fafc;color:#516175;font-size:.82rem;line-height:1.5}.endgame-line-content{display:grid;gap:8px;align-content:center}.endgame-condition-part,.endgame-condition-separator{display:block}.endgame-condition-separator{font-size:.98rem;font-weight:700;color:#516175}.endgame-description{margin:0;font-size:.78rem;color:#516175}.endgame-legend{margin:0;font-size:.76rem;color:#6b7280;text-align:right}.matrix-shell{width:100%;border:1px solid rgba(16,36,62,.08);border-radius:18px;background:#fdfefe}.matrix-shell-fit{width:100%}.matrix-help{display:grid;gap:4px;margin-bottom:14px;color:#516175;font-size:.88rem}.matrix-table{width:100%;border-collapse:collapse;border-spacing:0}.matrix-table-fit{width:100%;min-width:100%;table-layout:fixed}.matrix-table th,.matrix-table td{text-align:center;vertical-align:middle;padding:2px;background:#fff}.matrix-row-accent th,.matrix-row-accent td,.matrix-total-row th,.matrix-total-row td{border-bottom:none}.matrix-table th,.matrix-table td{border-right:1px solid rgba(16,36,62,.12)}.matrix-table th:last-child,.matrix-table td:last-child{border-right:none}.matrix-table th{color:#24364d;font-weight:800}.matrix-corner{text-align:left}.matrix-corner-sticky,.matrix-column-header,.matrix-row-header{background:#f7faff}.matrix-row-header-fit{width:11%;min-width:40px;max-width:56px;font-size:clamp(.5rem,1.4vw,.72rem);color:#24364d;font-weight:800;line-height:1.15;writing-mode:horizontal-tb;text-orientation:mixed;overflow:hidden}.matrix-row-header-label{display:block;width:100%;max-width:100%;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-all;line-break:anywhere;line-height:1.15;overflow:hidden}.matrix-column-header-fit{width:auto;overflow:hidden}.matrix-column-header-label{display:block;width:100%;max-width:100%;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-all;line-break:anywhere;font-size:clamp(.44rem,1.15vw,.64rem);line-height:1.1;color:#24364d;font-weight:800;overflow:hidden}.selected-matrix-column{background:#d7ebff}.selected-matrix-column-cell{background:#eef7ff!important;box-shadow:inset 0 0 0 999px #4496ff1a}.selected-matrix-column-cell .matrix-button{border-color:#4496ff33}.selected-matrix-column-cell .matrix-point-input{border-color:#4496ff3d;background:#ffffffeb}.matrix-cell{width:auto;height:76px}.matrix-cell-fit{padding:2px}.matrix-cell-missing-point{background:#fff7d6!important}.matrix-cell-missing-point .matrix-point-input{background:#fffdf2}.matrix-cell-invalid-wins{background:linear-gradient(135deg,#ffe4e6,#ffd1d8)!important;box-shadow:inset 0 0 0 2px #be185d33}.matrix-cell-invalid-wins .matrix-point-input{background:#fff5f7}.matrix-inline-editor{display:grid;gap:3px}.matrix-button{width:100%;min-height:28px;border-radius:8px;border:1px solid rgba(16,36,62,.12);background:#fff;font-weight:800;color:#24364d;cursor:pointer;padding:2px;font-size:clamp(.44rem,1.12vw,.64rem);line-height:1.05}.matrix-button-fit{min-height:28px}.matrix-button.invalid{border-color:#d92d20;background:#fff1f0;color:#b42318}.matrix-button.attention{border-color:#f59e0b}.matrix-button-label{display:block}.matrix-unplayed{color:#7b8794}.matrix-ww,.matrix-ll{background:#d9f4ef;color:#0f766e}.matrix-bye{background:#fff7ed;color:#b45309}.matrix-wd,.matrix-dl{background:#eef8ff;color:#1d4ed8}.matrix-wl,.matrix-dd{background:#e8f0ff;color:#1d4ed8}.matrix-inline-editor.single-team{display:grid;gap:4px}.matrix-total-cell{width:auto;padding:2px}.matrix-total-content{display:grid;gap:2px;min-height:46px;padding:3px 2px;border-radius:8px;background:#f7faff;font-size:clamp(.42rem,1.08vw,.62rem);line-height:1.15;color:#24364d;font-weight:700;text-align:center;justify-items:center}.matrix-point-input-frame{display:block;min-width:0;font-size:clamp(.44rem,1.08vw,.62rem)}.matrix-point-input{width:100%;min-width:0;padding:3px 2px;border-radius:6px;border:1px solid rgba(16,36,62,.14);background:#fff;text-align:center}.matrix-point-input-fit{font-size:clamp(.44rem,1.08vw,.62rem);font-weight:700;color:#24364d}.matrix-point-input:disabled{background:#f3f4f6;color:#98a2b3;cursor:not-allowed}.matrix-point-input.invalid{border-color:#d92d20;background:#fff1f0;color:#b42318}@media (max-width: 720px),(hover: none) and (pointer: coarse){.matrix-point-input-frame{--matrix-point-scale: .44;position:relative;height:calc(1.5em + 8px);overflow:hidden;border-radius:6px}.matrix-point-input-frame .matrix-point-input{position:absolute;top:0;left:0;width:calc(100% / var(--matrix-point-scale));height:calc(100% / var(--matrix-point-scale));font-size:max(16px,calc(1em / var(--matrix-point-scale)));line-height:1.5;padding:calc(3px / var(--matrix-point-scale)) calc(2px / var(--matrix-point-scale));border-width:calc(1px / var(--matrix-point-scale));border-radius:calc(6px / var(--matrix-point-scale));transform:scale(var(--matrix-point-scale));transform-origin:top left}.matrix-point-input-frame:focus-within{outline:2px solid rgba(29,78,216,.7)}.matrix-point-input-frame .matrix-point-input:focus{outline:none}}.matrix-point-warning{margin:0;font-size:.72rem;line-height:1.2;color:#b42318;font-weight:700}.table-error-text{margin:12px 0 0;color:#b42318;font-weight:700}.diagonal-cell{height:82px;min-height:82px;border-radius:8px;background-color:#d1d5db!important;box-shadow:inset 0 0 0 999px #d1d5db}.bye-cell{border-radius:8px;background:#fff7ed;color:#b45309;font-weight:700}.chip-button{border:1px solid rgba(16,36,62,.12);background:#fff;color:#10243e;border-radius:999px;padding:10px 14px;cursor:pointer}.chip-button.active{background:linear-gradient(135deg,#d9f4ef,#e8f0ff);border-color:#0f766e66}.chart-card{min-height:420px}.chart-shell{width:100%;height:320px}.chart-caption{margin-top:12px;margin-bottom:0;color:#516175}.ranking-shell{width:100%;min-width:0;overflow-x:hidden}.ranking-table{width:100%;min-width:0;border-collapse:collapse;table-layout:fixed}.ranking-table th,.ranking-table td{padding:12px 10px;border-bottom:1px solid rgba(16,36,62,.08);text-align:left;overflow-wrap:anywhere}.ranking-row.qualified-row{background:#0f766e0f}.ranking-row.qualification-border-row td{border-bottom:3px solid rgba(15,118,110,.5)}.ranking-row.selected-team-row{background:linear-gradient(135deg,#d9f4eff2,#e8f0fff2)}.ranking-row.selected-team-row td{font-weight:700}.ranking-table th{color:#516175}.ranking-record-cell span{display:block}.ranking-win-rate{margin-top:3px;color:#516175;font-size:.82em;font-weight:700;white-space:nowrap}.selected-team-row{background:#0f766e14}@media (max-width: 720px){.share-url-panel{grid-template-columns:1fr}.matrix-column-header-label{min-height:0;font-size:.4rem}.matrix-row-header-fit{width:12%;min-width:36px;max-width:44px}.matrix-cell{height:88px}.matrix-summary-bottom-content{min-height:58px}.app-shell{padding:20px 14px 32px}.card,.hero-card{padding:20px;border-radius:20px}.summary-list div,.slider-metadata,.section-heading{flex-direction:column;align-items:flex-start}.slider-outcome-graph{grid-template-columns:1fr}.slider-outcome-pie{width:min(160px,100%)}.toolbar-actions,.matrix-shell{width:100%}.endgame-line{grid-template-columns:1fr;gap:10px}.endgame-line-title{justify-content:flex-start;text-align:left}.share-heading{flex-direction:row;align-items:center}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:grid;place-items:center;background:#0006}.modal-card{width:min(420px,calc(100vw - 32px));padding:20px;border-radius:16px;background:#fff;box-shadow:0 16px 40px #0003}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px}.modal-actions button{flex:1}
