@font-face{font-family:GuildPixel;src:url('/fonts/guild-pixel.woff2') format('woff2');font-style:normal;font-weight:400 900;font-display:swap}
:root{--guild-navy:#152d5b;--guild-blue:#0875ce;--guild-sky:#35b9ed;--guild-yellow:#ffdc35;--guild-red:#e93646;--guild-pixel:GuildPixel,'Microsoft YaHei',sans-serif}
.guild-surface{background:#edf4f8;color:var(--guild-navy)}
.guild-surface .btn,.guild-wide-dialog .btn{border-radius:3px;font-weight:700;min-height:44px}
.guild-surface .btn.primary,.guild-wide-dialog .btn.primary{background:var(--guild-navy);color:#fff;border:2px solid var(--guild-navy);box-shadow:3px 3px 0 #80a1c6}
.guild-surface .btn.primary:hover,.guild-wide-dialog .btn.primary:hover{background:#20447d;transform:translateY(-2px)}
.guild-surface .btn.ghost,.guild-wide-dialog .btn.ghost{background:transparent;color:var(--guild-navy);border:1px solid #a5b7cd;box-shadow:none}
.guild-surface button:focus-visible,.guild-wide-dialog button:focus-visible,.guild-surface a:focus-visible{outline:3px solid #0875ce;outline-offset:4px}
.guild-hero{background:var(--guild-yellow);border-bottom:5px solid var(--guild-navy);position:relative;overflow:hidden}
.guild-hero-inner{max-width:1360px;margin:auto;padding:28px 40px;display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:56px;align-items:center}
.guild-kicker{display:flex;align-items:center;gap:9px;font-size:12px;letter-spacing:1.5px;font-weight:800}
.guild-kicker svg{width:18px;height:18px;flex-shrink:0}
.guild-hero h1{font-family:var(--guild-pixel);font-weight:400;font-size:56px;line-height:1.08;margin:14px 0 26px;color:var(--guild-navy);letter-spacing:1px}
.guild-hero h1 span{display:block;font-size:28px;margin-top:10px}
.guild-hero-actions{display:flex;flex-wrap:wrap;gap:16px}
.guild-hero-actions .btn.primary{background:var(--guild-red);border-color:var(--guild-navy);box-shadow:4px 4px 0 var(--guild-navy)}
.guild-hero-actions .btn.ghost{border:2px solid var(--guild-navy);box-shadow:4px 4px 0 #ceb229;background:#ffe870}
.guild-banner-art{transform:rotate(3deg);background:var(--guild-navy);color:#9ebcf6;position:relative;border:4px solid var(--guild-navy);box-shadow:9px 9px 0 #c7a824;padding:18px 22px;text-align:center}
.guild-banner-art::before{content:'';position:absolute;inset:8px;border:1px dashed #9ebcf6;pointer-events:none}
.guild-banner-art b{display:block;font:400 34px/1 var(--guild-pixel);color:#ffdf44;margin:10px 0 12px;text-shadow:3px 3px 0 #080f22}
.guild-banner-art>span{font:400 14px var(--guild-pixel)}
.guild-banner-seal{width:48px;height:48px;display:grid;place-items:center;background:#0875ce;border:2px solid #7198d1;box-shadow:4px 4px 0 #080f22;margin:0 auto;color:#fff}
.guild-banner-seal svg{width:30px;height:30px;stroke-width:1.8}
.guild-main{max-width:1360px;margin:auto;padding:40px;display:grid;grid-template-columns:232px minmax(0,1fr);gap:32px;align-items:start}
.guild-sidebar{background:#fff;border:2px solid var(--guild-navy);box-shadow:5px 5px 0 #cfdeeb;position:sticky;top:102px}
.guild-side-heading{display:flex;gap:9px;align-items:center;padding:17px 18px;border-bottom:2px solid var(--guild-navy);background:var(--guild-navy);color:#fff}
.guild-side-heading h2{font:400 21px var(--guild-pixel);margin:0}.guild-side-heading svg{width:20px;height:20px}
#myTeam:not(:empty){padding:0;margin:0;border-radius:0;background:none}
.guild-identity{padding:24px 18px 20px;border-bottom:1px dashed #acbbce;text-align:center}
.guild-identity-icon{display:grid;place-items:center;width:50px;height:50px;margin:0 auto 12px;background:#e0efff;border:1px solid #adcaea;box-shadow:3px 3px 0 #cadae9}
.guild-identity-icon svg{width:26px;height:26px;color:var(--guild-blue)}
.guild-identity>b{display:block;font-size:16px}.guild-identity p{font-size:13px;color:#556783;line-height:1.8;margin:10px 0 16px}.guild-identity .btn{width:100%}
.guild-guide{list-style:none;padding:18px;margin:0;counter-reset:guild-step}
.guild-guide li{counter-increment:guild-step;position:relative;padding:0 0 20px 29px}
.guild-guide li:last-child{padding-bottom:0}.guild-guide li::before{content:counter(guild-step);position:absolute;left:0;top:2px;background:var(--guild-yellow);font:400 15px var(--guild-pixel);width:20px;height:20px;text-align:center;border:1px solid #c6ad35}
.guild-guide b{font-size:13px;display:block}.guild-guide span{font-size:12px;color:#556783;display:block;line-height:1.6;margin-top:5px}
.guild-side-note{margin:0 18px 18px;padding:12px;background:#edf4f8;display:flex;gap:8px;align-items:flex-start}
.guild-side-note svg{width:17px;flex-shrink:0;margin-top:3px}.guild-side-note p{font-size:12px;line-height:1.8;margin:0;color:#50647e}
.guild-text-link{width:100%;border:0;border-top:1px solid #dbe5f1;background:#f8fbff;color:var(--guild-navy);padding:15px 18px;display:flex;justify-content:space-between;align-items:center;font-size:13px}.guild-text-link svg{width:16px}
.guild-board{min-width:0}.guild-tabs{display:flex;border-bottom:4px solid var(--guild-navy);gap:5px}
.guild-tabs button{display:flex;gap:10px;align-items:center;padding:16px 24px;border:2px solid #bac9db;border-bottom:0;background:#dce7f1;color:#546882;font:400 22px var(--guild-pixel);border-radius:4px 4px 0 0;transition:background .18s}
.guild-tabs button[aria-selected=true]{color:#fff;background:var(--guild-navy);border-color:var(--guild-navy)}
.guild-tabs svg{width:19px;height:19px}.guild-board .team-toolbar{border:0;padding:22px 0 18px;margin:0;gap:10px}
.guild-search{display:flex;gap:10px;align-items:center;min-width:0;flex:1;background:white;border:1px solid #aabbcf;border-radius:3px;padding-left:12px}.guild-search svg{width:18px;height:18px;color:#627997;flex-shrink:0}
.guild-search input{width:100%;border:0!important;background:transparent!important;border-radius:0!important;padding:12px 10px!important;color:var(--guild-navy)!important;font-size:14px}
.guild-search input::placeholder{color:#65768a}.guild-board .team-toolbar select{border-color:#aabbcf;border-radius:3px;background:#fff;color:var(--guild-navy);font-size:14px;max-width:155px}
.guild-board .team-toolbar>.btn{padding:11px 16px;background:white}
.guild-board-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:5px 0 20px}
.guild-board-heading h2{font:400 24px var(--guild-pixel);margin:0}.guild-board-heading>span{font-size:12px;color:#5a6d86}
.guild-board .team-grid{gap:24px;align-items:start}
.quest-card,.adventurer-tile{background:var(--guild-yellow);border:2px solid var(--guild-navy);box-shadow:5px 5px 0 #bfcfdf;position:relative;min-width:0;transition:transform .18s,box-shadow .18s}
.quest-card:hover,.adventurer-tile:hover{transform:translateY(-3px);box-shadow:5px 8px 0 #bfcfdf}
.quest-ticket{background:var(--guild-navy);color:#afc7f0;padding:10px 14px;display:flex;gap:10px;justify-content:space-between;align-items:center;min-height:40px;font:400 12px var(--guild-pixel);letter-spacing:.6px}
.quest-state{font:600 11px/1.3 system-ui,sans-serif;display:inline-block;background:#dfeaf7;color:var(--guild-navy);padding:4px 8px;border:1px solid #b8d0ef;white-space:nowrap}
.quest-state.available{background:#c7eeae;color:#245c12;border-color:#91c172}
.quest-card-inner,.adventurer-tile-inner{padding:20px}.quest-author{margin:0 0 8px;font-size:12px;color:#485167;overflow-wrap:anywhere}
.quest-card h3{font:400 28px/1.15 var(--guild-pixel);margin:0 0 14px;overflow-wrap:anywhere;color:var(--guild-navy)}
.quest-roles{margin-bottom:16px;display:flex;flex-wrap:wrap;gap:6px}.guild-surface .team-tag,.guild-wide-dialog .team-tag{color:var(--guild-navy);background:#fff1a0;border:1px solid #beac58;border-radius:2px;padding:4px 9px;font-size:12px;margin:0}
.quest-card dl,.adventurer-tile dl{margin:0;background:var(--guild-blue);padding:15px 16px;border:2px solid var(--guild-navy);box-shadow:inset 0 0 0 3px #219aeb;color:#fff}
.quest-field+ .quest-field{border-top:1px dashed #69b8ef;margin-top:11px;padding-top:11px}
.quest-field dt{font:400 18px var(--guild-pixel);color:#fff;margin-bottom:6px}.quest-field dd{font-size:12px;line-height:1.8;color:#f0f8ff;margin:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere}
.quest-footer{display:flex;gap:12px;justify-content:space-between;align-items:center;margin-top:18px}.quest-footer>span{font-size:12px;color:#4d4c3d}.quest-footer b{font-size:17px;color:var(--guild-navy)}.quest-footer small{display:block;line-height:1.4;margin-top:4px}
.guild-surface .guild-small,.guild-wide-dialog .guild-small{border:1px solid var(--guild-navy);border-radius:2px;background:var(--guild-navy);color:#fff;padding:9px 12px;box-shadow:2px 2px 0 #b9a124;font-size:12px;min-height:40px}.guild-small svg{width:15px;height:15px}
.guild-empty-intro{grid-column:1/-1;padding:16px 20px;border:1px dashed #acbdd1;background:#f8fbff}.guild-empty-intro b{font-size:14px}.guild-empty-intro p{margin:7px 0 0;font-size:12px;color:#5b6e88;line-height:1.7}
.guild-open-slot{align-self:stretch;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:420px;border:2px dashed #b3c5d8;padding:24px;text-align:center;color:#5b7494;background:#e6eef6}
.guild-open-slot>svg{width:50px;height:50px;stroke-width:1.2;color:#7190b5}.guild-open-slot h3{font:400 26px var(--guild-pixel);color:var(--guild-navy);margin:24px 0 12px}.guild-open-slot p{font-size:13px;line-height:1.9;margin:0 0 22px}
.guild-loading{grid-column:1/-1;padding:80px 20px;text-align:center;color:#556983;font:400 22px var(--guild-pixel)}
.guild-empty{border-radius:0;background:#f8fbff;color:var(--guild-navy)}.guild-empty>svg{width:42px;height:42px}.guild-empty h3{font:400 28px var(--guild-pixel);margin:20px 0 12px}.guild-empty p{font-size:14px;margin-bottom:22px;color:#566983}
.adventurer-tile{background:#fff}.adventurer-name{display:flex;gap:15px;align-items:center;margin-bottom:14px}.adventurer-initial{background:#d9eeff;border:2px solid #264c86;box-shadow:3px 3px 0 #d0deec;width:52px;height:52px;flex-shrink:0;display:grid;place-items:center;font:400 30px var(--guild-pixel)}
.adventurer-name h3{font:400 26px var(--guild-pixel);margin:0}.adventurer-name p{font-size:12px;color:#687791;margin:6px 0 0}.adventurer-tile dl{background:#edf6ff;border:1px solid #bbd2eb;box-shadow:none}.adventurer-tile .quest-field dt{color:var(--guild-navy)}.adventurer-tile .quest-field dd{color:#4b617d}.adventurer-tile .guild-small{margin-top:18px;width:100%}

/* Original supplied artwork; no CSS reconstruction of its fixed graphics. */
.ability-card{width:100%;max-width:650px;display:block;background:transparent;border:0;border-radius:0;overflow:hidden;box-shadow:none;aspect-ratio:3780/5208;padding:0;color:#fff}
guild-art-card{display:block;width:100%;aspect-ratio:3780/5208;background:#f7d631;position:relative;overflow:hidden}
guild-art-card canvas{display:block;width:100%;height:auto}
.art-loading{position:absolute;inset:0;display:grid;place-items:center;color:#152d5b;font-size:14px}
.quest-card .ability-card{max-width:none}.quest-card .quest-ticket h3{font:400 21px var(--guild-pixel);color:#fff;margin:0;overflow-wrap:anywhere}
.card-full-text,.team-card-preview{margin:22px 0;color:var(--guild-navy)}
.card-full-text>summary,.team-card-preview>summary{cursor:pointer;font-size:14px;padding:12px 0;font-weight:600}
.card-full-text .guild-detail-grid{margin-top:12px}.team-card-preview .ability-card{max-width:480px!important;margin:12px auto}
#resultCardText{width:min(650px,100%);text-align:left}
#page-card-form .page-shell{max-width:1280px}#page-card-form .page-title{font:400 40px var(--guild-pixel);color:var(--guild-navy)}#page-card-form .page-kicker{color:var(--guild-blue)}
#page-card-form .card-layout{grid-template-columns:minmax(0,1fr) minmax(370px,480px);gap:32px;align-items:start}
#page-card-form .card-preview-column{top:100px}.card-preview-column .ability-card{max-width:100%}
#page-card-form .form-panel{border:2px solid var(--guild-navy);border-radius:3px;box-shadow:4px 4px 0 #cfdeeb;background:#fff}
#page-card-form .form-panel-head{background:var(--guild-navy);color:#fff;border:0;border-radius:0}#page-card-form .form-panel-head h2{color:white;font:400 26px var(--guild-pixel)}#page-card-form .form-panel-head p{color:#b7ceee;font-size:13px}
#page-card-form .form-section-title{font:400 24px var(--guild-pixel);color:var(--guild-navy)}#page-card-form .form-section-title::before{background:var(--guild-yellow)}
#page-card-form .purpose-option{border-radius:3px;background:white;border:1px solid #acbed4}#page-card-form .purpose-option.selected{border:2px solid var(--guild-navy);background:#fff4b7}#page-card-form .purpose-option b{color:var(--guild-navy)}
#page-card-form .choice-chip{border-radius:3px;color:#354e72;background:#f3f7fb;border:1px solid #b9cadb}#page-card-form .choice-chip.selected{background:var(--guild-navy);color:#fff;border-color:var(--guild-navy)}
#page-card-form .form-field{margin-top:16px}#page-card-form input,#page-card-form textarea{border-radius:3px;color:var(--guild-navy);background:#f9fbfe;border-color:#a9bbd0}#page-card-form input::placeholder,#page-card-form textarea::placeholder{color:#63748a}
#page-card-form .roster-consent{background:#edf5ff;padding:20px!important;border:1px solid #bfcee2;margin-top:20px}#page-card-form .roster-consent .check-row{font-size:13px;line-height:1.9}
#page-card-result .card-result-stage{background:#edf4f8;padding:28px 20px 50px}#page-card-result .ability-card{width:min(650px,100%);max-width:650px}#page-card-result .btn.primary{background:var(--guild-navy);color:#fff}
.guild-wide-dialog{width:min(820px,calc(100vw - 32px));background:#f5f9ff;border:3px solid var(--guild-navy);border-radius:3px;box-shadow:8px 8px 0 #162e5b55;padding:32px;color:var(--guild-navy)}
.guild-wide-dialog .dialog-x{color:var(--guild-navy);right:13px;top:7px;width:30px;height:30px;background:#f5f9ff;z-index:1}
.guild-detail-heading{padding:0 15px 22px 0;border-bottom:2px solid #cedbed;margin-bottom:24px}.guild-detail-heading .guild-kicker{color:#557294;font-size:11px}.guild-detail-heading h2{font:400 36px/1.2 var(--guild-pixel);margin:14px 0;overflow-wrap:anywhere}.guild-detail-heading p{font-size:13px;line-height:1.8;color:#596c84;margin-bottom:13px}
.guild-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:18px}.guild-detail-field{background:#e7f3ff;border:1px solid #bdd1eb;padding:16px;min-width:0}.guild-detail-field h3{font:400 22px var(--guild-pixel);margin:0 0 10px;color:var(--guild-navy)}.guild-detail-field p{font-size:13px;line-height:1.9;margin:0;white-space:pre-wrap;overflow-wrap:anywhere;color:#3f5676}
.guild-wide-dialog h3{color:var(--guild-navy)}.guild-wide-dialog a{color:#06569e;display:inline-flex;align-items:center;gap:5px;text-decoration:underline}.guild-wide-dialog a svg{width:15px;height:15px}
.guild-wide-dialog .member-row{font-size:14px}.guild-wide-dialog .member-row>span{font-size:12px;color:#56718e}.guild-wide-dialog .dialog-actions{flex-wrap:wrap;gap:10px}.guild-wide-dialog .application-message{font-size:14px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.application-card summary{cursor:pointer;font-size:13px;text-decoration:underline;color:#0869ad;margin:15px 0}.application-card .guild-detail-field{margin:10px 0}
.guild-apply{background:#fff1a0;border:2px solid #d7bd58;padding:22px;margin-top:24px}.guild-apply h3{font:400 24px var(--guild-pixel);margin:0 0 12px}.guild-apply p{font-size:13px;line-height:1.8;color:#5c592e}.guild-apply textarea{width:100%;border:1px solid #b8a34e;border-radius:3px;background:#fffbed;padding:12px;font-family:inherit;font-size:14px;resize:vertical;margin-bottom:15px;color:var(--guild-navy)}
.guild-wide-dialog #teamForm h3{font:400 24px var(--guild-pixel);margin:26px 0 15px;border-top:1px dashed #b4c7df;padding-top:20px}.guild-wide-dialog #teamForm .form-field{margin-bottom:17px}.guild-wide-dialog #teamForm input,.guild-wide-dialog #teamForm textarea,.guild-wide-dialog #teamForm select{border-radius:3px;background:white;border-color:#abbfd7;color:var(--guild-navy)}
.guild-role-field{padding:12px;border:1px solid #bfcede;margin-bottom:15px}.guild-role-field legend{font-size:13px;padding:0 7px}.guild-role-field .team-tag{display:inline-flex;align-items:center;gap:6px;margin:4px}.guild-role-field input{width:16px!important;height:16px;min-height:0}
.guild-profile-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:0 20px 20px 0;font-size:13px}.guild-public-card{margin:0 auto;max-width:610px}.guild-profile-footer{margin:26px auto 0;max-width:610px}.guild-profile-footer p{font-size:13px;line-height:1.8;color:#516c8b}
/* Already visible cards keep their canvas when the hall refreshes. */

@media(max-width:1100px){.guild-hero-inner{padding:28px;gap:32px;grid-template-columns:minmax(0,1fr) 220px}.guild-hero h1{font-size:56px}.guild-banner-art b{font-size:35px}.guild-main{padding:30px 24px;grid-template-columns:200px minmax(0,1fr);gap:24px}.quest-card-inner,.adventurer-tile-inner{padding:15px}.guild-board .team-grid{gap:18px}.quest-footer{flex-wrap:wrap}.quest-footer .btn{width:100%}#page-card-form .card-layout{grid-template-columns:minmax(0,1fr) 380px;gap:24px}}
@media(max-width:900px){.guild-main{grid-template-columns:1fr;padding:26px 22px}.guild-sidebar{position:static;display:grid;grid-template-columns:1fr 1.3fr}.guild-side-heading{grid-column:1/-1;padding:12px 18px}.guild-identity{padding:20px;border-bottom:0}.guild-guide{padding:22px 20px 10px}.guild-identity-icon{display:none}.guild-side-note{display:none}.guild-text-link{grid-column:1/-1}.guild-hero h1{font-size:48px}.guild-hero h1 span{font-size:27px}.guild-hero-actions{gap:12px}.guild-hero-actions .btn{font-size:13px;padding:10px 14px}#page-card-form .card-layout{grid-template-columns:1fr}#page-card-form .card-preview-column{position:static;order:0;max-width:550px;margin:0 auto;width:100%}#page-card-form .page-title{font-size:34px}.quest-footer .btn{width:auto}}
@media(max-width:600px){.guild-hero-inner{display:block;padding:24px 20px 28px}.guild-hero h1{font-size:42px;margin:14px 0 24px}.guild-hero h1 span{font-size:25px;margin-top:10px}.guild-banner-art{display:none}.guild-hero-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.guild-hero-actions .btn{width:100%;font-size:13px;padding:10px 12px;justify-content:center}.guild-kicker{font-size:10px;letter-spacing:1px}.guild-main{padding:22px 16px;gap:26px}.guild-sidebar{grid-template-columns:1fr}.guild-side-heading{padding:12px 15px}.guild-side-heading h2{font-size:20px}.guild-identity{padding:16px;text-align:left}.guild-identity p{margin:8px 0 14px}.guild-guide{display:none}.guild-tabs button{font-size:20px;gap:7px;padding:14px 12px;flex:1;justify-content:center}.guild-tabs svg{width:17px}.guild-board .team-toolbar{display:grid;grid-template-columns:1fr auto;padding:18px 0}.guild-search{grid-column:1/-1}.guild-board .team-toolbar select{max-width:none;width:100%}.guild-board .team-grid{grid-template-columns:1fr;gap:22px}.guild-board-heading{margin:3px 0 17px}.guild-board-heading h2{font-size:23px}.quest-card-inner,.adventurer-tile-inner{padding:20px}.quest-card h3{font-size:29px}.quest-field dd{font-size:13px}.quest-footer{flex-wrap:nowrap}.guild-open-slot{min-height:255px}.guild-empty-intro{padding:14px}.guild-empty-intro b{font-size:13px}.guild-wide-dialog{padding:25px 18px;max-height:92dvh;width:calc(100vw - 20px)}.guild-detail-grid{grid-template-columns:1fr;gap:12px}.guild-detail-heading h2{font-size:30px}.guild-detail-field{padding:15px}.guild-wide-dialog .form-grid{grid-template-columns:1fr;gap:0}.guild-wide-dialog .dialog-actions .btn{flex:1}.guild-apply{padding:16px}.guild-profile-toolbar{flex-wrap:wrap}.guild-wide-dialog .guild-public-card{box-shadow:none}#page-card-form .page-title{font-size:30px}#page-card-form .page-subtitle{font-size:14px}#page-card-form .page-shell{padding-left:16px;padding-right:16px}#page-card-form .form-panel-body{padding:20px 18px}#page-card-form .form-panel-head{padding:20px 18px}#page-card-form .form-actions{padding:18px;gap:12px}#page-card-form .form-actions .btn{flex:1;padding:10px}.result-navigation{flex-wrap:wrap}#page-card-result .card-result-stage{padding:20px 12px 40px}}
@media(prefers-reduced-motion:reduce){.guild-board .quest-card{animation:none}.quest-card,.adventurer-tile,.guild-surface .btn{transition:none}}
.quest-card-actions{display:flex;gap:6px}.quest-card-actions .btn{min-width:48px;width:auto!important}.guild-surface .guild-small.secondary{background:#ffe979;color:var(--guild-navy);box-shadow:none}.quest-composition{font-size:12px;color:#534f33;margin:13px 0 -3px;line-height:1.7}
.adventurer-tile .quest-ticket h3{font:400 21px var(--guild-pixel);color:#fff;margin:0;overflow-wrap:anywhere}.adventurer-tile .ability-card{max-width:none;box-shadow:none}.adventurer-actions{display:flex;gap:10px;padding:14px;background:var(--guild-yellow);border-top:1px solid #bda133}.adventurer-actions .btn{flex:1;margin:0!important;width:auto!important}.adventurer-tile .matching-mini{grid-template-columns:19% minmax(0,1fr)}
.guild-surface .recruit-button{background:var(--guild-yellow);color:var(--guild-navy);margin-top:10px;width:100%;box-shadow:2px 2px 0 #b6c9de}.guild-wide-dialog .recruit-button{margin-bottom:8px}
.notification-button{position:relative;gap:6px;padding:9px 12px!important}.notification-button[hidden]{display:none!important}#notificationBadge{position:absolute;top:-6px;right:-5px;min-width:18px;height:18px;padding:0 4px;background:#d72837;color:#fff;border-radius:9px;font:700 10px/18px system-ui,sans-serif}
.inbox-shell{max-width:960px;min-height:calc(100dvh - 115px)}.inbox-heading{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:32px}.inbox-heading .page-title{font:400 42px var(--guild-pixel);margin-bottom:15px}.inbox-heading p{font-size:14px;line-height:1.8;color:#58708e}.inbox-heading>svg{width:74px;height:74px;stroke-width:1.3;color:#6a8eba;flex-shrink:0}.inbox-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:3px solid var(--guild-navy);padding-bottom:15px;margin-bottom:22px}.inbox-filters{display:flex;gap:7px}.inbox-filters button{padding:10px 16px;background:#dfe9f4;color:#546b8b;border:1px solid #b3c5db;font-size:14px}.inbox-filters button[aria-pressed=true]{background:var(--guild-navy);color:#fff;border-color:var(--guild-navy)}
.inbox-item{display:flex;width:100%;text-align:left;align-items:center;gap:19px;padding:24px;background:#fff;border:1px solid #c6d5e7;margin-bottom:13px;color:var(--guild-navy);border-radius:3px}.inbox-item.unread{background:#fff6c9;border:1px solid #d4ba55;box-shadow:3px 3px 0 #d5dfe9}.inbox-item:hover{border-color:var(--guild-blue)}.inbox-icon{background:#e3effd;border:1px solid #bdd0e8;width:46px;height:46px;display:grid;place-items:center;flex-shrink:0}.inbox-icon svg{width:23px;height:23px}.inbox-item-copy{flex:1;min-width:0}.inbox-kind{font-size:12px;color:#5b7190;display:flex;align-items:center;gap:8px}.inbox-unread{background:#d22c3c;color:white;padding:2px 5px;font-size:10px}.inbox-item strong{display:block;font-size:16px;line-height:1.7;overflow-wrap:anywhere;margin:8px 0}.inbox-meta{display:block;font-size:12px;color:#5b7190;line-height:1.6}.inbox-item>svg{width:20px;height:20px;flex-shrink:0}.inbox-note{font-size:12px;color:#586d87;margin-top:28px;line-height:1.8}.notification-context{border:1px solid #d5bb58;background:#fff4bb;margin:10px 0 25px;padding:18px}.notification-context b{font-size:16px;line-height:1.8}.notification-context p{font-size:13px;color:#655d38;line-height:1.8}.notification-context .btn{font-size:12px}
@media(max-width:1150px){.notification-label{display:none}.notification-button{padding:9px!important}}
@media(max-width:900px){.site-actions .notification-button{display:inline-flex!important}}
@media(max-width:600px){.inbox-heading .page-title{font-size:32px}.inbox-heading>svg{display:none}.inbox-heading p{font-size:13px}.inbox-toolbar{flex-wrap:wrap}.inbox-toolbar>.btn{font-size:12px}.inbox-filters button{padding:10px 12px;font-size:13px}.inbox-item{padding:16px 13px;gap:12px}.inbox-icon{width:35px;height:35px}.inbox-item strong{font-size:14px}.inbox-item>svg{display:none}.inbox-meta{font-size:11px}.notification-context{padding:14px}}
@media(max-width:600px){}

@media(max-width:359px){.guild-hero-actions{grid-template-columns:1fr}}

/* The hall displays the finished artwork itself, with only one intent action. */
.guild-main{display:block;max-width:1210px;padding:18px 24px 54px}
.guild-hero-inner{display:block;max-width:1160px;padding:12px 24px}
.guild-hero-copy{display:flex;align-items:center;gap:24px}
.guild-kicker,.guild-banner-art{display:none}
.guild-hero h1{font-size:28px;margin:0;white-space:nowrap}
.guild-hero h1 span{display:inline;font-size:15px;margin:0 0 0 16px}
.guild-hero-actions{margin-left:auto;gap:10px}
.guild-hero-actions .btn{padding:9px 12px;font-size:13px}
.guild-board{min-width:0;position:relative}
.guild-tabs button{font-size:18px;padding:12px 16px}
.guild-board .team-toolbar{position:absolute;right:0;top:0;width:min(49%,480px);padding:3px 0}
.guild-search input{padding:9px 10px!important}
.guild-board-heading{margin:13px 0 15px}
.guild-board .team-grid{--guild-card-width:clamp(250px,calc((100dvh - 375px)*.726),370px);display:grid;grid-template-columns:repeat(3,minmax(0,var(--guild-card-width)));justify-content:center;align-items:start;gap:22px;overflow:visible;padding:0}
.guild-board .team-grid[data-columns="1"]{grid-template-columns:minmax(0,var(--guild-card-width))}
.guild-board .team-grid[data-columns="2"]{grid-template-columns:repeat(2,minmax(0,var(--guild-card-width)))}
.guild-column{display:flex;flex-direction:column;min-width:0;gap:24px}
.guild-column:nth-child(1){padding-top:48px}
.guild-column:nth-child(3){padding-top:92px}
.guild-board .team-grid[data-columns="1"] .guild-column{padding-top:0}
.quest-card,.adventurer-tile,.quest-card:hover,.adventurer-tile:hover{background:transparent;border:0;box-shadow:none;transform:none}
.guild-art-open{display:block;width:100%;padding:0;margin:0;border:0;background:transparent;text-align:left;cursor:zoom-in}
.guild-art-open:disabled{cursor:default}
.guild-art-open:focus-visible{outline:3px solid #0875ce;outline-offset:4px}
.guild-art-open .ability-card,.adventurer-tile .ability-card{display:block;width:100%;max-width:none;box-shadow:none}
.guild-art-actions{display:flex;gap:10px;padding:12px 0 0;background:transparent}
.guild-art-actions .btn{min-height:44px;flex:1;margin:0!important;box-shadow:none!important}
.guild-art-actions .btn:disabled{opacity:.55}
.guild-wide-dialog .guild-public-card{max-width:610px;box-shadow:none}
.guild-wide-dialog .guild-art-actions{max-width:610px;margin:0 auto;flex-wrap:wrap}
.guild-sample-note,.guild-empty-inline{grid-column:1/-1;font-size:13px;color:#536987;padding:6px 0 14px}
.guild-sample-note{margin-bottom:-6px}
.guild-empty-inline .btn{margin-left:12px}
.guild-form-intro{font-size:13px;color:#536987;line-height:1.8}
.guild-notification-context{max-width:610px;margin:0 auto 15px;font-size:14px;line-height:1.7;color:#344e75}
/* Captain fills a free slot with a player's 选手码; the invited player answers in the inbox. */
.slot-panel{margin-top:18px;padding:18px;text-align:left;background:#fff;border:1px solid #c6d5e7;border-radius:14px}
.slot-panel h3{margin:16px 0 8px;font-size:15px}
.slot-panel>p{margin:6px 0 12px}
.slot-invite{display:flex;gap:10px;align-items:center;margin:6px 0 4px}
.slot-invite input{flex:1;min-width:0}
.inbox-item{flex-direction:column;align-items:stretch;gap:0}
.inbox-open{display:flex;width:100%;align-items:center;gap:19px;padding:0;background:none;border:0;font:inherit;color:inherit;text-align:left;cursor:pointer}
.inbox-actions{display:flex;gap:10px;margin-top:14px}
@media(max-width:960px){.guild-board .team-toolbar{position:static;width:100%;padding:12px 0}.guild-board .team-grid{grid-template-columns:repeat(2,minmax(0,var(--guild-card-width)))}.guild-column:nth-child(1){padding-top:0}.guild-column:nth-child(2){padding-top:60px}.guild-column:nth-child(3){padding-top:0}}
@media(max-width:620px){.guild-main{padding:16px 16px 36px}.guild-hero-inner{padding:14px 16px}.guild-hero-copy{display:block}.guild-hero h1{font-size:27px;white-space:normal}.guild-hero h1 span{display:block;font-size:15px;margin:6px 0 0}.guild-hero-actions{display:flex;margin:12px 0 0}.guild-hero-actions .btn{flex:1;justify-content:center;font-size:12px}.guild-board .team-grid{--guild-card-width:min(100%,360px);grid-template-columns:minmax(0,var(--guild-card-width))}.guild-column:nth-child(2){padding-top:0}.guild-column{gap:22px}.guild-art-actions .btn{font-size:13px}}

/* Recruitment editing uses a separate layout; finished card art remains untouched. */
#teamDialog:has(#teamForm.team-recruit-form){width:min(1180px,calc(100vw - 40px));max-width:none;max-height:92dvh;padding:30px;scroll-padding:24px}
#teamDialog:has(#teamForm.team-recruit-form) .guild-form-intro{max-width:660px;margin-bottom:24px}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form{color:var(--ink);min-width:0}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-form-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(290px,.85fr);align-items:start;gap:34px}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-form-fields{min-width:0}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-form-section{padding:0 0 8px;margin:0 0 25px;border-bottom:1px solid var(--line)}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-form-section h3{display:flex;align-items:center;gap:10px;margin:0 0 20px;padding:0;border:0;font-family:inherit;font-size:18px;font-weight:700;line-height:1.5;color:var(--ink)}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-form-section h3>span{display:inline-grid;place-items:center;width:29px;height:29px;border-radius:9px;background:var(--blue-soft);font:600 12px/1.2 system-ui;color:var(--navy)}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .form-field{min-width:0;margin-bottom:19px}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .form-field label{display:block;margin-bottom:8px;font-size:13px;font-weight:600;line-height:1.5}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form :is(input:not([type=checkbox]),textarea,select){width:100%;min-width:0;border-radius:10px;background:#fff;color:var(--ink);font-size:14px;line-height:1.6;padding:10px 12px;border:1px solid #cadbe8}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form textarea{resize:vertical;min-height:80px}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form :is(input,textarea)::placeholder{color:#6a8092;opacity:1}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form :is(input,textarea,select):focus-visible{outline:3px solid #d9ecff;outline-offset:1px;border-color:#427aa9}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form select:disabled{color:#647889;background:#edf3f7;opacity:1}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-field-meta{display:flex;justify-content:space-between;align-items:baseline;gap:14px;margin-top:6px;color:#5c7387;font-size:11px;line-height:1.6}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-field-meta:has(>span:only-child:empty){display:none}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form [data-count-for]{white-space:nowrap;font-variant-numeric:tabular-nums}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .field-hint{color:#5c7387;font-size:11px;line-height:1.7;margin:7px 0 0}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .guild-role-field{padding:14px;margin:0 0 10px;border:1px solid var(--line);border-radius:12px;background:#fff}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .guild-role-field legend{font-size:13px;color:var(--ink);font-weight:600;padding:0 6px}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-role-options{display:flex;flex-wrap:wrap;gap:8px}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-tag{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;margin:0;border:1px solid #d9e5ed;border-radius:9px;background:#f6fafc;font-size:13px;cursor:pointer;color:var(--ink)}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-tag:has(input:checked){background:#e5f2ff;border-color:#8eb6d7;color:#173f63}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-tag:has(input:focus-visible){outline:3px solid #d9ecff;outline-offset:1px}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-tag input{margin:0;accent-color:var(--navy)}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-recruit-summary{font-size:12px;line-height:1.7;color:#526d82;margin:10px 0 16px}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-role-detail{padding:17px 17px 0;margin-bottom:14px;background:#eff6fb;border:1px solid #dce8f1;border-radius:12px}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-role-detail-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-role-detail-heading h4{font-size:15px;font-weight:700;color:var(--navy);margin:0}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-role-detail-heading .form-field{display:flex;align-items:center;gap:10px;margin:0}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-role-detail-heading label{margin:0;font-size:12px;white-space:nowrap}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-role-detail-heading select{width:94px;padding:6px 9px;min-height:36px}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-role-notice{color:#8a4c11;background:#fff6e7;border-radius:8px;padding:9px 11px;font-size:12px;line-height:1.7;margin:8px 0 15px}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-optional-fields{margin-bottom:25px;border:1px solid var(--line);border-radius:12px;background:#fff}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-optional-fields>summary{padding:16px 18px;cursor:pointer;font-size:14px;font-weight:600}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-optional-fields>summary>span{font-size:12px;color:#5c7387;font-weight:400;margin-left:8px}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-optional-fields>div{padding:0 18px 0}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-form-preview{position:sticky;top:0;align-self:start;min-width:0}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-card-preview{margin:0;color:var(--ink)}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-card-preview>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none;border-bottom:1px solid var(--line);padding:0 0 12px;font-size:13px}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-card-preview>summary::-webkit-details-marker{display:none}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-card-preview>summary>span{font-weight:400;color:#637b8f;font-size:11px}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-card-preview .guild-public-card{width:min(100%,calc((92dvh - 130px)*.7258));max-width:480px!important;margin:15px auto 0;border:0;border-radius:0;background:transparent;box-shadow:none}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-preview-note{text-align:center;font-size:11px;color:#5c7387;line-height:1.6;margin:10px 0 0}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-submit-area{border-top:1px solid var(--line);margin-top:2px;padding-top:16px}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .dialog-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0;padding:0}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .dialog-actions>span{font-size:12px;line-height:1.7;color:#5c7387}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .dialog-actions .btn{min-width:145px;min-height:44px;border-radius:11px;box-shadow:none;transform:none;font-weight:600}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .dialog-actions .btn:disabled{opacity:.65;cursor:wait}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-form-error{display:block;color:#b32925;font-size:12px;line-height:1.6;margin:7px 0 0}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-submit-error{color:#a22824;background:#fff0ee;border:1px solid #e5b5b0;border-radius:10px;padding:12px;font-size:13px;line-height:1.7;margin:0 0 16px}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .invalid :is(input,textarea),:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .guild-role-field.invalid{border-color:#c6574d;background:#fff9f8}
:is(#teamDialog,#page-team-create) #teamForm.team-recruit-form [hidden]{display:none!important}
@media(max-width:900px){
 #teamDialog:has(#teamForm.team-recruit-form){width:min(720px,calc(100vw - 24px));padding:28px 22px;max-height:94dvh}
 :is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-form-layout{display:block}
 :is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-form-preview{position:static;margin:0 0 22px}
 :is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-card-preview{padding:15px;border:1px solid var(--line);border-radius:12px;background:#fff}
 :is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-card-preview>summary{padding:0;border:0;min-height:22px}
 :is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-card-preview .guild-public-card{width:min(100%,440px)}
}
@media(max-width:520px){
 #teamDialog:has(#teamForm.team-recruit-form){width:calc(100vw - 16px);padding:28px 16px 22px}
 :is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .form-grid{grid-template-columns:1fr;gap:0}
 :is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-form-section h3{font-size:17px}
 :is(#teamDialog,#page-team-create) #teamForm.team-recruit-form :is(input:not([type=checkbox]),textarea,select){font-size:16px}
 :is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-role-detail{padding:14px 12px 0}
 :is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .team-role-detail-heading .form-field{gap:7px}
 :is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .dialog-actions{align-items:stretch;flex-direction:column;gap:10px}
 :is(#teamDialog,#page-team-create) #teamForm.team-recruit-form .dialog-actions .btn{width:100%;flex:none}
}

/* The team has its own page, with the same calm form language as registration. */
.team-workspace{background:#f5f9fc;min-height:100dvh;color:var(--ink)}
.team-page-shell{max-width:1180px;margin:0 auto;padding:36px 28px 80px}
.team-page-nav{display:flex;justify-content:space-between;gap:16px;margin-bottom:30px}
.team-page-nav .btn{font-size:13px;min-height:42px}
.team-page-heading{margin-bottom:36px}
.team-page-heading h1{font-size:36px;letter-spacing:-1px;line-height:1.3;margin:0 0 12px}
.team-page-heading p,.team-help{color:#566e80;line-height:1.8;font-size:14px;margin:8px 0 18px}
.team-page-empty{padding:54px 24px;background:#fff;border:1px solid #dce6ee;border-radius:16px;text-align:center}
.team-page-empty>svg{width:36px;height:36px;color:#46718d;margin:0 auto 12px}
.team-page-empty h2{font-size:24px;margin:8px 0}
.team-page-empty p{color:#566e80}
.team-page-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.team-page-empty .team-page-actions{justify-content:center;margin-top:24px}
.my-team-heading{display:flex;justify-content:space-between;align-items:center;gap:28px;margin-bottom:26px;padding-bottom:26px;border-bottom:1px solid #d4e1eb}
.team-state{color:#416479;font-size:13px}
.my-team-heading h2{font-size:28px;line-height:1.4;margin:8px 0}
.my-team-heading p{max-width:640px;line-height:1.8;color:#566e80;overflow-wrap:anywhere;margin:0}
.my-team-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:36px;align-items:start}
.my-team-main{min-width:0}
.team-work-section{background:#fff;border:1px solid #dce6ee;border-radius:14px;padding:24px;margin-bottom:20px}
.team-work-section h3,.my-team-card h3{font-size:18px;margin:0 0 12px;line-height:1.5}
.team-work-section h4{font-size:14px;margin:24px 0 10px}
.team-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.team-section-heading>span{font-size:13px;color:#60768a;white-space:nowrap}
.team-person-row{display:flex;align-items:center;gap:14px;padding:18px 0;border-bottom:1px solid #edf1f5}
.team-person-row:last-child{border:0;padding-bottom:0}
.team-person-mark{display:grid;place-items:center;background:#edf5fb;color:#2e5770;width:42px;height:42px;border-radius:12px;flex-shrink:0;font-weight:700}
.team-person-row p{font-size:13px;color:#61798b;margin:3px 0 0}
.team-person-row b{font-size:15px;overflow-wrap:anywhere}
.team-person-role{margin-left:auto;white-space:nowrap;font-size:12px;color:#60768a}
.team-pending-row{display:flex;justify-content:space-between;gap:18px;font-size:13px;line-height:1.7;padding:10px 0}
.team-pending-row span{color:#6a7f8d}
.team-workspace .slot-invite input{width:100%;border:1px solid #c7d8e4;border-radius:9px;padding:12px;font-size:15px;background:#fff;color:var(--ink)}
.team-inline-error{color:#ae332c;font-size:13px;line-height:1.7;margin:12px 0 0}
.team-page-actions .team-danger{color:#a94235}
.my-team-card{position:sticky;top:110px;min-width:0}
.my-team-card .guild-public-card{width:100%;margin:0;border:0;background:transparent;box-shadow:none}
.my-team-card>.btn{width:100%;margin-top:14px}
#page-team-create .guild-form-intro{margin-bottom:26px;font-size:14px}
#page-team-create #teamForm .team-form-preview{top:115px}
#page-team-create #teamForm .team-card-preview .guild-public-card{width:100%;max-width:390px!important}
#page-team-create #teamForm .team-form-section{padding-bottom:16px;margin-bottom:30px}
#page-team-create #teamForm .team-submit-area{position:static;padding:22px 0}
#page-teams .guild-hero-actions{flex-wrap:wrap}
@media(max-width:900px){
 .my-team-layout{grid-template-columns:minmax(0,1fr) 240px;gap:22px}
 .team-page-shell{padding-top:30px}
 .my-team-heading{align-items:flex-start;flex-direction:column;gap:16px}
 #page-team-create #teamForm .team-form-preview{position:static}
}
@media(max-width:620px){
 .team-page-shell{padding:24px 18px 48px}
 .team-page-heading{margin-bottom:26px}
 .team-page-heading h1{font-size:29px}
 .team-page-nav{margin-bottom:25px}
 .my-team-layout{grid-template-columns:1fr;gap:16px}
 .team-work-section{padding:20px 16px}
 .my-team-card{position:static;max-width:360px;width:100%;margin:0 auto}
 .team-workspace .slot-invite{flex-direction:column;align-items:stretch}
 .team-workspace .slot-invite input{font-size:16px}
 .team-person-row{gap:10px}
 .team-person-mark{width:36px;height:36px}
 .team-page-actions .btn{font-size:13px}
 #page-teams .guild-hero-actions .btn{flex:1 1 auto}
}
/* Player journey: private account controls and explicit card publication. */
.my-team-entry { padding-left: 24px; border-left: 3px solid var(--green, #267756); }
.my-team-entry .status-copy { flex: 1; }
.team-pending-choice { padding: 18px 0; border-bottom: 1px solid #d9e2df; margin-bottom: 18px; }
.team-pending-choice .btn { margin: 6px 8px 0 0; }
.card-completion-privacy { margin: 0; padding: 0 24px 22px; color: #536166; font-size: 13px; line-height: 1.7; }
#copyMyPlayerCode { margin: 0 28px; }
.my-profile > .field-hint { margin: 12px 28px 24px; line-height: 1.6; }
#myRegNo { overflow-wrap: anywhere; }
@media (max-width: 600px) { .my-team-entry { align-items: stretch; flex-direction: column; gap: 16px; } .my-team-entry .status-actions { display: flex; flex-wrap: wrap; } }
/* One shared board: compact requests occupy the first of the three columns. */
#page-teams .team-grid.guild-unified{grid-template-columns:repeat(3,minmax(0,var(--guild-card-width)));align-items:start;gap:24px}
#page-teams .guild-unified>.guild-column{padding-top:0}
#page-teams .guild-unified>.guild-people-2{padding-top:64px}
.guild-recruit-column{min-width:0}
.guild-column-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:38px;margin:0 0 18px;font:700 15px var(--font-body, sans-serif);color:#30445d}
.guild-column-heading h2{font:inherit;margin:0}.guild-column-heading .btn{font-size:12px;padding:7px 11px;min-height:34px}
.guild-people-column>.guild-column-heading{margin-bottom:0}.guild-column-spacer{height:38px}
.recruit-note-list{display:flex;flex-direction:column;gap:18px}
.recruit-note{--note-accent:#637b34;position:relative;background:#fffbeb;border:1px solid #e4dfc9;border-top:3px solid var(--note-accent);padding:23px 22px 17px;border-radius:2px 2px 12px 12px;box-shadow:0 5px 12px #33435806;overflow-wrap:anywhere}
.recruit-note[data-role="程序"]{--note-accent:#7660a4}.recruit-note[data-role="美术"]{--note-accent:#b97554}.recruit-note[data-role="音效"]{--note-accent:#458e8a}
.recruit-note h3{font-size:16px;line-height:1.55;margin:0 0 15px;color:#283e50;font-weight:750}
.recruit-sentence{font-size:18px;line-height:1.85;letter-spacing:.01em;color:#53606a;margin:0;overflow-wrap:anywhere;white-space:pre-wrap}
.recruit-sentence strong{font-weight:700;color:var(--note-accent,#315c54);padding:0 3px}
.recruit-note-action{margin-top:21px;border-top:1px solid #e7e2cd;padding-top:13px;display:flex;justify-content:flex-end}
.recruit-note-action .btn{min-height:36px;padding:8px 14px;font-size:12px;box-shadow:none!important;margin:0!important}
.guild-unified .guild-empty-inline{font-size:14px;line-height:1.8;padding:25px 16px;background:#edf3f7;border:1px dashed #cad7df;border-radius:12px}
.guild-unified .guild-empty-inline .btn{margin-top:12px}
.light-recruit-form{max-width:820px;margin:28px 0 60px}.light-recruit-form>.form-field{max-width:500px}.light-recruit-form input,.light-recruit-form select{border:1px solid #ced9df;background:white;color:#253d51;border-radius:9px;padding:12px 14px;font:inherit;min-width:0;max-width:100%}.light-recruit-form>.form-field input{width:100%;box-sizing:border-box}
.recruit-sentence-builder{border:0;padding:0;margin:28px 0}.recruit-sentence-builder legend{font-size:14px;font-weight:700;margin-bottom:15px}.sentence-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;line-height:2}.recruit-skill-field{flex:1;min-width:180px}.recruit-skill-field input{width:100%;box-sizing:border-box}
.light-recruit-preview{margin:28px 0;padding:24px 28px;background:#fffbeb;border-left:3px solid #d8b947;border-radius:0 12px 12px 0}.light-recruit-preview>span{font-size:11px;color:#948965;letter-spacing:.08em}.light-recruit-preview h3{font-size:18px;margin:14px 0 10px}.light-recruit-preview p{font-size:20px;line-height:1.9;margin:0;color:#425860;overflow-wrap:anywhere}
.recruit-detail .recruit-sentence{margin:24px 0}.recruit-detail h2{font-size:24px}
@media(min-width:621px) and (max-width:960px){#page-teams .team-grid.guild-unified{grid-template-columns:repeat(2,minmax(0,var(--guild-card-width)))}#page-teams .guild-unified>.guild-people-column{padding-top:0}}
@media(max-width:620px){#page-teams .team-grid.guild-unified{grid-template-columns:minmax(0,var(--guild-card-width));gap:32px}#page-teams .guild-unified>.guild-column{padding-top:0}.guild-recruit-column .recruit-note-list{max-height:510px;overflow-y:auto;padding:0 4px 12px 0;scrollbar-width:thin;overscroll-behavior:auto}.recruit-note{padding:20px}.recruit-sentence{font-size:17px}.light-recruit-preview{padding:20px}.light-recruit-preview p{font-size:18px}.recruit-skill-field{flex:1 1 65%}.guild-hero-actions{flex-wrap:wrap}.guild-column-heading{font-size:15px}}

/* The unified board no longer has a tab row to anchor an absolute toolbar. */
#page-teams #guildBoardPanel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,480px);column-gap:24px;row-gap:20px}
#page-teams #guildBoardPanel>.team-toolbar{position:static;width:100%;grid-column:2;grid-row:1;padding:0;margin:0}
#page-teams #guildBoardPanel>.guild-board-heading{grid-column:1;grid-row:1;align-items:flex-start;justify-content:center;flex-direction:column;gap:5px;margin:0}
#page-teams #guildBoardPanel>.team-grid{grid-column:1/-1}
@media(max-width:960px){#page-teams #guildBoardPanel{display:block}#page-teams #guildBoardPanel>.team-toolbar{padding:12px 0}#page-teams #guildBoardPanel>.guild-board-heading{flex-direction:row;justify-content:space-between;align-items:center;gap:10px;margin:8px 0 22px}}

.recruit-name{border:0;background:none;color:inherit;font:inherit;padding:0;text-align:left;cursor:pointer;overflow-wrap:anywhere}
.recruit-name:hover{text-decoration:underline;text-underline-offset:4px}.recruit-name:focus-visible{outline:2px solid #315b7d;outline-offset:5px}
.recruit-captain{margin:8px 0 16px;font-size:13px;color:#5c6d7e}
.recruit-contact{padding:16px 20px;background:#edf3f6;border-radius:12px;margin:18px 0;font-size:15px;line-height:1.8;overflow-wrap:anywhere}
.recruit-contact p{margin:3px 0}.recruit-contact strong{margin-left:8px;color:#263d58}.contact-value{user-select:text}.team-contact{font-size:14px;line-height:1.9;overflow-wrap:anywhere}
#quickTeamContactForm .field-hint{line-height:1.7;margin:10px 0 22px}
