:root{font-family:"Microsoft YaHei",system-ui,sans-serif;color:#243a38;background:#f6f7f4;font-size:14px;--green:#21655c;--line:#e1e7e1}*{box-sizing:border-box}body{margin:0;display:flex;min-height:100vh}aside{width:206px;padding:40px 24px;background:#edf1eb;border-right:1px solid var(--line);position:fixed;height:100vh}.brand{font:32px Georgia,"SimSun",serif;letter-spacing:5px}.brand span{font-size:23px} .quiet{color:#78857e;line-height:1.9}.tag{font-size:11px;color:#507568;border:1px solid #cad9cc;padding:7px 10px;display:inline-block;margin:20px 0}nav{display:grid;gap:10px;margin-top:30px}button{font:inherit;cursor:pointer;background:#fff;color:#31564e;border:1px solid #d8e1d8;border-radius:7px;padding:10px 16px}button:hover{background:#eaf1eb}button:disabled{opacity:.5;cursor:wait}nav button{background:transparent;text-align:left;border:0;padding:14px}nav button.active{background:#dce7dd;color:#17574c;font-weight:bold}.primary{background:var(--green);color:white;border-color:var(--green)}.primary:hover{background:#184e45}.text{background:transparent;border:0;padding:8px}.danger{color:#ae544b}.aside-bottom{position:absolute;bottom:35px;color:#829088;font-size:12px;line-height:2}main{margin-left:206px;width:calc(100% - 206px)}header{height:80px;padding:0 40px;display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--line);background:#fafbf8}.spacer{flex:1}select,input,textarea{font:inherit;color:inherit;border:1px solid #d6ded5;background:white;border-radius:6px;padding:10px;min-width:0}label{display:grid;gap:8px;margin:16px 0}textarea{resize:vertical;min-height:80px}h1{font-weight:500;font-size:29px;margin:8px 0 12px}h2{font-size:20px;font-weight:500}.eyebrow{font-size:10px;letter-spacing:3px;color:#8a9b8d}.title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}#workspace{padding:36px 40px}#login{max-width:480px;margin:85px auto}#login form{max-width:350px;margin:28px 0}#notice{padding:0 40px;line-height:3;color:var(--green);min-height:16px}.error{color:#ae544b!important}#actions{display:flex;gap:10px;align-items:center}table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden}th{text-align:left;background:#edf2ec;font-size:12px;font-weight:500;color:#718275}td,th{padding:18px 16px;border-bottom:1px solid #edf0ea}td button{padding:6px 8px}.pill{font-size:12px;background:#edf4ec;color:#557b55;padding:5px 9px;border-radius:20px}.toolbar{display:flex;align-items:center;gap:12px;margin-bottom:22px}.groups{display:grid;gap:25px}.group{background:white;padding:20px;border-radius:10px;border:1px solid var(--line)}.group h2{margin:0 0 20px}.teams{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.team{display:grid;gap:8px}.team h3{font-size:13px;font-weight:500;color:#809184;margin:0 0 6px}.slot{border:1px solid var(--line);border-left:5px solid var(--job,#d7dfd7);padding:12px;background:#fafbf8;border-radius:6px;display:flex;gap:12px;align-items:center;min-height:76px}.slot strong{font-weight:500}.slot .info{flex:1;min-width:0}.slot p{margin:6px 0 0;color:#64716a;line-height:1.6;overflow-wrap:anywhere}.slot small{color:#8b968e}.slot button{font-size:11px;padding:5px 8px}.empty{color:#98a499}.phone{max-width:390px;background:white;margin:auto;padding:25px 18px;min-height:620px;border-radius:26px;border:7px solid #e5e9e2;box-shadow:0 15px 50px #273c3110}.phone .group{padding:14px 0;border:0}.phone .teams{gap:9px}.phone .slot{padding:10px 7px;min-height:90px}.phone h2{font-size:18px}.phone-title{text-align:center;font:21px "SimSun",serif;padding:12px;border-bottom:1px solid var(--line)}.empty-state{padding:65px 25px;text-align:center;color:#87958a;background:#fff;border:1px dashed #d9e1d6;border-radius:10px}dialog{border:1px solid var(--line);border-radius:13px;padding:28px;width:480px;color:inherit;max-height:90vh}dialog::backdrop{background:#1f322b55}#dialogError{color:#ae544b;margin:12px 0}.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.caption{font-size:12px;color:#869487;margin-top:22px;line-height:1.9}@media(max-width:900px){aside{width:150px;padding:25px 12px}main{margin-left:150px;width:calc(100% - 150px)}#workspace{padding:25px 18px}header{padding:0 18px}.teams{grid-template-columns:1fr}.title{align-items:flex-start;flex-wrap:wrap}table{font-size:12px}td,th{padding:12px 8px}}[hidden]{display:none!important}
.signed-out aside,.signed-out main>header{display:none}.signed-out main{margin-left:0;width:100%}.signed-out #login{background:white;padding:40px;border:1px solid var(--line);border-radius:14px;max-width:560px}.brand{white-space:nowrap;letter-spacing:2px;font-size:28px}.brand span{font-size:21px}.org-form{max-width:650px;background:white;padding:28px;border-radius:10px}.org-form img{width:100%;max-height:180px;object-fit:cover;border-radius:8px}
.org-form{max-width:820px;padding:34px;border:1px solid #e5e9e3;box-shadow:0 18px 50px #1d40340b}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:24px}.section-heading h2{margin:6px 0 0}.banner-field{border:0;padding:0;margin:28px 0}.banner-field legend{font-size:15px;margin-bottom:13px}.banner-field legend span{font-size:12px;color:#88958d;margin-left:8px}.banner-upload-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.banner-tile{margin:0;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#f8faf7}.banner-tile img{width:100%;height:auto;aspect-ratio:3.06/1;object-fit:cover;display:block;border-radius:0}.banner-tile figcaption{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;color:#6f7e75;font-size:12px}.banner-add{min-height:174px;border:1px dashed #9ebbb1;background:#f6faf7;color:#286b60;display:grid;place-content:center;gap:7px}.banner-add strong{font-size:36px;font-weight:300;line-height:1}.banner-add span{font-size:13px}.icon-button{padding:4px 7px;border:0;background:transparent}.form-actions{display:flex;justify-content:flex-end;margin-top:26px}.form-actions button{min-width:116px}@media(max-width:760px){.banner-upload-grid{grid-template-columns:1fr}}
.workspace-header{height:auto!important;min-height:100px;padding:12px 40px}.organization-context{display:grid;gap:6px;min-width:430px}.context-label{font-size:10px;letter-spacing:.18em;color:#72867f}.context-control{display:flex;align-items:center;gap:12px}.org-tablist{display:flex;gap:8px}.org-tablist button{display:grid;gap:2px;min-width:130px;padding:9px 14px;text-align:left;background:#fff;border-color:#cddbd4}.org-tablist button small{color:#7b8b84;font-size:10px}.org-tablist button strong{font-size:14px}.org-tablist button.active{color:#fff;background:var(--green);border-color:var(--green)}.org-tablist button.active small{color:#dceee9}.context-control>span{font-size:12px;color:#71817a}.create-organization{border-color:#2e786e;color:#155f55;background:#eef7f3;font-weight:650;white-space:nowrap}.organization-kind{font-size:12px;padding:6px 10px;border-radius:20px;background:#e7f1ed;color:#176359}.organization-overview{display:flex;flex-direction:column;gap:20px;align-items:stretch;width:min(100%,920px)}.organization-overview .org-form{max-width:none;width:100%}.organization-panel,.organization-create-card{width:100%}.organization-create-card{padding:34px;background:#fff;border:1px solid #e5e9e3;border-radius:10px;box-shadow:0 18px 50px #1d40340b}.organization-create-card h2{margin:18px 0 8px}.organization-create-card p{color:#71817a;margin-bottom:22px}.club-summary{padding:18px 20px;margin:24px 0 0;background:#f5f8f5;border-radius:8px;color:#64766f}.banner-upload-grid.single{grid-template-columns:minmax(260px,560px) 150px;justify-content:start;align-items:stretch}.banner-add.compact{min-height:0}@media(max-width:1100px){.workspace-header{flex-wrap:wrap}.organization-context{min-width:100%}}@media(max-width:760px){.org-tablist{width:100%;flex-direction:column}.org-tablist button{width:100%}.context-control{align-items:flex-start;flex-direction:column}.banner-upload-grid.single{grid-template-columns:1fr}}
#notice:not(:empty){position:fixed;z-index:100;top:18px;right:24px;max-width:420px;min-height:0;padding:12px 18px;line-height:1.5;border:1px solid #b8d3ca;border-radius:8px;background:#f4fbf8;box-shadow:0 12px 36px #183d3428}.signed-out #notice:not(:empty){right:auto;left:50%;width:auto;max-width:calc(100% - 40px);transform:translateX(-50%)}.error#notice:not(:empty){border-color:#e0b3ae;background:#fff6f5;color:#a4433b!important}
#workspaceNotice:not(:empty){position:fixed;z-index:100;top:18px;right:24px;max-width:420px;min-height:0;padding:12px 18px;line-height:1.5;color:var(--green);border:1px solid #b8d3ca;border-radius:8px;background:#f4fbf8;box-shadow:0 12px 36px #183d3428}.error#workspaceNotice:not(:empty){border-color:#e0b3ae;background:#fff6f5;color:#a4433b!important}
.workspace-header{min-height:62px!important;padding:0 40px}.page-organization-scope{display:flex;align-items:center;gap:8px;margin:0 0 22px;padding:10px 12px;background:#edf3f0;border-radius:9px;width:max-content}.page-organization-scope>span{font-size:12px;color:#6f817a;margin-right:3px}.page-organization-scope button{border:0;background:transparent;padding:8px 13px}.page-organization-scope button.active{background:var(--green);color:#fff}
.aside-session{display:flex;align-items:center;gap:6px;margin-bottom:8px;color:#45665e}.aside-session .text{padding:3px 6px;color:#6f817a}.lineup-toolbar{top:0}.participant-pool{top:66px;max-height:calc(100vh - 84px)}
.signed-out main{min-height:100vh;display:grid;place-items:center}.signed-out #login{position:relative;margin:0}.signed-out #login #notice:not(:empty){position:absolute;top:-76px;right:auto;left:50%;width:max-content;max-width:calc(100vw - 40px);transform:translateX(-50%)}
.signed-out #login #notice:not(:empty){position:fixed;top:auto;right:28px;bottom:28px;left:auto;width:max-content;max-width:calc(100vw - 56px);transform:none}
.signed-out #login #notice:not(:empty){position:absolute;top:20px;right:20px;bottom:auto;left:auto;width:max-content;max-width:calc(100% - 40px);transform:none}
.signed-out #login #notice:empty{display:none}
.signed-out #login #notice:not(:empty){top:50%;right:auto;bottom:auto;left:50%;max-width:calc(100% - 48px);transform:translate(-50%,-50%);background:rgba(255,246,245,.72);backdrop-filter:blur(5px);box-shadow:0 14px 34px rgba(130,67,58,.16)}
.signed-out #login #notice:not(:empty){top:50%;background:rgba(255,232,228,.78);backdrop-filter:none}
