/* Product compositions: navigation, directory, event hub and working surfaces.
   Page structures use these patterns; bracket/export geometry is independent. */
:root{--product-width:1280px;--nav-height:88px}
h1{font-size:clamp(24px,2.2vw,32px);line-height:1.45;word-break:normal;overflow-wrap:break-word;text-wrap:pretty}h2{font-size:clamp(19px,1.7vw,24px)}h3{font-size:17px}.ui-icon{width:20px;height:20px;flex:0 0 auto;vertical-align:middle}.button .ui-icon,.btn .ui-icon{width:18px;height:18px}.spoban-symbol{display:grid;place-items:center;background:var(--navy);color:var(--accent);width:44px;height:44px;border-radius:12px}.spoban-symbol svg{width:32px;height:32px}.spoban-wordmark{font:800 29px/1.1 system-ui,sans-serif;letter-spacing:-.05em;color:var(--navy)}.spoban-wordmark>span{display:block;margin-top:5px;font:600 9px/1.3 var(--font);letter-spacing:.01em;color:var(--muted)}
.product-header .site-nav{width:min(var(--product-width),calc(100% - 48px));min-height:var(--nav-height);gap:28px}.product-navigation{flex:1}.mobile-menu-trigger{display:none}.product-nav-items{display:flex;align-items:center;justify-content:flex-end;gap:6px}.product-navigation:not([open])>.product-nav-items{display:flex}.product-nav-items>a,.product-tools>summary{display:flex;align-items:center;gap:7px;padding:12px 13px;font-size:13px;font-weight:700;color:var(--muted);white-space:nowrap;cursor:pointer;border-radius:8px}.product-nav-items>a:hover,.product-nav-items>a[aria-current=page],.product-tools>summary:hover{background:var(--brand-soft);color:var(--brand);text-decoration:none}.product-nav-items .nav-account{margin-left:10px;color:var(--ink)}.product-nav-items .nav-create{color:white;background:var(--brand);margin-left:6px;padding:12px 16px}.product-tools{position:relative}.product-tools>summary{list-style:none}.product-tools>summary:after{content:'⌄';font-size:16px}.product-tools>summary::-webkit-details-marker{display:none}.product-tools>div{position:absolute;right:0;top:calc(100% + 10px);width:248px;padding:10px;background:white;border:1px solid var(--line);border-radius:12px;box-shadow:0 16px 48px #12354620;z-index:100}.product-tools>div a{display:block;padding:11px 14px;font-size:14px;border-radius:6px}.product-tools>div a:hover{background:var(--brand-soft)}
/* Deliberate title hierarchy: display only on landing, compact elsewhere. */
.page-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px}.page-intro h1{margin:6px 0 8px}.page-intro p{color:var(--muted);margin-bottom:0;max-width:680px}.page-intro .eyebrow{font-size:10px;color:var(--brand);margin-bottom:4px}.section-topline{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.section-topline h2{margin:0}.section-topline p{font-size:13px;color:var(--muted);margin:4px 0 0}.section-topline>span{font-size:12px;color:var(--muted);white-space:nowrap}.section.section-directory{max-width:var(--product-width);padding:32px 0}.directory-navigation{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:24px;border-bottom:1px solid var(--line);padding-bottom:10px}.directory-navigation a{padding:8px 14px;color:var(--muted);font-size:13px;font-weight:650;border-radius:8px}.directory-navigation a[aria-current=page]{color:var(--brand);background:var(--brand-soft)}.directory-navigation a:hover{text-decoration:none;background:#eaf1f1}
.search-workspace{background:white;border:1px solid var(--line);border-radius:12px;padding:20px 24px;margin:0 0 26px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:24px;align-items:center}.search-workspace-title{display:flex;gap:12px;align-items:center}.search-workspace-title>.ui-icon{background:var(--brand-soft);width:42px;height:42px;padding:11px;border-radius:10px;color:var(--brand)}.search-workspace-title strong{display:block;font-size:14px}.search-workspace-title small{font-size:12px}.search-field{display:flex;gap:8px;min-width:0;align-items:center}.search-field input{flex:1;min-width:0;width:100%}.search-field label{font-size:13px}.search-hint{font-size:12px;color:var(--muted);margin:8px 0 0}.search-workspace fieldset{padding:0;border:0;margin-top:14px;display:flex;gap:12px;flex-wrap:wrap}.search-workspace legend{float:left;font-size:12px;margin-right:12px;color:var(--muted)}.search-workspace fieldset label{font-size:13px;font-weight:500}.results-heading{display:flex;align-items:baseline;gap:12px;margin:20px 0 14px}.results-heading h2{font-size:18px;margin:0}.results-heading span{font-size:12px;color:var(--muted)}
/* Event directory keeps existing table/JS hooks, gives each record a clear unit. */
.event-results-wrap{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:white;margin-bottom:20px}.event-directory{width:100%;border-collapse:collapse;table-layout:fixed;text-align:left}.event-directory th{background:#edf3f3;color:var(--muted);font-size:11px;letter-spacing:.04em;padding:12px 18px;text-align:left}.event-directory th:nth-child(1){width:142px}.event-directory th:nth-child(2){width:46%}.event-directory th:nth-child(4){width:120px}.event-directory th:nth-child(5){width:130px}.event-directory td{border-bottom:1px solid var(--line);padding:18px;vertical-align:middle;font-size:13px;overflow-wrap:break-word}.event-directory tr:last-child td{border-bottom:0}.event-directory tbody tr:hover{background:#f5faf9}.event-directory td:nth-child(2)>a{color:var(--ink);font-size:16px;font-weight:750;line-height:1.5;display:block}.event-directory td:nth-child(2)>a:hover{color:var(--brand)}.event-directory td:nth-child(1)>small{display:block;margin-top:6px;font-size:11px}.event-directory td:nth-child(4),.event-directory td:nth-child(5){font-size:12px;font-variant-numeric:tabular-nums;color:var(--muted)}.event-directory .badge{font-size:11px;padding:3px 9px;white-space:normal}.event-results-footer{display:flex;justify-content:center;padding:12px}.event-directory th:nth-child(n+6){width:90px}.search-result-list{display:grid;gap:0;background:white;border:1px solid var(--line);border-radius:12px;overflow:hidden}.search-result-list>article{padding:20px 24px;border-bottom:1px solid var(--line)}.search-result-list h2{font-size:18px;margin:0 0 6px}.search-result-list p{font-size:12px;color:var(--muted);margin:0 0 8px}.search-result-list>article>div{font-size:14px;color:var(--muted)}
/* Landing: two tasks, an actual visual example, compact service navigation. */
.product-hero{min-height:0;background:var(--navy)}.product-hero:before,.product-hero:after{display:none}.product-hero .hero-inner{padding:58px 0 50px;display:grid;grid-template-columns:1.2fr 1fr;gap:56px;align-items:center}.product-hero h1{font-size:clamp(32px,3.4vw,48px);max-width:650px;line-height:1.35;margin:16px 0 20px;letter-spacing:-.04em}.product-hero .lead{font-size:15px;max-width:550px}.product-hero .hero-caption{font-size:12px;margin-top:22px}.product-hero .eyebrow{display:flex;align-items:center;gap:10px}.product-hero .eyebrow:before{content:'';width:22px;height:2px;background:var(--accent)}.event-preview{background:#fff;border-radius:18px;color:var(--ink);box-shadow:0 24px 70px #071c2b40;padding:24px;transform:rotate(-1deg)}.event-preview-header{display:flex;align-items:center;gap:12px;margin-bottom:22px}.event-preview-header .ui-icon{color:var(--brand);width:32px;height:32px}.event-preview-header strong{display:block;font-size:17px}.event-preview-header small{font-size:11px}.preview-bracket{display:grid;grid-template-columns:minmax(0,1fr) 28px minmax(0,.85fr);gap:12px;align-items:center}.preview-seeds{display:grid;gap:12px}.preview-seeds>div{border:1px solid var(--line);border-radius:9px;padding:11px 13px;display:flex;align-items:center;justify-content:space-between;font-size:13px;gap:10px}.preview-seeds span{font-weight:600}.preview-seeds b{color:var(--brand);font-size:18px;font-variant-numeric:tabular-nums}.preview-connector{height:80px;border-block:2px solid #bed0d3;border-right:2px solid #bed0d3}.preview-final{background:var(--brand-soft);border-radius:12px;padding:20px 14px;text-align:center}.preview-final small{display:block;color:var(--brand)}.preview-final strong{font-size:17px;display:block;margin:8px 0}.preview-final .badge{background:white}.preview-bottom{display:flex;gap:16px;border-top:1px solid var(--line);padding-top:17px;margin-top:22px;color:var(--muted);font-size:11px}.preview-bottom span{display:flex;align-items:center;gap:6px}.preview-bottom .ui-icon{width:14px;height:14px}.product-hero .hero-inner>div:first-child{min-width:0}.product-paths{display:grid;grid-template-columns:1fr 1fr;gap:32px}.product-path{padding:16px 0 20px;display:grid;grid-template-columns:48px 1fr;gap:18px;border-bottom:1px solid var(--line)}.product-path>.ui-icon{width:44px;height:44px;padding:10px;border-radius:12px;background:var(--brand-soft);color:var(--brand)}.product-path h2{font-size:23px;margin:0 0 10px}.product-path p{font-size:14px;color:var(--muted);margin-bottom:18px}.service-directory{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:white}.service-directory>a{padding:24px;border-right:1px solid var(--line);color:var(--ink);display:flex;flex-direction:column;gap:10px}.service-directory>a:last-child{border:0}.service-directory>a:hover{background:var(--brand-soft);text-decoration:none}.service-directory .ui-icon{color:var(--brand);width:24px;height:24px}.service-directory strong{font-size:16px}.service-directory small{font-size:12px;line-height:1.6}
/* Tournament viewing is a hub, not a second landing hero. */
.hero.event-header{background:var(--navy);min-height:0}.event-header:before,.event-header:after{display:none}.event-header .hero-inner{padding:28px 0 30px;display:block;max-width:var(--product-width)}.event-header h1{font-size:clamp(24px,2.5vw,34px);line-height:1.5;max-width:950px;margin:12px 0;color:white}.event-header .lead{font-size:13px;margin:0;max-width:none}.event-header .meta-list{margin-top:14px;font-size:12px;gap:16px}.event-header .meta-list span{border:0;background:transparent;padding:0;color:#c4d8dc}.event-header .actions{margin-top:18px;gap:8px}.event-header .eyebrow{font-size:10px;margin:0}.event-header .button{font-size:12px;padding:8px 13px;min-height:36px}.event-header .favorite-button{float:right}.event-jump-nav{display:flex;align-items:center;gap:8px;padding:12px 0;margin:auto;width:min(1216px,calc(100% - 64px));border-bottom:1px solid var(--line);overflow:auto}.event-jump-nav a{color:var(--muted);font-size:13px;padding:9px 14px;white-space:nowrap;border-radius:8px}.event-jump-nav a[aria-current]{color:var(--brand);background:var(--brand-soft)}#tournament-content.section{width:min(1216px,calc(100% - 64px));padding:26px 0}.event-board-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px}.event-board-header h2{font-size:19px;margin:0}.event-board-header p{font-size:12px;color:var(--muted);margin:4px 0 0}.event-board-header>.badge{font-size:11px}.event-board-surface{background:white;border:1px solid var(--line);border-radius:12px;padding:16px;overflow:hidden}.classification-tournaments{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:20px}.classification-tournaments>div{padding:16px;background:white;border:1px solid var(--line);border-radius:12px;min-width:0}.classification-title{font-size:15px;margin-bottom:12px}.tournament-wrap{background:white}.event-output{width:min(1216px,calc(100% - 64px));margin:0 auto 28px;padding:16px 20px;background:white;border:1px solid var(--line);border-radius:12px;display:block}.event-output>h2{font-size:15px;margin:0 0 10px}.share-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:0;margin:0;border:0}.share-toolbar>a,.share-toolbar>button{display:inline-flex;align-items:center;gap:7px;min-height:38px;border:1px solid var(--line);background:white;color:var(--ink);padding:8px 13px;font-size:12px;border-radius:8px}.share-toolbar>a:first-child{background:var(--brand);border-color:var(--brand);color:white}.share-utilities{position:relative}.share-utilities>summary{padding:9px 13px;font-size:12px;color:var(--brand);cursor:pointer;list-style:none;border-radius:8px;background:var(--brand-soft)}.share-utilities>div{position:absolute;z-index:60;right:0;top:100%;background:white;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:10px;min-width:230px;padding:10px;display:grid;gap:6px}.share-utilities button,.share-utilities a{padding:10px 12px;text-align:left;border:0;background:white;color:var(--ink);font:inherit;font-size:13px;cursor:pointer;border-radius:6px}.share-utilities button:hover,.share-utilities a:hover{background:var(--brand-soft)}.tournament-supplements.section{padding:0 0 24px}.tournament-tab-nav{padding:0;background:transparent;gap:4px;border-bottom:1px solid var(--line);border-radius:0;margin-bottom:18px}.tournament-tab-nav a{padding:13px 20px;font-size:13px;border-radius:8px 8px 0 0}.tournament-tab-nav a[aria-selected=true]{background:var(--navy);color:white;box-shadow:none}.tournament-schedule.league-tab-panel{border:0;padding:0;margin:0;background:transparent}.tournament-schedule h2{font-size:18px}.tournament-schedule-table{background:white;border:1px solid var(--line);border-collapse:separate;border-spacing:0;border-radius:10px;overflow:hidden}.tournament-schedule-table td{padding:14px 16px;font-size:13px}.tournament-schedule-table th{font-size:11px;padding:12px 16px}.tournament-facts{background:white;border:1px solid var(--line);border-radius:12px;padding:18px}.tournament-discussion.section{margin-bottom:24px;padding:22px}.tournament-discussion h2{font-size:18px}.tournament-discussion>h2{margin-bottom:18px}
/* Guide: readable contents rail, numbered steps and restrained historical reference. */
.guide-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:40px;align-items:start}.guide-menu{position:sticky;top:110px;padding:8px 0}.guide-menu h2{font-size:12px;letter-spacing:.05em;color:var(--muted);margin-bottom:12px}.guide-menu a{display:block;padding:10px 12px;border-radius:8px;font-size:12px;line-height:1.6;color:var(--muted)}.guide-menu a[aria-current=page],.guide-menu a:hover{color:var(--brand);background:var(--brand-soft);text-decoration:none}.guide-menu .guide-index-link{font-weight:700;color:var(--ink);margin-bottom:12px}.guide-content{min-width:0}.guide-content h1{font-size:clamp(23px,2vw,29px);max-width:780px;line-height:1.55}.guide-current{padding:20px 24px;background:var(--brand-soft);border-radius:10px;margin:20px 0 28px}.guide-current h2{font-size:14px;margin-bottom:8px;display:flex;gap:8px;align-items:center}.guide-current p{font-size:14px;margin:0}.guide-step{display:grid;grid-template-columns:44px 1fr;gap:16px;padding:22px 0;border-top:1px solid var(--line)}.guide-step-number{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:white;border:1px solid var(--line);font-size:14px;color:var(--brand);font-weight:800}.guide-step h2{font-size:18px;margin:4px 0 12px}.guide-step summary{font-size:12px;color:var(--muted);cursor:pointer}.guide-step details[open]{background:white;padding:18px;border-radius:10px;border:1px solid var(--line)}.guide-step details p{font-size:13px}.guide-links{display:flex;flex-wrap:wrap;gap:12px;margin:16px 0}.guide-links a{font-size:13px}.reference-page body>main{max-width:var(--product-width);padding:32px 24px}.reference-page body>.product-header{max-width:none;padding:0}.reference-page body>.product-header img{width:auto}.reference-page .product-header nav{gap:28px}.reference-page body>footer{max-width:none;border-top:1px solid var(--line);padding:24px max(24px,calc((100vw - 1232px)/2));font-size:12px;color:var(--muted)}
/* Working pages: compact heading, clear control groups, recent work before tools. */
.page-titles{min-height:0;margin-bottom:22px}.page-titles .page-title{font-size:clamp(23px,2vw,29px)}.page-titles .eyebrow{font-size:9px;margin-bottom:5px}.container-fluid{padding:26px 30px}.admin-main{padding:26px 32px}.admin-card{padding:24px}.admin-card h1{font-size:27px}.admin-table td{padding:13px 16px}.admin-table th{padding:11px 16px}.admin-search{background:#f0f5f4;padding:16px;border-radius:9px;margin:20px 0}.admin-search input{flex:1;min-width:140px;max-width:540px}.admin-overview{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:22px}.admin-overview h1{font-size:28px;margin:0 0 6px}.admin-overview p{margin:0;color:var(--muted);font-size:13px}.admin-metric{display:flex;gap:12px;align-items:center;padding:16px 20px;background:var(--navy);color:white;border-radius:12px}.admin-metric .ui-icon{color:var(--accent);width:28px;height:28px}.admin-metric strong{font:800 28px/1.2 system-ui,sans-serif}.admin-metric small{display:block;color:#c7dade;font-size:11px}.admin-quick-links{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.admin-quick-links a{display:flex;align-items:center;gap:8px;background:white;border:1px solid var(--line);padding:10px 14px;font-size:12px;border-radius:8px}.workspace-greeting{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.workspace-greeting strong{font-size:20px}.workspace-greeting p{color:var(--muted);font-size:13px;margin:4px 0 0}.workspace-greeting .button{font-size:13px}.mypage-home .row{grid-template-columns:minmax(0,1fr) 264px}.mypage-home .row>div:first-child>.card{padding:0;background:transparent;border:0;box-shadow:none}.mypage-home .tab-content{padding:0}.mypage-home .profile-tab{background:transparent;padding:0;border-bottom:1px solid var(--line);margin-bottom:22px;border-radius:0}.mypage-home .profile-tab a{padding:12px 18px;font-size:13px;border-radius:8px 8px 0 0}.mypage-home .profile-tab a.active{background:var(--navy);color:white}.mypage-home .menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.mypage-home .menu-card{padding:18px;background:white;min-height:0;border-radius:10px}.menu-card h3{font-size:15px;margin:0 0 12px;display:flex;align-items:center;gap:10px}.menu-card h3 .ui-icon{color:var(--brand)}.menu-card-body{gap:8px}.menu-card-body .btn{font-size:12px;padding:7px 12px;min-height:36px}.mypage-activity{margin:0 0 24px}.own-tour-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 16px;align-items:center;padding:16px 0}.own-tour-row h3{font-size:15px;margin:0}.own-tour-row p{grid-column:1;font-size:11px;margin:0}.own-tour-row>.btn{grid-column:2;grid-row:1/3;font-size:12px}.management-context{padding:18px 22px;background:var(--navy);color:white;border-radius:12px;display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.management-context h2{color:white;font-size:18px;margin:0 0 5px}.management-context p{color:#c9dade;font-size:12px;margin:0}.management-context .btn{background:#ffffff10;color:white;border-color:#54727f;font-size:12px;min-height:36px;padding:8px 12px}.management-context .inline-actions{justify-content:flex-end}.management-menu{display:flex;gap:8px;align-items:center;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:20px}.management-menu a{padding:9px 12px;background:white;border:1px solid var(--line);border-radius:8px;color:var(--ink);font-size:12px}.management-menu a:first-child{background:var(--brand-soft);color:var(--brand);border-color:transparent}.management-utility{margin-left:auto;position:relative}.management-utility>summary{font-size:12px;color:var(--muted);cursor:pointer;padding:9px 12px}.management-utility>div{background:white;border:1px solid var(--line);border-radius:10px;padding:16px;width:min(420px,80vw);position:absolute;right:0;z-index:70}.management-utility p{font-size:12px}.management-utility .danger-zone{margin-top:12px;padding:12px}.operation-panel{background:#edf3f2;border:0}.operation-panel .card-header{font-size:12px;padding:12px 16px;background:transparent}.operation-panel .card-block{padding:0 16px 16px}.operation-panel .btn{font-size:12px;min-height:36px;padding:8px 12px}.manage-toolbar h2.section-title{font-size:20px;margin:0}.manage-toolbar>div:first-child p{font-size:12px}.manage-toolbar{margin-bottom:18px}.manage-shell>.card{box-shadow:none}.section-heading{margin-bottom:18px}.section-heading h2{margin-bottom:8px}
@media(max-width:1100px){.product-nav-items>a,.product-tools>summary{padding:10px 8px;font-size:12px}.product-nav-items .ui-icon{display:none}.product-nav-items .nav-account{margin-left:0}.spoban-wordmark{font-size:26px}.product-header .site-nav{gap:18px}.event-directory th:nth-child(2){width:38%}.guide-layout{grid-template-columns:220px minmax(0,1fr)}.mypage-home .row{grid-template-columns:minmax(0,1fr) 220px}}
@media(max-width:800px){.product-header .site-nav{min-height:76px;padding:14px 0;flex-wrap:nowrap;align-items:flex-start}.product-navigation{flex:0 1 auto}.mobile-menu-trigger{display:flex;align-items:center;gap:8px;list-style:none;padding:10px 12px;border:1px solid var(--line);border-radius:8px;color:var(--ink);font-size:12px;cursor:pointer}.mobile-menu-trigger::-webkit-details-marker{display:none}.product-navigation:not([open])>.product-nav-items{display:none}.product-navigation[open]>.product-nav-items{display:flex;position:absolute;right:16px;left:16px;top:75px;padding:14px;background:white;border:1px solid var(--line);box-shadow:0 16px 48px #12354620;border-radius:12px;z-index:100;flex-direction:column;align-items:stretch;gap:4px}.product-nav-items>a,.product-tools>summary{padding:13px;font-size:14px}.product-nav-items .nav-create{margin-left:0;justify-content:center}.product-nav-items .ui-icon{display:block}.product-tools>div{position:static;width:100%;box-shadow:none;border:0;background:var(--soft);margin-top:6px}.product-hero .hero-inner{grid-template-columns:1fr;gap:30px;padding:38px 0}.product-hero h1{font-size:35px}.event-preview{max-width:480px;transform:none}.product-paths{grid-template-columns:1fr;gap:14px}.service-directory{grid-template-columns:1fr 1fr}.service-directory>a:nth-child(2){border-right:0}.service-directory>a:nth-child(-n+2){border-bottom:1px solid var(--line)}.guide-layout{grid-template-columns:1fr;gap:24px}.guide-menu{position:static;border:1px solid var(--line);border-radius:10px;padding:12px;background:white}.guide-menu nav{display:grid;grid-template-columns:1fr 1fr;gap:4px}.guide-menu a{padding:8px;font-size:12px}.guide-content h1{font-size:25px}.search-workspace{grid-template-columns:1fr;gap:14px;padding:18px}.search-workspace-title small{display:none}.event-directory thead{display:none}.event-directory,.event-directory tbody{display:block}.event-directory tr{display:grid;grid-template-columns:1fr 1fr;padding:16px;gap:8px 14px;border-bottom:1px solid var(--line)}.event-directory td{display:block;padding:0;border:0;overflow-wrap:anywhere}.event-directory td:nth-child(1){grid-column:1/-1;display:flex;align-items:center;gap:8px}.event-directory td:nth-child(1)>small{margin:0}.event-directory td:nth-child(2){grid-column:1/-1;margin:4px 0}.event-directory td:nth-child(3){grid-column:1/-1;color:var(--muted);font-size:12px}.event-directory td:nth-child(4):before{content:'開催 ';color:var(--muted)}.event-directory td:nth-child(5):before{content:'更新 ';color:var(--muted)}.event-directory td:nth-child(n+6){margin-top:4px}.event-directory tr:last-child{border:0}.event-directory td[colspan]{grid-column:1/-1}.classification-tournaments{grid-template-columns:1fr}.event-header .hero-inner{padding:24px 0}.event-header h1{font-size:25px}.event-jump-nav{width:calc(100% - 32px)}#tournament-content.section{width:calc(100% - 32px);padding:22px 0}.event-output{width:calc(100% - 32px)}.event-board-surface{padding:10px}.event-board-header>.badge{display:none}.page-intro{align-items:flex-start;gap:14px}.page-intro .button{font-size:12px}.mypage-home .row{grid-template-columns:1fr}.mypage-home .row>div:last-child{display:grid;grid-template-columns:1fr 1fr;gap:16px}.profile-card .avatar{width:64px;height:64px}.profile-card .card-block{padding:20px}.management-context{align-items:flex-start;flex-direction:column}.management-utility{margin-left:0}.management-menu{gap:6px}.admin-overview{align-items:flex-start}.admin-metric{padding:12px;font-size:12px}.admin-metric strong{font-size:23px}.admin-metric .ui-icon{display:none}.container-fluid{padding:22px 16px}}
@media(max-width:480px){.spoban-symbol{width:37px;height:37px;border-radius:10px}.spoban-wordmark{font-size:25px}.spoban-wordmark>span{font-size:8px}.product-header .site-nav{width:calc(100% - 32px);gap:12px}.product-hero h1{font-size:32px}.product-hero .hero-inner{padding:30px 0}.product-hero .actions{margin-top:20px}.product-hero .actions a{flex:1 1 auto;min-height:44px;font-size:13px}.event-preview{padding:18px;border-radius:13px}.event-preview-header{margin-bottom:16px}.event-preview-header strong{font-size:15px}.preview-bracket{grid-template-columns:minmax(0,1fr) 16px minmax(0,.85fr);gap:8px}.preview-seeds>div{font-size:12px;padding:9px}.preview-final{padding:14px 8px}.preview-final strong{font-size:14px}.preview-bottom{gap:12px;font-size:10px}.product-path{grid-template-columns:36px 1fr;gap:12px}.product-path>.ui-icon{width:36px;height:36px;padding:8px}.product-path h2{font-size:20px}.service-directory>a{padding:18px 14px}.service-directory strong{font-size:14px}.page-intro{flex-direction:column}.directory-navigation a{padding:8px 10px;font-size:12px}.search-field{flex-wrap:wrap}.search-field .button{min-height:44px}.search-field input{flex-basis:180px}.event-directory td:nth-child(2)>a{font-size:15px}.guide-menu nav{grid-template-columns:1fr}.guide-content h1{font-size:23px}.guide-current{padding:17px}.guide-step{grid-template-columns:32px 1fr;gap:12px;padding:18px 0}.guide-step-number{width:30px;height:30px;font-size:12px;border-radius:8px}.guide-step h2{font-size:16px}.reference-page body>main{padding:24px 16px}.share-toolbar{gap:6px}.share-toolbar>a,.share-toolbar>button{padding:9px 10px;font-size:12px;min-height:42px}.share-utilities>summary{min-height:42px;padding:10px}.event-header .meta-list{gap:10px}.event-output{padding:16px}.tournament-tab-nav a{padding:11px 12px;font-size:12px}.tournament-supplements.section{padding:0 0 22px}.workspace-greeting{align-items:flex-start;flex-direction:column;gap:12px}.mypage-home .menu-grid{grid-template-columns:1fr}.mypage-home .row>div:last-child{grid-template-columns:1fr}.own-tour-row{gap:8px;grid-template-columns:1fr}.own-tour-row>.btn{grid-column:1;grid-row:auto;justify-self:start}.admin-overview{flex-direction:column;gap:14px}.admin-metric{width:100%}.admin-quick-links a{flex:1 1 140px}.management-context{padding:16px}.event-board-header p{max-width:280px}}

/* Review adjustments: dense work areas and clear boundaries around supporting content. */
main>section.tournament-supplements.section{padding-top:0;padding-bottom:28px}
main>section.event-output{padding:16px 20px}
#comments.section{padding:24px;background:white;border:1px solid var(--line);border-radius:12px;margin-bottom:28px}
.relation-workspace.section{padding:22px;background:white;border:1px solid var(--line);border-radius:12px;scroll-margin-top:110px}
.relation-workspace h2{font-size:18px;margin:0 0 8px}.relation-workspace #relationStatus:empty{display:none}
.relation-groups{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:18px}
.relation-groups>div{padding:14px;background:var(--soft);border-radius:8px;min-width:0}
.relation-groups h3{font-size:13px;margin:0 0 10px}.relation-groups ul{margin:0;padding:0;list-style:none}
.relation-groups li{font-size:12px;margin-bottom:10px}.relation-groups button{font-size:12px;min-height:36px;padding:7px 10px}
.mypage-home .mypage-activity{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:16px;align-items:start}
.mypage-home .mypage-activity>.card{margin-bottom:0}.mypage-home .mypage-activity .card-header{padding:14px 18px;font-size:14px}
.mypage-home .mypage-activity .card-block{padding:8px 18px 16px}.mypage-home .mypage-activity .card-block>p{font-size:13px;padding:14px 0;margin:0;color:var(--muted)}
.mypage-home .profile-card .avatar{width:80px;height:80px}.mypage-home .profile-card .card-block{padding:22px}
@media(max-width:800px){.relation-groups{grid-template-columns:1fr 1fr}.mypage-home .mypage-activity{grid-template-columns:1fr}#comments.section{padding:18px}main>section.event-output{padding:16px}}
@media(max-width:480px){.relation-groups{gap:10px}.relation-workspace.section{padding:16px}.relation-groups>div{padding:12px}}

[data-board-comments]{padding:24px;background:white;border:1px solid var(--line);border-radius:12px;margin:0 auto 28px;width:min(1216px,calc(100% - 64px))}
[data-board-comments] h2{font-size:18px}.managed-directory{width:100%;border-collapse:collapse}.managed-directory th{background:var(--soft);text-align:left;font-size:12px;padding:12px 18px}.managed-directory td{padding:16px 18px;border-top:1px solid var(--line);font-size:12px}.managed-directory td:first-child a{display:block;font-size:16px;font-weight:700;margin-top:8px;color:var(--ink)}.managed-directory td:last-child{width:110px}.managed-directory td:last-child .btn{font-size:12px;padding:8px 12px}.managed-directory td:nth-child(2){color:var(--muted);width:150px}
/* Related events and discussion share one outer surface, including league pages. */
main>section.relation-workspace.section,main>section.tournament-discussion.section{box-sizing:border-box;width:min(1216px,calc(100% - 64px));max-width:none;margin:0 auto 24px;padding:22px}
main>section.tournament-supplements.section{max-width:none}
.tournament-supplements .relation-workspace.section{width:100%;max-width:none;margin:24px 0 0;padding:20px}
.tournament-discussion [data-board-comments]{width:100%;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
@media(max-width:800px){main>section.relation-workspace.section,main>section.tournament-discussion.section{width:calc(100% - 32px);padding:18px}.tournament-discussion [data-board-comments]{width:100%;padding:0}}
@media(max-width:800px){[data-board-comments]{width:calc(100% - 32px);padding:18px}.managed-directory thead{display:none}.managed-directory tr{display:grid;grid-template-columns:1fr auto;padding:16px;gap:12px;border-bottom:1px solid var(--line)}.managed-directory td{padding:0;border:0}.managed-directory td:first-child{grid-column:1/-1}.managed-directory td:last-child,.managed-directory td:nth-child(2){width:auto}.managed-directory td[colspan]{grid-column:1/-1}}

.hero:not(.product-hero):not(.event-header){min-height:0}.hero:not(.product-hero):not(.event-header) .hero-inner{padding:32px 0}.hero:not(.product-hero):not(.event-header) h1{font-size:clamp(24px,2.4vw,34px);max-width:960px;line-height:1.45}.hero:not(.product-hero):not(.event-header) .lead{font-size:14px}.legacy-login .box-title{font-size:24px;line-height:1.5;margin:22px 0}.legacy-login .brand{display:flex;align-items:center;justify-content:center;gap:10px}.legacy-login .brand .spoban-wordmark{font-size:28px}

/* Creation has a guided sequence, with no legacy blue title banner. */
.easy-create-card{border:1px solid var(--line);border-radius:12px;max-width:960px;overflow:hidden}
.creation-progress{display:flex;align-items:center;gap:24px;list-style:none;margin:0;padding:20px 26px;background:var(--soft);border-bottom:1px solid var(--line)}
.creation-progress li{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--muted)}.creation-progress li[aria-current]{color:var(--brand);font-weight:700}.creation-progress span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:white;color:var(--muted);font-size:12px;border:1px solid var(--line)}.creation-progress [aria-current] span{background:var(--brand);color:white;border-color:var(--brand)}
.easy-create-body{padding:24px 26px}.easy-form-row{margin:24px 0;gap:22px;grid-template-columns:110px minmax(0,1fr)}.easy-label{font-size:14px}.team-textarea{max-width:none;border-radius:8px;min-height:180px}.team-help{font-size:12px;font-weight:400;color:var(--muted);margin-top:8px}.segmented{border-color:var(--line);border-radius:8px;flex-wrap:wrap;width:auto}.segmented label:has(input:checked){background:var(--brand-soft)}.segmented label+label{border-color:var(--line)}.segmented input:checked+span{color:var(--brand);font-weight:700}.segmented span{color:var(--muted);font-size:13px;min-height:42px;line-height:1.4}.segmented input{display:block;position:absolute;width:1px;height:1px;opacity:0}.segmented label:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:-3px}
.creation-notice{margin-top:22px;padding:14px 16px;border:1px solid #daca9c;border-radius:8px;background:#fffaf0}.creation-notice>summary{font-size:13px;font-weight:650;color:#6d5421;cursor:pointer}.account-notice{font-size:12px;padding:16px 0 0;color:#6d5421;line-height:1.8}.easy-submit{background:var(--brand);border-radius:8px;padding:12px 24px;min-height:44px;color:white}.easy-submit:disabled{background:#dbe4e6;color:#637882}.create-actions{padding-top:20px;margin-top:0}
.catalog-definition{border:0;padding:0;margin:22px 0;display:grid;grid-template-columns:1fr 1fr;gap:0 24px;max-width:900px}.catalog-definition legend{font-size:14px;font-weight:700;margin-bottom:12px}.catalog-definition p:has(textarea){grid-column:1/-1}.admin-search{padding:16px;background:var(--soft);border-radius:8px;margin:18px 0 22px}.admin-card>h1{font-size:25px}.admin-card>form:not(.admin-search){max-width:900px}.operations-detail{display:grid;grid-template-columns:150px minmax(0,1fr);gap:12px;margin:24px 0}.operations-detail dd{margin:0}.operations-detail dt{color:var(--muted);font-size:13px}.admin-table th:first-child,.admin-table td:first-child{width:64px;font-variant-numeric:tabular-nums}.admin-table tbody tr:hover{background:#f4faf9}.admin-card .section-topline{margin-bottom:20px}.admin-card .section-topline h1{margin-bottom:6px}
@media(max-width:800px){.creation-progress{gap:12px;padding:16px}.creation-progress li{font-size:11px;gap:6px}.creation-progress span{width:22px;height:22px}.easy-create-body{padding:20px 16px}.easy-form-row{grid-template-columns:1fr;gap:10px}.catalog-definition{grid-template-columns:1fr}.operations-detail{grid-template-columns:1fr;gap:4px}.operations-detail dd{margin-bottom:12px}.segmented{display:flex}.segmented span{font-size:12px;padding:10px}.creation-notice{padding:12px}}

.admin-sidebar summary{display:flex;align-items:center;gap:8px}.admin-sidebar .ui-icon{width:15px;height:15px}.admin-header-links button{font-size:12px}
@media(max-width:800px){.license-table[data-responsive-records]{min-width:0}.admin-table-wrap:has(.license-table){max-width:100%;overflow:auto}}

.team-search{flex-wrap:wrap}.team-search label{flex:1 1 200px;min-width:0}.team-search input{max-width:100%;min-width:0}.team-search>input{flex:1 1 200px}.team-search>.button{flex:0 0 auto}
.admin-menu-trigger{display:none}
@media(max-width:800px){.admin-menu-trigger{display:flex;align-items:center;gap:.65rem;padding:.8rem 1rem;color:var(--ink);font-weight:700;cursor:pointer;list-style:none}.admin-menu-trigger::after{content:'＋';margin-left:auto;color:var(--teal)}.admin-navigation[open]>.admin-menu-trigger::after{content:'−'}.admin-navigation>nav{padding-top:.4rem}.admin-navigation:not([open])>nav{display:none}.admin-sidebar{padding:0}.admin-main{padding-top:1rem}}

.guide-menu-trigger{display:none}
@media(max-width:800px){.guide-menu-trigger{display:flex;align-items:center;gap:10px;padding:5px;color:var(--ink);font-weight:700;cursor:pointer;list-style:none}.guide-menu-trigger::after{content:'＋';margin-left:auto}.guide-navigation[open]>.guide-menu-trigger::after{content:'−'}.guide-navigation:not([open])>.guide-menu-content{display:none}.guide-menu-content{padding-top:12px}.guide-layout{gap:18px}}

.sample-links{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;list-style:none;padding:0;margin:24px 0}.sample-links>li{margin:0}.sample-links a{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:13px 15px;background:var(--soft);border:1px solid var(--line);border-radius:8px;font-size:13px;font-weight:600}.sample-links a::after{content:'→';color:var(--brand)}.sample-links a:hover{background:var(--brand-soft);text-decoration:none;border-color:var(--brand)}.account-item .ui-icon{width:16px;height:16px;vertical-align:middle;margin-right:5px}
@media(max-width:1000px){.sample-links{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:480px){.sample-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sample-links a{font-size:12px;padding:12px 10px}}
.admin-card .section-topline>.admin-button{flex-shrink:0;white-space:nowrap;display:inline-flex;align-items:center;gap:8px}
@media(max-width:480px){.admin-card .section-topline{align-items:flex-start;flex-direction:column;gap:12px}.admin-card .section-topline h1{font-size:23px}}

.event-directory .badge{white-space:nowrap;font-size:10px;padding:3px 7px}.product-pagination{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px;margin:24px 0;font-size:13px}.product-pagination a{display:inline-flex;gap:8px;align-items:center;padding:10px 14px;border:1px solid var(--line);border-radius:8px;background:white;font-weight:700}.product-pagination>span[aria-disabled]{color:var(--muted);opacity:.7}.product-pagination .ui-icon{width:14px;height:14px}

/* Readable product text; bracket, print and canvas coordinates remain independent. */
body{font-size:16px}.product-nav-items>a,.product-tools>summary{font-size:15px}.product-tools>div>a{font-size:15px}.button,.btn{font-size:15px}.event-directory td{font-size:15px}.event-directory td:nth-child(2)>a{font-size:17px}.event-directory td>small{font-size:14px}.search-workspace label,.search-workspace-title p,.page-intro p{font-size:16px}.tournament-discussion p,.relation-workspace p,.tournament-schedule-table td,.tournament-facts dd{font-size:16px}.tournament-tab-nav a,.event-jump-nav a,.management-menu>a{font-size:15px}.event-header .lead,.event-header .meta-list{font-size:15px}.event-board-header p,.management-context p{font-size:15px}.event-output .share-toolbar>a,.event-output .share-utilities>summary{font-size:15px}
@media(max-width:800px){.product-nav-items>a,.product-tools>summary{font-size:16px}.event-directory td:nth-child(2)>a{font-size:16px}.event-directory td:nth-child(3),.event-directory td:nth-child(4),.event-directory td:nth-child(5){font-size:14px}.tournament-tab-nav a{font-size:14px}}

/* Google registration: separate reading, consent, and the primary action. */
.google-registration .legacy-login-box{width:min(100%,560px)}
.google-registration .card-block{padding:44px}
.google-registration .box-title{margin:32px 0 16px;font-size:24px}
.google-registration-intro{margin-bottom:28px;line-height:1.9;overflow-wrap:anywhere}
.google-registration-intro p{margin:0;color:var(--muted)}
.google-registration-intro .google-registration-greeting{margin-bottom:8px;color:var(--navy);font-weight:600}
.google-registration-form{display:grid;gap:24px}
.google-registration-consent{display:flex;align-items:flex-start;gap:12px;line-height:1.7;cursor:pointer;margin:0;padding:4px 0}
.google-registration-consent input{flex:none;width:20px;height:20px;margin:3px 0 0}
.google-registration-form .btn{min-height:50px;margin:0;white-space:normal}
.google-registration-back{text-align:center;margin:24px 0 0;font-size:14px}
.google-registration-back a{display:inline-block;padding:8px}
@media(max-width:480px){
.google-registration{padding:24px 16px}
.google-registration .card-block{padding:32px 24px}
.google-registration .box-title{font-size:22px;margin-top:28px}
.google-registration-intro br{display:none}
.google-registration-form{gap:22px}
}

/* Terms use the viewport, not the narrow registration card. */
.auth-terms-open{display:block;width:100%;padding:16px 18px;text-align:left;border:1px solid var(--line);border-radius:12px;background:#f4f9fb;color:var(--brand);font:inherit;font-weight:600;cursor:pointer}
.auth-terms-dialog{width:min(900px,calc(100vw - 40px));max-width:none;padding:0;color:var(--ink)}
.auth-terms-dialog[open]{display:flex;flex-direction:column;height:min(780px,calc(100dvh - 48px));max-height:calc(100dvh - 48px)}
.auth-terms-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 28px;border-bottom:1px solid var(--line);background:#f4f9fb;flex-shrink:0}
.auth-terms-header h2{font-size:20px;margin:0}
.auth-terms-header .btn{width:auto;margin:0;white-space:nowrap;flex-shrink:0}
.auth-terms-body{overflow-y:auto;overscroll-behavior:contain;min-height:0;padding:28px 36px;line-height:1.9;overflow-wrap:anywhere}
.auth-terms-body>div{padding:0!important}
.auth-terms-body h2{font-size:21px;line-height:1.6;margin-top:0}
.auth-terms-body ol{padding-left:1.5em}
body:has(.auth-terms-dialog[open]){overflow:hidden}
@media(max-width:480px){.auth-terms-dialog{width:calc(100vw - 24px)}.auth-terms-dialog[open]{height:calc(100dvh - 32px);max-height:calc(100dvh - 32px)}.auth-terms-header{padding:14px 16px}.auth-terms-body{padding:20px 18px}.auth-terms-body h2{font-size:18px}}

/* Shared footer: navigation first, copyright at the very bottom. */
.site-footer.product-footer{display:block;padding:0;background:var(--navy);color:#e1edf2}
.product-footer-main{max-width:1240px;margin:auto;padding:48px 32px 40px;display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:36px}
.product-footer-brand .brand{display:inline-flex;color:white}
.product-footer-brand .spoban-wordmark,.product-footer-brand .spoban-wordmark>span{color:inherit}
.product-footer-brand p{font-size:14px;line-height:1.9;margin:20px 0 0;color:#b8ced8}
.product-footer-main nav{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.product-footer-main h2{font-size:14px;color:white;margin:0 0 6px}
.product-footer-main nav a{font-size:14px;color:#c9dce5;font-weight:400;line-height:1.6}
.product-footer-main nav a:hover{text-decoration:underline;color:white}
.product-footer-copyright{padding:20px 24px;text-align:center;border-top:1px solid #ffffff24;color:#b8ced8}
.product-footer-copyright small{font-size:12px;color:inherit}
@media(max-width:800px){.product-footer-main{grid-template-columns:1fr 1fr;gap:32px;padding:36px 24px}.product-footer-brand{grid-column:1/-1}}
@media(max-width:480px){.product-footer-main{gap:28px 20px;padding:32px 20px}.product-footer-main nav:last-child{grid-column:1/-1}.product-footer-main nav a{padding:3px 0}}

/* Shared support form: one page for questions, requests, and bug reports. */
.contact-page{max-width:880px;margin:0 auto;padding:48px 24px 56px}
.contact-heading{margin-bottom:28px}
.contact-eyebrow{font-size:12px;letter-spacing:.16em;color:var(--brand,#007f8b);font-weight:700}
.contact-heading h1{margin:8px 0 16px;font-size:clamp(26px,4vw,34px)}
.contact-heading p{margin:0;line-height:1.9;color:#526b79}
.contact-card{padding:36px 40px;background:#fff;border:1px solid #d7e5e9;border-radius:20px;box-shadow:0 8px 28px #14384706}
.contact-form{display:grid;gap:24px}
.contact-form label{display:grid;gap:9px;min-width:0;font-weight:600}
.contact-form input,.contact-form textarea,.contact-form select{width:100%;min-width:0;max-width:100%;box-sizing:border-box;padding:12px 14px;border:1px solid #aebfc8;border-radius:8px;background:#fff;color:#143847;font:inherit;font-weight:400}
.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{outline:3px solid #bce8ed;outline-offset:2px;border-color:#007f8b}
.contact-form textarea{resize:vertical;line-height:1.8}
.contact-email-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.contact-required-note,.contact-help,.contact-footnote{font-size:13px;line-height:1.8;color:#526b79;margin:0}
.contact-required-note{text-align:right}
.contact-form > .contact-help{margin-top:-14px}
.contact-submit-area{display:grid;gap:18px;border-top:1px solid #e2ecef;padding-top:24px}
.contact-submit-area button{justify-self:center;width:min(100%,340px);min-height:52px;padding:12px 24px;background:#007d88;color:#fff;border:0;border-radius:10px;font:inherit;font-weight:700;cursor:pointer}
.contact-submit-area button:hover{background:#006570}
.contact-submit-area button:disabled{opacity:.6;cursor:default}
.contact-status:not(:empty){padding:16px;background:#edf7f8;border-radius:8px;overflow-wrap:anywhere}
.contact-footnote{text-align:center;margin-top:20px}
@media(max-width:600px){.contact-page{padding:28px 16px 36px}.contact-card{padding:24px 20px;border-radius:16px}.contact-email-fields{grid-template-columns:1fr;gap:24px}.contact-heading p br{display:none}}
