@font-face{font-family:Pretendard;src:url('/designs/assets/Pretendard-Regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Pretendard;src:url('/designs/assets/Pretendard-Bold.woff2') format('woff2');font-weight:600 900;font-display:swap}

:root{
  font-family:Pretendard,system-ui,-apple-system,'Segoe UI','Malgun Gothic',sans-serif;
  font-size:14px;line-height:1.6;color:#29332d;background:#f7f6f1;
  --bg:#f7f6f1;--surface:#fffefa;--accent:#b84920;--accent-dark:#963a18;
  --text:#29332d;--muted:#626c60;--border:#dedfd5;--soft:#eeefe8;--sidebar:#f0f0e8;
  --positive:#3b6748;--positive-bg:#edf3e9;--warning:#85611d;--warning-bg:#faf1df;
}
*{box-sizing:border-box}
body{margin:0}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}
button{border:1px solid transparent;border-radius:8px;min-height:42px;padding:9px 15px;background:var(--accent);color:white;font-weight:700;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background .15s,border-color .15s}
button:hover{background:var(--accent-dark)}button:disabled{opacity:.5;cursor:not-allowed}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #ac552d;outline-offset:3px}
a{color:var(--accent);text-underline-offset:3px}
input,select,textarea{border:1px solid #d6d9cd;border-radius:8px;min-height:43px;width:100%;padding:9px 12px;color:var(--text);background:var(--surface)}
input::placeholder,textarea::placeholder{color:#70786d}textarea{resize:vertical}
label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:700;min-width:0}
label small{font-size:12px;font-weight:400;color:var(--muted)}
h1,h2,h3,p{margin:0}h1{font-size:29px;line-height:1.35;letter-spacing:-1px}h2{font-size:18px;line-height:1.5;letter-spacing:-.45px}h3{font-size:16px;margin-bottom:14px}strong,b{font-weight:700}p{line-height:1.8}
svg{width:20px;height:20px;flex-shrink:0}.secondary{background:var(--surface);color:#465244;border-color:var(--border)}.secondary:hover{background:#eeefe7;border-color:#c8cebe}
.wide-button{width:100%;display:flex;align-items:center;justify-content:space-between}
.text-button{background:transparent;color:var(--accent);padding:7px 0;min-height:36px;font-size:13px}.text-button:hover{background:transparent;color:var(--accent-dark)}
.brand{display:inline-flex;align-items:center;gap:11px;color:#29372e;text-decoration:none;font-size:26px;font-weight:700;letter-spacing:-.8px;line-height:1.2}
.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#cf622f;color:white}.brand-mark svg{width:25px;height:25px}
.brand small{display:block;margin-top:5px;font-size:10px;font-weight:400;letter-spacing:0;color:var(--muted)}
.eyebrow{display:block;font-size:11px;font-weight:700;letter-spacing:1.1px;color:#9b522d}
.badge,.subtle-tag{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);border-radius:6px;padding:4px 9px;background:var(--soft);color:#53614b;font-size:12px;white-space:nowrap}
.field-help{font-size:13px;line-height:1.8;color:var(--muted)}.muted{color:var(--muted);font-size:13px}
.actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.actions button{font-size:13px}
.empty-state{padding:24px 0;font-size:14px;line-height:1.9;color:var(--muted)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.mobile-only{display:none}[hidden]{display:none!important}

/* A quiet, centered entry. Nexon consent is the primary action. */
.login-page{min-height:100svh;display:flex;flex-direction:column;padding:28px 40px 22px;background:var(--bg)}
.login-header,.login-footer{display:flex;justify-content:space-between;align-items:center;gap:20px}.login-header>span{font-size:13px;color:var(--muted)}
.login-center{width:100%;max-width:440px;margin:auto;padding:32px 0}.login-intro{text-align:center;margin-bottom:24px}
.login-intro .eyebrow{margin-bottom:13px;font-size:10px;letter-spacing:2.1px}.login-intro h1{font-size:33px;line-height:1.38;letter-spacing:-1.4px}
.login-intro p{font-size:14px;color:var(--muted);margin-top:13px}.login-points{display:flex;align-items:center;justify-content:center;gap:12px;color:#626c60;font-size:12px;margin-top:17px}
.login-points span+span:before{content:'·';margin-right:12px;color:#b0b5a7}
.login-card{padding:27px 29px;background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:0 8px 30px #373b2606}
.card-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:20px}.card-heading h2{font-size:17px}.card-heading .subtle-tag{font-size:11px;border:0}
.nexon-button{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:48px;background:#303a30;font-size:14px}.nexon-button:hover{background:#202c24}.nexon-button:disabled{opacity:1;background:#303a30;color:#eff3ea}
.nexon-button b{display:grid;place-items:center;width:18px;height:18px;background:#fff;color:#253429;font-size:12px;line-height:1}
.approval-note{margin:11px 0 0;text-align:center;color:#68664e;font-size:12px;line-height:1.7}.approval-note:before{content:'•';color:#946b20;margin-right:6px}
.login-footer{font-size:11px;color:var(--muted)}.login-footer a{color:inherit;text-decoration:none}
.session-loading{min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;padding:30px;text-align:center}.session-loading p,.session-loading noscript{font-size:14px;color:var(--muted)}.session-loading .brand{pointer-events:none}.session-loading[aria-busy="true"]:after{content:'';width:22px;height:22px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:session-spin .8s linear infinite}@keyframes session-spin{to{transform:rotate(360deg)}}

/* Stable workspace shell and restrained navigation. */
#workspace{display:flex;min-height:100svh}.sidebar{position:fixed;inset:0 auto 0 0;width:236px;display:flex;flex-direction:column;padding:27px 16px 18px;background:var(--sidebar);border-right:1px solid var(--border);z-index:40}
.sidebar>.brand{margin:0 12px}.sidebar .brand small{display:none}.sidebar .brand-mark{width:34px;height:34px}.sidebar .brand-mark svg{width:23px;height:23px}
.guild-picker{padding:14px 13px;margin:30px 0 24px;background:#fafbf5;border:1px solid var(--border);border-radius:10px}
.guild-picker label{font-size:11px;font-weight:400;color:var(--muted);gap:4px}.guild-picker select{min-height:31px;padding:2px 0;border:0;background:transparent;font-size:13px;font-weight:700;text-overflow:ellipsis;overflow:hidden}
.guild-picker .context-picker{border-top:1px solid var(--border);padding-top:10px;margin-top:10px}.guild-picker .context-picker select{font-size:13px;font-weight:400}
.nav-label{font-size:10px;font-weight:700;letter-spacing:1.6px;color:#697462;margin:0 13px 12px}.manager-nav{display:grid;gap:5px}
.manager-nav button{display:flex;align-items:center;gap:12px;min-height:45px;padding:11px 13px;background:transparent;color:#596653;font-size:14px;font-weight:400;text-align:left;position:relative}
.manager-nav button svg{width:18px;height:18px}.manager-nav button:hover{background:#e6e9dd;color:var(--text)}.manager-nav button.active{background:var(--surface);color:#97451f;font-weight:700}.manager-nav button.active svg{color:#b55226}
.sidebar-bottom{margin-top:auto;padding-top:24px}.reset-card{display:flex;gap:9px;align-items:flex-start;border-top:1px solid #d9ddcf;padding:18px 11px 14px;color:#59654e;font-size:12px}.reset-card strong{display:block;color:#3d4e36;font-size:13px;margin-top:3px}.status-dot{width:6px;height:6px;border-radius:50%;background:#7a8e62;flex-shrink:0;margin-top:7px}
#identity{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid #d9ddcf;padding:15px 10px 0;font-size:13px;font-weight:700}#identity button{border:0;background:transparent;padding:4px 0;color:var(--muted);font-size:12px;font-weight:400;min-height:30px}
.workspace-body{margin-left:236px;width:calc(100% - 236px);min-width:0}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;height:66px;padding:0 36px;border-bottom:1px solid var(--border);background:#faf9f5}.topbar>div{display:flex;align-items:center;gap:13px}.topbar-kicker{font-size:12px;color:var(--muted)}.topbar-divider{color:#b0b6a5}#view-title{font-size:14px;font-weight:700}.topbar .badge{background:#eff2e9;border-color:#e0e4d8;font-size:11px}.topbar .badge:before{content:'';width:5px;height:5px;border-radius:50%;background:#77876a}
.icon-button{display:grid;place-items:center;width:40px;height:40px;min-height:40px;padding:7px;border:1px solid var(--border);background:var(--surface);color:var(--text)}.icon-button:hover{background:var(--soft)}#mobile-menu,#close-menu{display:none}
.topbar .badge[data-status="pending"]:before{background:#9b762e}
.workspace-main{max-width:1536px;margin:0 auto;padding:30px 36px 20px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:12px}.page-heading h1{margin:6px 0}.page-heading p{font-size:13px;color:var(--muted)}.page-heading .eyebrow{font-size:11px;letter-spacing:.2px}
.week-controls{display:flex;align-items:center;gap:9px;flex-shrink:0}.week-controls input{width:151px;min-height:41px;font-size:13px;font-variant-numeric:tabular-nums}.week-controls button{font-size:12px;min-height:41px;padding:9px 12px}.week-switch{display:flex}.week-switch button{border-radius:0}.week-switch button:first-child{border-radius:8px 0 0 8px}.week-switch button:last-child{border-radius:0 8px 8px 0;margin-left:-1px}.week-controls .refresh-button{width:41px;padding:0;font-size:20px}
.period-bar{display:flex;align-items:center;gap:7px;margin-bottom:25px;font-size:12px;color:var(--muted)}.period-bar svg{width:14px;height:14px}.period{font-variant-numeric:tabular-nums}.period-timezone{margin-left:3px;padding-left:10px;border-left:1px solid #d4d9cb;font-size:11px}.week-lookup-note{margin:-10px 0 23px;max-width:900px}
.banner{padding:12px 16px;margin-bottom:24px;border:1px solid #dedfc8;border-radius:8px;background:#f0f1e2;color:#606b4b;font-size:12px;line-height:1.8}
.panel{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:24px;margin-bottom:20px;min-width:0}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:21px}.section-heading p{font-size:13px;color:var(--muted);margin-top:5px}.section-heading>button{font-size:13px}.panel-kicker{display:block;color:var(--muted);font-size:11px;margin-bottom:5px}

/* Counts remain a single strip; color communicates state rather than decoration. */
.stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));background:var(--surface);border:1px solid var(--border);border-radius:12px;margin-bottom:18px;overflow:hidden}
.stat{padding:20px 22px;min-width:0}.stat+.stat{border-left:1px solid var(--border)}.stat-label{display:block;color:#57634f;font-size:13px}.stat strong{display:block;font-size:32px;line-height:1.25;letter-spacing:-.7px;margin:8px 0 7px;font-variant-numeric:tabular-nums}.stat-note{display:block;color:var(--muted);font-size:11px;line-height:1.5}.stat[data-status="unknown"] strong{color:var(--warning)}.stat[data-status="participated"] strong{color:var(--positive)}.stat[data-status="absent"] strong{color:#9a493e}
.my-record{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#edf1e7;border:1px solid #dde4d4;border-radius:9px;padding:13px 18px;margin-bottom:22px}.my-record>div{display:flex;align-items:center;gap:18px;min-width:0}.my-record-label{font-size:12px;color:#56644d;white-space:nowrap}.my-status{font-size:13px;color:#3f593c;overflow-wrap:anywhere}.my-status[data-status="unknown"]{color:#6e602f}.sharing-options{position:relative;flex-shrink:0}.sharing-options summary{font-size:12px;color:#53654b}.sharing-options:has(#sharing-revoke[hidden]){display:none}#sharing-revoke{position:absolute;right:0;top:29px;z-index:5;font-size:12px;box-shadow:0 4px 12px #26321a12;min-height:40px}
.overview-grid{display:grid;grid-template-columns:1.13fr 1fr;gap:20px;align-items:start}.overview-grid .panel{margin-bottom:0}.ranking-panel .section-heading{margin-bottom:10px}.leader-row{display:flex;align-items:center;gap:16px;padding:14px 0;min-height:55px;border-bottom:1px solid #e9eae1;font-size:14px}.leader-row:last-child{border-bottom:0}.leader-row>span:last-child{margin-left:auto;white-space:nowrap;font-weight:700;font-variant-numeric:tabular-nums}.leader-row small{font-size:12px;color:var(--muted);margin-left:5px;font-weight:400}.rank-number{display:inline-flex;align-items:center;justify-content:center;width:24px;min-width:24px;height:24px;border-radius:5px;color:#616b5b;font-size:12px;font-weight:700;font-variant-numeric:tabular-nums}.leader-row:first-child .rank-number{background:#f8e9db;color:#a14b21}.leader-row:first-child>span:last-child{color:#a14b21}
.progress-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:23px}.progress-heading>strong{font-size:30px;line-height:1;font-variant-numeric:tabular-nums;letter-spacing:-.8px;color:#36593a}.progress-track{height:8px;overflow:hidden;border-radius:3px;background:#e7ebdf}.progress-track>div{height:100%;background:#688151;border-radius:3px;transition:width .2s ease}.progress-caption{font-size:12px;color:#53634a;margin-top:11px}.review-panel #review-summary{font-size:14px;color:#4c5946;margin:20px 0 17px}.review-panel>button{width:100%;display:flex;justify-content:space-between;align-items:center;min-height:43px}.info-note{display:flex;align-items:flex-start;gap:8px;color:#58664e;font-size:12px;line-height:1.8;margin-top:19px}.info-mark{display:inline-grid;place-items:center;border:1px solid #879779;border-radius:50%;width:15px;height:15px;font-size:10px;font-weight:700;flex-shrink:0;margin-top:3px}

/* Roster: compact, aligned numeric columns and distinct unknown/absent states. */
.members-panel{padding:24px 0 0;overflow:hidden}.members-panel>.section-heading,.members-panel>.table-controls{padding-left:24px;padding-right:24px}.members-panel>.section-heading{align-items:flex-start}.members-panel .actions{justify-content:flex-end}.export-button{border-color:transparent;background:transparent;color:var(--muted)}
.table-controls{display:flex;align-items:flex-end;gap:16px;padding-bottom:22px}.table-controls label{width:175px;flex-shrink:0}.table-controls .search-control{width:260px}.table-controls input,.table-controls select{font-size:13px}.table-help{margin-left:auto;font-size:12px;line-height:1.8;color:var(--muted)}
.table-wrap{width:100%;overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px;white-space:nowrap}th{padding:11px 16px;font-size:12px;font-weight:400;color:#626c5b;text-align:left;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:#fafbf6}th:first-child,td:first-child{padding-left:24px}th:last-child,td:last-child{padding-right:24px}
td{padding:15px 16px;border-bottom:1px solid #e8eae1;vertical-align:middle;color:#35402e}tr:last-child td{border-bottom:0}tbody tr:hover{background:#f9faf4}tr.is-mine{background:#fcf9f0}.numeric-cell{text-align:right;font-variant-numeric:tabular-nums}td.score{font-weight:700;color:#2e3b2a;font-variant-numeric:tabular-nums}
.member-cell{display:flex;align-items:center;gap:11px;min-width:155px}.member-avatar{display:inline-grid;place-items:center;width:32px;height:32px;flex-shrink:0;border-radius:8px;background:#eef0e8;color:#617052;font-size:13px;font-weight:700}.is-mine .member-avatar{background:#f6e5d5;color:#a6532a}.member-copy{min-width:0}.member-name{display:block;font-size:14px;line-height:1.55;color:var(--text)}.sub,.record-meta{display:block;font-size:12px;color:#626d5b;line-height:1.6;margin-top:4px}.member-copy .sub{font-size:11px;white-space:normal;max-width:210px}
.status-pill{display:inline-flex;align-items:center;gap:6px;flex:none;white-space:nowrap;font-size:12px;padding:4px 9px;border-radius:5px;line-height:1.6}.status-pill:before{content:'';width:5px;height:5px;border-radius:50%;background:currentColor}.status-participated{background:var(--positive-bg);color:var(--positive)}.status-unknown{background:var(--warning-bg);color:var(--warning)}.status-absent{background:#f9ebe7;color:#974b40}.status-exempt{background:#eeeaf3;color:#71607f}
.me-label{display:inline-block;vertical-align:middle;margin-left:5px;padding:1px 5px;border-radius:4px;background:#f4e5d5;color:#925023;font-size:10px;font-weight:400}.reward-tag{display:inline-flex;align-items:center;white-space:nowrap;flex:none;font-size:11px;color:#95511f;background:#faf0e1;padding:3px 7px;border-radius:4px;margin:2px 4px 2px 0}.record-note{max-width:210px;white-space:normal;font-size:12px;line-height:1.7}.record-source{font-size:12px;color:#53634b}.record-source[data-source="nexon"]{color:#3b6748}.record-meta{font-size:11px;overflow-wrap:anywhere;min-width:0;max-width:100%}.row-button{font-size:12px;min-height:34px;padding:6px 10px}.table-footer{padding:14px 24px;border-top:1px solid var(--border);font-size:12px;color:var(--muted);background:#fdfdf8}

/* Forms and results share the same quiet surfaces. */
.reward-settings{display:grid;grid-template-columns:1fr 1fr auto;gap:22px;align-items:center;margin:19px 0 16px;max-width:900px}.reward-settings input{max-width:260px;font-size:20px;font-weight:700;font-variant-numeric:tabular-nums;min-height:48px}.reward-settings button{align-self:center}.reward-results{display:grid;grid-template-columns:1fr 1fr;gap:20px}.reward-results h3{margin:9px 0 14px}.recipient{display:flex;align-items:center;gap:13px;min-height:55px;border-bottom:1px solid #e7e9df;font-size:14px}.recipient:last-child{border-bottom:0}.recipient>span:last-child{margin-left:auto;color:var(--muted);font-size:13px;font-variant-numeric:tabular-nums}.winner-symbol{color:var(--accent);min-width:21px}.result-label{font-size:13px;color:#566b45;margin-bottom:8px}
.delivery-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 0;border-bottom:1px solid #e7e9df;font-size:14px}.delivery-row:last-child{border-bottom:0}.delivery-row small{display:block;color:var(--muted);font-size:12px;margin-top:4px}.delivery-row button{font-size:12px;min-height:37px;padding:7px 12px}.delivered{background:#e8efdf;color:#48653a;border-color:#d6e2c9}.delivered:hover{background:#dce7ce}
.delegate-form{display:grid;grid-template-columns:1fr 1fr auto;gap:18px;align-items:end;margin:25px 0 10px;max-width:900px}.log{display:flex;gap:16px;padding:19px 0;border-bottom:1px solid #e7e9df;font-size:14px}.log:last-child{border-bottom:0}.log-dot{height:6px;width:6px;border-radius:50%;background:#b27b4e;flex-shrink:0;margin-top:8px}.log p{color:var(--muted);font-size:13px;margin-top:5px}.log small{display:block;color:var(--muted);font-size:12px;margin-top:6px}
.connection-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:32px;margin-top:23px}.connection-grid p,.connection-grid label{margin-bottom:17px}.connection-grid .field-help{margin-top:14px}summary{cursor:pointer;font-weight:700}#permissions>h2,#history>h2{font-size:23px;margin:8px 0}#permissions>p,#history>p{font-size:14px;color:var(--muted)}#connection details>summary{font-size:18px}
.default-profile{display:flex;align-items:center;justify-content:space-between;gap:20px}.default-profile h3{margin:8px 0 6px}.default-profile p{font-size:14px;color:var(--muted);overflow-wrap:anywhere}.default-profile button{font-size:12px}.profile-filters{display:flex;gap:16px;margin:22px 0}.profile-filters label{flex:1;max-width:300px}.profile-section-title{font-size:16px;margin:22px 0 15px}.context-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:24px}.context-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:22px;min-width:0}.context-card.current-context{border-color:#c58c68;background:#fffcf5}.context-card-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:17px}.world-tag{font-size:11px;color:#526544;background:#edf1e5;padding:4px 8px;border-radius:5px}.context-card h3{margin-bottom:7px;overflow-wrap:anywhere}.context-card p{font-size:13px;color:var(--muted);overflow-wrap:anywhere}.context-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:18px}.context-actions button{font-size:12px;min-height:36px;padding:7px 10px}.context-actions .text-button{padding:5px 0}.context-cards>.empty-state{grid-column:1/-1}#profile-auth-note{margin:18px 0 0}
.workspace-footer{display:flex;justify-content:space-between;gap:15px;margin-top:28px;padding:0 0 6px;font-size:11px;color:var(--muted)}
#notice:empty{display:none}#notice:not(:empty){position:fixed;top:15px;right:22px;z-index:100;max-width:min(480px,calc(100vw - 32px));background:#f2f6ec;border:1px solid #c8d6ba;border-radius:9px;box-shadow:0 6px 24px #22341b0c;padding:13px 17px;color:#416236;font-size:13px;white-space:pre-line;pointer-events:none}#notice.error{background:#fff1eb;color:#93472d;border-color:#e3bcaa}
dialog{border:1px solid var(--border);border-radius:13px;max-width:480px;width:calc(100% - 32px);padding:27px;background:var(--surface);color:var(--text);box-shadow:0 20px 70px #1d281f30}dialog::backdrop{background:#25312470;backdrop-filter:blur(2px)}dialog h2{margin-bottom:21px}dialog label{margin-bottom:17px}dialog .actions{margin-top:21px}

/* Public service information shares the manager's type and surfaces. */
body>header{display:flex;align-items:center;justify-content:space-between;padding:24px 40px;border-bottom:1px solid var(--border)}body>header strong{font-size:25px}body>header span{font-size:13px;color:var(--muted);margin-left:14px}.about-page{max-width:920px;margin:35px auto;padding:0 20px}.about-page section{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:28px;margin-bottom:22px}.about-page h1{margin:12px 0 18px}.about-page h2{margin-bottom:15px}.about-page p{margin-bottom:14px;color:var(--muted);font-size:14px}.about-page li{margin-bottom:12px;font-size:14px}body>footer{padding:22px;text-align:center;font-size:12px;color:var(--muted)}

@media(min-width:1600px){.workspace-main{padding:34px 44px 22px}.topbar{padding:0 44px}}
@media(max-width:1200px){.sidebar{width:212px;padding-left:12px;padding-right:12px}.workspace-body{margin-left:212px;width:calc(100% - 212px)}.workspace-main{padding:27px}.topbar{padding:0 27px}.page-heading{align-items:flex-start;gap:18px;flex-wrap:wrap}.page-heading .week-controls{margin-left:auto}.context-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.members-panel>.section-heading{flex-wrap:wrap;gap:15px}.members-panel .actions{justify-content:flex-start}.table-help{display:none}.stat{padding:18px 15px}.stat strong{font-size:29px}.stat-note{font-size:10px}.overview-grid{gap:16px;grid-template-columns:1.1fr 1fr}.panel{padding:21px}.members-panel{padding:22px 0 0}}
@media(max-width:1000px){.overview-grid{grid-template-columns:1fr}.review-panel{order:-1}.review-panel .progress-heading{margin-bottom:15px}.review-panel>button{width:auto;display:inline-flex;gap:24px}.review-panel #review-summary{margin:13px 0}.review-panel .info-note{margin-top:13px}.reward-settings,.delegate-form{grid-template-columns:1fr 1fr}.reward-settings button,.delegate-form button{justify-self:start}.table-wrap table{min-width:820px}.connection-grid{grid-template-columns:1fr;gap:20px}.stat-note{display:none}}
@media(max-width:760px){
  :root{font-size:14px}.login-page{padding:23px 20px}.login-header>span{display:none}.login-center{padding:30px 0}.login-intro h1{font-size:30px}.login-intro .eyebrow{font-size:9px;letter-spacing:1.7px}.login-card{padding:24px 22px}.login-footer{align-items:flex-start;flex-direction:column;gap:5px;font-size:11px}.login-points{gap:10px}.login-points span+span:before{margin-right:10px}
  .sidebar{width:260px;padding:25px 16px 18px;transform:translateX(-100%);transition:transform .2s ease;box-shadow:none}.sidebar.mobile-open{transform:translateX(0);box-shadow:20px 0 70px #25312422}.sidebar>.brand{margin-right:30px}.guild-picker{margin:25px 0 22px}.manager-nav button{min-height:44px}.sidebar-bottom{padding-top:18px}#close-menu{display:grid;position:absolute;right:15px;top:25px;width:34px;height:34px;min-height:34px;border:0;background:transparent;font-size:25px;line-height:1}
  .workspace-body{width:100%;margin-left:0}.topbar{height:59px;padding:0 18px;position:sticky;top:0;z-index:20;background:#faf9f5f5}.topbar>div{gap:10px}.topbar-kicker,.topbar-divider{display:none}#mobile-menu{display:grid;min-height:36px;width:36px;height:36px;padding:7px;border:0;background:transparent}.topbar .badge{font-size:11px}#view-title{font-size:14px}
  .workspace-main{padding:23px 18px 17px}.page-heading{display:block;margin-bottom:12px}.page-heading h1{font-size:26px;margin:5px 0}.page-heading p{font-size:12px}.page-heading .eyebrow{font-size:11px}.week-controls{margin-top:18px;gap:8px}.week-controls input{flex:1;min-width:0;width:136px;min-height:44px;font-size:12px;padding:9px 10px}.week-controls button{min-height:44px;font-size:12px;padding:8px 10px}.week-controls .refresh-button{width:40px}.period-bar{align-items:flex-start;gap:6px;font-size:11px;margin:0 0 20px}.period-bar svg{margin-top:3px;width:13px;height:13px}.period-timezone{display:none}.period{line-height:1.8}.week-lookup-note{font-size:12px;margin:-6px 0 18px}.banner{font-size:12px;padding:11px 13px;margin-bottom:20px}
  .section-heading{align-items:flex-start;gap:12px;margin-bottom:17px}.section-heading h2{font-size:17px}.section-heading p{font-size:12px;margin-top:4px}.section-heading>button{font-size:12px;min-height:38px;padding:7px 10px}.panel{padding:20px;border-radius:10px;margin-bottom:17px}
  .stats{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:14px}.stat{padding:14px 12px}.stat[data-status="all"]{grid-column:1/-1;display:flex;align-items:center;gap:12px;padding:13px 16px;border-bottom:1px solid var(--border)}.stat[data-status="all"] strong{font-size:24px;margin:0}.stat[data-status="all"] .stat-label{font-size:12px}.stat+.stat{border-left:0}.stat[data-status="participated"],.stat[data-status="absent"],.stat[data-status="exempt"]{border-left:1px solid var(--border)}.stat-label{font-size:11px}.stat strong{font-size:25px;margin:7px 0 0}.stat-note{display:none}
  .my-record{padding:13px 15px;margin-bottom:17px;align-items:flex-start}.my-record>div{display:block}.my-record-label{display:block;font-size:11px;margin-bottom:4px}.my-status{font-size:12px}.sharing-options summary{font-size:11px}.overview-grid{gap:16px}.ranking-panel .section-heading{align-items:center}.ranking-panel .section-heading h2{font-size:17px}.panel-kicker{font-size:11px}.leader-row{padding:13px 0;gap:11px;font-size:14px}.leader-row>strong{overflow-wrap:anywhere}.review-panel>button{display:flex;width:100%;font-size:13px;min-height:44px}.progress-heading>strong{font-size:28px}.review-panel #review-summary{font-size:13px}.review-panel .info-note{font-size:12px}
  .members-panel{padding:20px 0 0;border-radius:10px}.members-panel>.section-heading,.members-panel>.table-controls{padding-left:17px;padding-right:17px}.members-panel>.section-heading{display:block}.members-panel .actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:17px}.members-panel .actions button{font-size:12px;min-height:44px;padding:8px}.members-panel .actions #sync-all{grid-column:1/-1;grid-row:1}.members-panel .actions .export-button{border-color:var(--border);background:var(--surface)}.table-controls{gap:10px;align-items:flex-end;padding-bottom:18px}.table-controls label{width:123px;flex:0 0 123px;font-size:12px}.table-controls .search-control{width:auto;flex:1;min-width:0}.table-controls input,.table-controls select{min-height:44px;font-size:12px;padding:9px 10px}
  .table-wrap{overflow:visible;padding:0 17px}.table-wrap table{min-width:0;display:block;white-space:normal}.table-wrap thead{display:none}.table-wrap tbody{display:block}.table-wrap tbody tr{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px;padding:16px 0;border-top:1px solid var(--border);position:relative}.table-wrap tbody tr.is-mine{margin:0 -7px;padding-left:7px;padding-right:7px;background:#fcf9f0}.table-wrap td{display:block;border:0;padding:0!important;min-width:0;font-size:13px;vertical-align:top}.table-wrap td:before{content:attr(data-label);display:block;font-size:11px;color:var(--muted);font-weight:400;margin-bottom:5px}.table-wrap td:first-child{grid-column:1/-1;padding-right:105px!important;min-height:43px}.table-wrap td:first-child:before{display:none}.table-wrap td[data-label="참여 상태"]{position:absolute;right:0;top:16px}.table-wrap td[data-label="참여 상태"]:before{display:none}.table-wrap .numeric-cell{text-align:left}.table-wrap td.score{font-size:19px;line-height:1.4;font-weight:700}.table-wrap td[data-label="순위"]{text-align:right}.table-wrap td[data-label="보상 대상"]{align-self:start}.table-wrap td.record-note{grid-column:1/-1;max-width:none;display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding-right:95px!important;font-size:12px;min-height:34px}.table-wrap td.record-note:before{display:none}.table-wrap td.record-note .record-meta{margin-top:0}.table-wrap td:last-child{position:absolute;right:0;bottom:16px}.table-wrap td:last-child:before{display:none}.table-wrap .row-button{min-height:40px;font-size:12px;padding:8px 11px}.table-wrap .member-cell{min-width:0;gap:10px}.table-wrap .member-avatar{width:32px;height:32px}.table-wrap .member-name{font-size:14px}.table-wrap .member-copy .sub{font-size:11px;margin-top:3px}.table-wrap .empty-state{grid-column:1/-1;padding:10px 0!important}.table-footer{font-size:12px;padding:13px 17px}.status-pill{font-size:11px;padding:4px 7px}.table-wrap td .reward-tag{font-size:11px}
  .reward-settings,.delegate-form{grid-template-columns:1fr;gap:17px}.reward-settings input{max-width:none}.reward-settings button,.delegate-form button{width:100%;min-height:44px}.reward-results{grid-template-columns:1fr;gap:0}.reward-results .panel{margin-bottom:17px}.actions button{min-height:44px}.delivery-row{gap:12px}.delivery-row button{font-size:11px;min-height:42px;padding:8px 9px}.delivery-row small{font-size:12px}.delegate-form{margin-top:22px}#permissions>h2,#history>h2{font-size:21px}.connection-grid{grid-template-columns:1fr;gap:24px}.default-profile{align-items:flex-start;flex-direction:column;gap:16px}.default-profile p{font-size:13px}.profile-filters{gap:10px}.profile-filters label{font-size:12px;min-width:0}.profile-filters input,.profile-filters select{font-size:12px}.context-cards{grid-template-columns:1fr;gap:15px}.context-card{padding:20px}.context-actions button{min-height:42px}.workspace-footer{flex-direction:column;gap:3px;font-size:10px;margin-top:24px}.log{gap:12px;padding:17px 0}.log p,.log small{font-size:12px}dialog{padding:23px}body>header{padding:20px;gap:20px}.about-page section{padding:23px}
}
@media(max-width:760px){
  #mobile-menu{width:44px;height:44px;min-height:44px}
  #close-menu{width:44px;height:44px;min-height:44px;right:10px;top:20px}
  #identity button{min-height:44px;padding:8px 0}
  .table-wrap td.empty-state{position:static;grid-column:1/-1;padding:10px 0!important;min-height:0}
  .table-wrap td.empty-state:before{display:none}
}
/* Workspace composition: top navigation, review desk, and a personal right rail. */
#workspace{display:block}
.workspace-header{background:#233b2e;color:#f7f8f0}
.workspace-masthead{max-width:1440px;min-height:84px;padding:16px 48px;margin:auto;display:flex;align-items:center;gap:42px}
.workspace-masthead>.brand{color:#fff;font-size:27px;flex-shrink:0}
.workspace-masthead .brand small{color:#c3cebd;font-size:9px}
.workspace-masthead .brand-mark{background:#d57542;width:37px;height:37px}
.workspace-masthead .guild-picker{display:flex;gap:26px;flex:1;min-width:0;background:transparent;border:0;border-radius:0;padding:0;margin:0}
.workspace-masthead .guild-picker label{color:#c4cfbf;font-size:10px;flex:0 1 240px;gap:1px;min-width:0}
.workspace-masthead .guild-picker .context-picker{border:0;border-left:1px solid #ffffff26;padding:0 0 0 25px;margin:0;flex-basis:190px}
.workspace-masthead .guild-picker select{color:#fff;font-size:14px;padding:0 5px 0 0;min-height:28px;min-width:0;outline-color:#edbd9b}
.workspace-masthead .guild-picker option{background:#fffefa;color:#29332d}
.workspace-masthead #identity{border:0;padding:0;margin-left:auto;gap:17px;color:#f1f5e9;font-size:13px}
.workspace-masthead #identity button{color:#d3dbcc;border:1px solid #ffffff35;background:transparent;border-radius:5px;padding:6px 10px;min-height:33px;font-size:11px}
#sidebar.sidebar{position:static;inset:auto;width:100%;padding:0 max(24px,calc((100% - 1344px)/2));display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:20px;background:#fffefa;border:0;border-bottom:1px solid var(--border);transform:none;box-shadow:none;z-index:40}
.manager-nav{display:flex;align-items:stretch;gap:18px;min-width:0}
.manager-nav button{border:0;border-bottom:3px solid transparent;border-radius:0;min-height:54px;padding:15px 5px 12px;background:transparent;color:#65705c;font-size:13px;gap:8px}
.manager-nav button.active{border-bottom-color:#b84920;background:transparent;color:#8d401d;font-weight:700}
.manager-nav button:hover{background:transparent;color:#293d2b;border-bottom-color:#d9c1ab}
.manager-nav button svg{width:16px;height:16px}
.reset-card{border:0;padding:0;gap:7px;align-items:center;font-size:11px;white-space:nowrap;color:#68715e}
.reset-card strong{display:inline;margin:0 0 0 5px;font-size:11px;color:#53634b}
.reset-card .status-dot{margin:0;background:#af8346;width:5px;height:5px}
.workspace-body{margin:0;width:100%;min-width:0}
.topbar{max-width:1344px;margin:auto;height:44px;border:0;background:transparent;padding:9px 0 0}
.topbar-kicker{font-size:9px;letter-spacing:1.8px}.topbar-divider{font-size:11px}#view-title{font-size:12px}
.topbar .badge{border:0;background:transparent;font-size:11px;padding-right:0}
.workspace-main{max-width:1440px;padding:14px 48px 24px;margin:auto}
.page-heading{margin-bottom:8px;align-items:center;flex-wrap:nowrap}.page-heading h1{font-size:30px;margin:3px 0}.page-heading>div>p{display:none}
.page-heading .eyebrow{font-size:11px}.period-bar{margin-bottom:22px;font-size:11px}.period-timezone{display:none}
.banner{font-size:11px;margin-bottom:20px;padding:9px 13px;border-radius:6px}
.workspace-footer{margin-top:26px}.panel{border-radius:9px}

.overview-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:65px;padding:30px 36px;border-radius:12px;background:#e7ecdf;border:1px solid #d5deca;position:relative;overflow:hidden}
.hero-intro .eyebrow{font-size:10px;letter-spacing:1.8px;color:#5f7252;margin-bottom:10px}
.hero-intro h2{font-size:29px;line-height:1.3;letter-spacing:-1px;color:#294332;font-weight:700}
.hero-break{display:none}.hero-intro>p{font-size:13px;color:#4f6445;margin:10px 0 17px;line-height:1.7}
.hero-intro>button{display:inline-flex;align-items:center;gap:32px;min-height:40px;border-radius:6px;font-size:12px}
.hero-progress{align-self:center;max-width:480px;width:100%;justify-self:end}
.hero-progress-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:18px}
.hero-progress-heading>span{font-size:13px;color:#526847}.hero-progress-heading>strong{font-size:48px;line-height:1;letter-spacing:-2px;font-variant-numeric:tabular-nums;color:#294b34}
.hero-progress .progress-track{height:7px;background:#cdd7c2;border-radius:2px}.hero-progress .progress-track>div{background:#4f7148;border-radius:2px}
.hero-progress .progress-caption{margin-top:10px;font-size:12px;color:#506747}
.hero-context{display:flex;gap:30px;margin-top:16px;font-size:11px;color:#5f7353}.hero-context b{margin-left:6px;font-size:13px;font-variant-numeric:tabular-nums;color:#334f37}
.hero-footnote{margin-top:7px;font-size:11px;color:#5f7353}
.stats{border-radius:0 0 9px 9px;margin-top:-1px;margin-bottom:24px;border-top:0;background:#fffefa}
.stat{padding:16px 23px;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:2px 13px}
.stat-label{font-size:12px}.stat strong{font-size:25px;line-height:1.25;letter-spacing:-.5px;text-align:right;margin:0}
.stat-note{grid-column:1/-1;font-size:10px;margin-top:3px}
.overview-workbench{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start}
.queue-panel{padding:24px 0 0;margin:0;overflow:hidden}
.queue-panel>.section-heading{padding:0 24px;align-items:center;margin-bottom:20px}
.queue-panel h2{font-size:18px}.count-label{display:inline-block;vertical-align:middle;background:#f0ece1;border-radius:5px;padding:2px 7px;font-size:12px;color:#7c6537;margin-left:6px;font-variant-numeric:tabular-nums}
.queue-table-wrap{overflow:auto}.queue-table{min-width:480px}
.queue-table th{font-size:11px;background:#fafbf6;padding-top:10px;padding-bottom:10px}
.queue-table td{height:74px;padding-top:15px;padding-bottom:15px;font-size:12px}
.queue-table th:last-child,.queue-table td:last-child{text-align:right}
.queue-table .sub{font-size:11px}.queue-table .empty-state{text-align:center;height:160px;color:#68745e}
.queue-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 24px;border-top:1px solid var(--border);font-size:11px;color:#6a745f}
.queue-footer .text-button{font-size:11px;min-height:32px}
.overview-rail{display:grid;gap:20px}.overview-rail .panel{margin:0;padding:20px}
.personal-record{padding:22px 23px;background:#fff7eb;border:1px solid #e5d7c3;border-radius:9px;min-width:0}
.personal-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:11px}.personal-heading .panel-kicker{margin:0;color:#816747;font-size:11px}
.personal-record h2{font-size:18px;color:#433a2b}.personal-score{display:flex;align-items:baseline;gap:6px;margin-top:9px}
.personal-score>strong{font-size:40px;letter-spacing:-1.5px;line-height:1.3;color:#9c4e21;font-variant-numeric:tabular-nums}.personal-score>span{font-size:12px;color:#7c694e}
.personal-record .my-status{color:#776344;font-size:11px;line-height:1.8;margin-top:7px}
.personal-footer{display:flex;align-items:center;justify-content:space-between;margin-top:13px;padding-top:10px;border-top:1px solid #e6d9c7}.personal-footer .text-button{font-size:11px;min-height:28px;padding:3px 0}.personal-footer .sharing-options summary{font-size:11px;color:#7b684a}
.overview-rail .ranking-panel .section-heading{gap:9px;margin-bottom:9px}.overview-rail .ranking-panel h2{font-size:15px}.overview-rail .panel-kicker{font-size:10px}.overview-rail .ranking-panel .text-button{font-size:11px}.overview-rail .leader-row{font-size:12px;min-height:45px;padding:10px 0;gap:10px}.overview-rail .leader-row small{font-size:10px}.overview-rail .rank-number{font-size:11px;width:20px;min-width:20px}

.roster-workspace{display:grid;grid-template-columns:215px minmax(0,1fr);gap:24px;align-items:start}
.roster-tools{padding:23px 20px;background:#ecefe5;border:1px solid #dae0d0;border-radius:9px;position:sticky;top:20px}
.roster-tools>.panel-kicker{font-size:9px;letter-spacing:1.3px;color:#5b6d4f}.roster-tools h2{font-size:21px;margin-top:5px}.roster-tools>p{font-size:12px;color:#607151;line-height:1.8;margin-top:9px}
.status-shortcuts{display:grid;gap:6px;margin-top:25px}.status-shortcuts button{display:flex;justify-content:space-between;align-items:center;border-color:transparent;background:transparent;padding:8px 10px;color:#4e6241;min-height:39px;font-size:12px;text-align:left}.status-shortcuts button[aria-pressed="true"]{background:#fffefa;border-color:#d8dfcb;color:#3e5736;font-weight:700}.status-shortcuts button:hover{background:#f7f9f0}
.roster-sync{display:grid;gap:9px;margin-top:27px;padding-top:20px;border-top:1px solid #d5ddc9}.roster-sync>.panel-kicker{font-size:10px;margin-bottom:3px}.roster-sync button{width:100%;min-height:39px;padding:9px 7px;font-size:11px;white-space:normal}.roster-sync .text-button{min-height:29px;padding:3px 0;font-size:11px;justify-self:start;width:auto}
.roster-tools .roster-note{font-size:10px;line-height:1.8;color:#657657;margin-top:21px}.roster-workspace .members-panel{margin:0;padding-top:24px;min-width:0}.roster-workspace .members-panel>.section-heading{margin-bottom:18px}.roster-workspace .table-controls{padding-bottom:20px}.roster-workspace .table-controls .search-control{flex:1;max-width:350px}.roster-workspace th,.roster-workspace td{padding-left:12px;padding-right:12px}.roster-workspace th:first-child,.roster-workspace td:first-child{padding-left:22px}.roster-workspace th:last-child,.roster-workspace td:last-child{padding-right:22px}.roster-workspace .member-cell{min-width:145px}.roster-workspace .member-name{font-size:13px}.roster-workspace .member-copy .sub{font-size:10px;max-width:180px}

/* Login is a split introduction and a centered, task-focused sign-in area. */
.login-page{padding:27px 44px 22px;background:linear-gradient(90deg,#233b2e 0%,#233b2e 48%,#f7f6f1 48%,#f7f6f1 100%)}
.login-header>.brand{color:#fff}.login-header .brand small{color:#c1ceba}.login-header>span{color:#67715f}
.login-center{display:grid;grid-template-columns:1fr 1fr;max-width:1240px;gap:90px;padding:45px 0 50px;align-items:center;margin:auto}
.login-story{color:#f7f5e9;max-width:510px;align-self:center}.login-story>.eyebrow{color:#c5d0b6;font-size:10px;letter-spacing:2.2px;margin-bottom:23px}.login-story h1{font-size:46px;letter-spacing:-2.2px;line-height:1.33;font-weight:700}.login-story>p{font-size:16px;color:#c3d0bb;margin-top:21px;line-height:1.9}
.login-workflow{border-top:1px solid #ffffff27;margin-top:42px;padding-top:22px;max-width:390px}.workflow-label{font-size:11px;color:#c0ccb4}.login-workflow>div{display:flex;align-items:center;gap:18px;margin-top:22px}.login-workflow b{font-size:12px;letter-spacing:1px;color:#ddb78a}.login-workflow strong{display:block;color:#f4f5e7;font-size:15px}.login-workflow small{display:block;font-size:12px;color:#bdcbb1;margin-top:3px}.story-footnote{display:block;color:#b4c4a9;font-size:10px;letter-spacing:2px;margin-top:45px}
.login-entry{width:100%;max-width:440px;justify-self:center}.login-intro{text-align:left;margin-bottom:22px}.login-intro .eyebrow{font-size:10px;letter-spacing:1.5px;margin-bottom:9px}.login-intro h2{font-size:27px;letter-spacing:-1px}.login-intro>p{font-size:13px;margin-top:7px}
.login-entry .login-card{border-radius:11px;box-shadow:none;padding:25px 28px}.login-entry .card-heading{margin-bottom:17px}.login-entry .card-heading h2{font-size:15px}.login-footer>span{color:#bccbb3}

@media(min-width:1600px){.topbar{padding-left:0;padding-right:0}.workspace-main{padding:14px 48px 24px}}
@media(max-width:1400px){.topbar{margin:0 48px}.manager-nav{gap:12px}#sidebar.sidebar{padding-left:43px;padding-right:43px}.overview-workbench{grid-template-columns:minmax(0,1fr) 300px;gap:20px}.roster-workspace{gap:20px;grid-template-columns:200px minmax(0,1fr)}.overview-hero{gap:40px}}
@media(max-width:1100px){.workspace-masthead{padding:15px 30px;gap:30px}.workspace-masthead>.brand small{display:none}.workspace-masthead .guild-picker{gap:18px}.workspace-masthead .guild-picker .context-picker{padding-left:18px}.workspace-masthead #identity{gap:10px}.topbar{margin:0 30px;padding-left:0;padding-right:0}.workspace-main{padding:14px 30px 24px}.workspace-body{margin:0;width:100%}#sidebar.sidebar{padding:0 25px}.manager-nav{gap:11px}.manager-nav button{font-size:12px;gap:6px;padding-left:3px;padding-right:3px}.manager-nav button svg{width:14px;height:14px}.reset-card{display:none}.overview-hero{padding:27px 30px;gap:30px}.hero-intro h2{font-size:25px}.hero-progress-heading>strong{font-size:43px}.stat{padding:15px 17px}.stat-note{display:none}.overview-workbench{grid-template-columns:minmax(0,1fr) 275px}.queue-panel>.section-heading{padding-left:20px;padding-right:20px}.queue-table .member-cell{min-width:120px}.queue-footer{padding-left:20px;padding-right:20px;flex-wrap:wrap;gap:1px}.roster-workspace{grid-template-columns:180px minmax(0,1fr)}.roster-tools{padding:20px 16px}.roster-workspace table{min-width:760px}.login-center{gap:60px}.login-story h1{font-size:39px}.login-page{padding-left:32px;padding-right:32px}.login-story>p{font-size:15px}}
@media(max-width:900px){
  .workspace-masthead{min-height:75px;padding:13px 22px;gap:24px}.workspace-masthead>.brand{font-size:23px}.workspace-masthead .brand-mark{width:31px;height:31px}.workspace-masthead .brand-mark svg{width:21px;height:21px}.workspace-masthead .guild-picker{gap:12px}.workspace-masthead .guild-picker label{font-size:9px;flex-basis:210px}.workspace-masthead .guild-picker .context-picker{display:none}.workspace-masthead .guild-picker select{font-size:13px}.workspace-masthead #identity>span{display:none}.workspace-masthead #identity{margin-left:auto}.workspace-masthead #identity button{font-size:10px;min-height:35px}
  #mobile-menu{display:grid;color:#fff;background:transparent;border-color:#ffffff36;width:40px;height:40px;min-height:40px;margin-left:-10px}#mobile-menu svg{width:21px;height:21px}
  #sidebar.sidebar{position:fixed;inset:0 auto 0 0;width:280px;height:100svh;padding:70px 18px 24px;display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;background:#f8f9f2;border-right:1px solid #d9dfce;transform:translateX(-100%);transition:transform .2s ease;z-index:60}
  #sidebar.sidebar.mobile-open{transform:translateX(0);box-shadow:24px 0 80px #1e352c30}.manager-nav{display:grid;gap:7px}.manager-nav button{border:0;border-radius:7px;min-height:47px;padding:12px 14px;font-size:14px;gap:11px}.manager-nav button svg{width:18px;height:18px}.manager-nav button.active{background:#e7ecde;color:#36522e}.manager-nav button:hover{background:#edf1e5}
  #close-menu{display:grid;position:absolute;right:16px;top:17px;width:44px;height:44px;min-height:44px;font-size:25px;line-height:1;border-color:transparent;background:transparent;color:#374c31}.reset-card{display:flex;margin-top:auto;white-space:normal;padding:20px 13px;border-top:1px solid var(--border);font-size:12px}.reset-card strong{font-size:12px}
  .workspace-body{margin:0;width:100%}.topbar{height:40px;position:static;z-index:auto;margin:0 23px;padding:8px 0 0;background:transparent}.topbar-kicker,.topbar-divider{display:inline}#view-title{font-size:12px}.workspace-main{padding:12px 23px 23px}.page-heading h1{font-size:26px}.page-heading .week-controls{margin:0}.page-heading{display:flex}.page-heading p{display:none}.period-bar{margin-bottom:18px}
  .overview-workbench{grid-template-columns:minmax(0,1fr) 245px;gap:16px}.overview-hero{padding:24px 27px;gap:25px}.hero-intro h2{font-size:23px}.hero-intro>p{font-size:12px}.hero-progress-heading>strong{font-size:39px}.hero-context{gap:16px}.stat{padding:14px 14px;gap:7px}.stat strong{font-size:23px}.stat-label{font-size:11px}.overview-rail .panel{padding:18px}.personal-record{padding:20px}.personal-score>strong{font-size:35px}.personal-record h2{font-size:16px}.queue-panel>.section-heading{gap:10px;padding:0 18px}.queue-panel h2{font-size:16px}.queue-panel .section-heading>.text-button{font-size:11px}.queue-table{min-width:430px}.queue-table th,.queue-table td{padding-left:12px;padding-right:12px}.queue-table th:first-child,.queue-table td:first-child{padding-left:18px}.queue-table th:last-child,.queue-table td:last-child{padding-right:18px}.queue-table .member-name{font-size:13px}.queue-table .member-avatar{display:none}.queue-footer>span{display:none}.queue-footer{justify-content:flex-end}
  .roster-workspace{grid-template-columns:160px minmax(0,1fr);gap:17px}.roster-tools{padding:20px 13px}.roster-tools h2{font-size:19px}.roster-tools>p{font-size:11px}.roster-sync button{font-size:11px}.roster-workspace .members-panel>.section-heading,.roster-workspace .table-controls{padding-left:18px;padding-right:18px}
  .login-page{padding:25px 27px}.login-center{gap:45px;grid-template-columns:1fr 1fr}.login-story h1{font-size:32px}.login-story>p{font-size:13px}.login-workflow strong{font-size:13px}.login-workflow small{font-size:11px}.login-entry .login-card{padding:23px 21px}.login-intro h2{font-size:24px}.login-workflow{margin-top:30px}.login-footer{font-size:10px}
}
@media(max-width:650px){
  .workspace-masthead{min-height:70px;padding:12px 18px;gap:18px}.workspace-masthead>.brand{font-size:21px;gap:8px}.workspace-masthead>.brand small{display:none}.workspace-masthead .brand-mark{width:29px;height:29px}.workspace-masthead .guild-picker{flex:1;min-width:0}.workspace-masthead .guild-picker label{font-size:9px}.workspace-masthead .guild-picker select{font-size:11px}.workspace-masthead #identity{display:none}#mobile-menu{width:44px;min-height:44px;height:44px;margin:0}
  .topbar{margin:0 18px;height:37px}.topbar-kicker{font-size:8px;letter-spacing:1px}.topbar>div{gap:8px}.topbar .badge{font-size:10px}#view-title{font-size:11px}.workspace-main{padding:9px 18px 18px}.page-heading{display:block;margin-bottom:10px}.page-heading h1{font-size:25px}.page-heading .eyebrow{font-size:10px}.page-heading .week-controls{margin-top:14px}.period-bar{margin-bottom:16px;font-size:10px}.period-bar svg{width:12px;height:12px}.banner{font-size:10px;margin-bottom:16px;padding:8px 10px}
  .overview-hero{grid-template-columns:1fr;gap:25px;padding:24px;border-radius:10px}.hero-intro .eyebrow{font-size:9px;letter-spacing:1.3px;margin-bottom:9px}.hero-intro h2{font-size:27px}.hero-intro>p{font-size:12px;line-height:1.8;margin:10px 0 15px}.hero-intro>button{width:100%;justify-content:space-between;min-height:44px}.hero-progress{max-width:none}.hero-progress-heading{margin-bottom:14px}.hero-progress-heading>strong{font-size:37px}.hero-progress-heading>span{font-size:12px}.hero-progress .progress-caption{font-size:11px}.hero-context{margin-top:12px;font-size:10px;justify-content:space-between}.hero-context b{font-size:12px}.hero-footnote{font-size:10px}
  .stats{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:18px;border-top:0}.stat{display:block;padding:12px 10px}.stat strong{font-size:23px;text-align:left;margin-top:4px}.stat-label{font-size:10px}.stat[data-status="all"]{display:flex;justify-content:space-between;align-items:center;grid-column:1/-1;padding:10px 14px}.stat[data-status="all"] strong{margin:0;font-size:21px}.stat[data-status="all"] .stat-label{font-size:11px}
  .overview-workbench{grid-template-columns:1fr;gap:17px}.overview-rail{display:contents}.personal-record{grid-row:1;padding:19px 21px}.personal-heading{margin-bottom:4px}.personal-record h2{font-size:17px}.personal-score{margin-top:4px}.personal-score>strong{font-size:37px}.personal-record .my-status{font-size:11px;margin-top:3px}.personal-footer{margin-top:10px}.queue-panel{padding-top:20px}.queue-panel>.section-heading{padding:0 18px;margin-bottom:15px}.queue-panel h2{font-size:16px}.queue-panel .panel-kicker{font-size:10px}.count-label{font-size:11px;padding:2px 5px;margin-left:3px}.queue-table{min-width:0;font-size:12px}.queue-table th,.queue-table td{padding:13px 9px;height:65px}.queue-table th{font-size:10px}.queue-table th:first-child,.queue-table td:first-child{padding-left:18px}.queue-table th:last-child,.queue-table td:last-child{padding-right:18px}.queue-table .member-cell{min-width:100px}.queue-table .member-name{font-size:12px}.queue-table .sub{font-size:10px;max-width:135px}.queue-table td[data-label="기록 공유"],.queue-table th:nth-child(3){display:none}.queue-table .row-button{min-height:38px;padding:7px 9px;font-size:11px}.queue-table .status-pill{font-size:10px}.queue-table .empty-state{height:100px;font-size:12px}.queue-footer{padding:9px 18px}.overview-rail .ranking-panel{padding:20px}.overview-rail .ranking-panel h2{font-size:17px}.overview-rail .leader-row{font-size:14px;min-height:51px}.overview-rail .leader-row small{font-size:11px}
  .roster-workspace{grid-template-columns:1fr;gap:15px}.roster-tools{position:static;padding:16px 18px}.roster-tools>.panel-kicker,.roster-tools>h2,.roster-tools>p,.roster-tools .roster-note{display:none}.status-shortcuts{display:flex;gap:5px;margin:0;overflow:auto}.status-shortcuts button{flex:1;justify-content:center;min-height:41px;padding:8px 9px;font-size:11px;white-space:nowrap}.status-shortcuts button>span{display:none}.roster-sync{display:flex;flex-wrap:wrap;gap:8px;border:0;padding:0;margin-top:13px}.roster-sync>.panel-kicker{display:none}.roster-sync button{width:auto;min-height:42px;padding:9px 12px;font-size:11px;white-space:nowrap}.roster-sync #sync-all{flex:1}.roster-sync #sync-mine{flex:1}.roster-sync #csv{margin-left:auto;min-height:30px;flex:0 0 auto}.roster-workspace .members-panel{padding-top:20px}.roster-workspace .members-panel>.section-heading{margin-bottom:17px}.roster-workspace .table-controls{padding-bottom:17px}.roster-workspace th,.roster-workspace td{padding-left:0;padding-right:0}.roster-workspace .member-name{font-size:14px}.roster-workspace .member-copy .sub{font-size:11px;max-width:200px}
  .login-page{padding:22px 20px;background:var(--bg)}.login-header>.brand{color:#29372e}.login-header .brand small{color:var(--muted)}.login-header>span{display:none}.login-center{display:block;max-width:440px;padding:35px 0;margin:auto}.login-story{display:none}.login-entry{max-width:none}.login-intro{margin-bottom:21px}.login-intro h2{font-size:26px}.login-intro .eyebrow{font-size:9px}.login-entry .login-card{padding:24px 22px}.login-footer{font-size:10px;flex-direction:column;align-items:flex-start;gap:5px}.login-footer>span{color:var(--muted)}.workspace-footer{font-size:10px}
}
@media(max-width:650px){.workspace-masthead{gap:12px}.workspace-masthead #identity{display:flex}.workspace-masthead #identity button{min-height:44px;padding:7px;font-size:10px}}
.hero-context,.hero-footnote{color:#55694a}.roster-tools .roster-note{color:#5b6c4e}
@media(max-width:760px){.roster-workspace .table-wrap table{min-width:0;width:100%}}
@media(max-width:650px){
  #overview{display:flex;flex-direction:column;gap:16px}
  .overview-workbench,.overview-rail{display:contents}
  .personal-record{order:-1;grid-row:auto;margin:0}
  .overview-hero{order:0;padding:22px;gap:20px}
  .hero-intro h2{font-size:24px}.hero-intro>p{margin:8px 0 13px}
  .hero-progress-heading{margin-bottom:11px}.hero-progress-heading>strong{font-size:33px}
  .hero-context{margin-top:11px}.hero-footnote{margin-top:5px}
  .stats{order:1;margin:-17px 0 0}
  .queue-panel{order:2}.overview-rail .ranking-panel{order:3}
}
.freshness{display:flex;align-items:center;flex-wrap:wrap;gap:5px 16px;margin:-9px 0 18px;color:var(--muted);font-size:11px;line-height:1.7}
.freshness>span+span{padding-left:15px;border-left:1px solid var(--border)}
.freshness p{flex-basis:100%;font-size:11px;color:#526747}.freshness p:empty{display:none}.freshness p[data-error="1"]{color:#954a31}
@media(max-width:650px){.freshness{margin:-4px 0 14px;gap:3px 9px;font-size:10px}.freshness>span+span{padding-left:9px}.freshness p{font-size:10px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
.culvert-tag{display:inline-block;padding:4px 8px;border-radius:5px;background:#e8efdf;color:#49643a;font-size:11px;font-weight:600}
.context-card .context-culvert-note{font-size:12px;color:#61734f;margin-top:10px;line-height:1.7}
.profile-help{max-width:850px;color:var(--muted);font-size:12px;line-height:1.9;margin:-5px 0 18px}
.default-profile .field-help{max-width:640px;font-size:12px;line-height:1.8;margin-top:8px}
.status-group{background:#e9ece3;color:#5c6b50}.my-status[data-status="group"]{color:#5c6b50}
.group-characters{border-top:1px solid var(--border);padding:16px 24px;background:#f6f7f0}
.group-characters>summary{cursor:pointer;font-size:13px;font-weight:600;color:#506343;line-height:1.8}
.group-characters>summary>small{margin-left:12px;font-weight:400;font-size:11px;color:var(--muted)}
.group-characters>.field-help{margin-top:12px;max-width:800px;font-size:11px;line-height:1.9}
.group-character-list{list-style:none;padding:0;margin:13px 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}
.group-character-list>li{min-width:0;border-top:1px solid #e2e6d9;padding:12px 0;display:flex;flex-direction:column;gap:4px}
.group-character-list strong{font-size:12px;overflow-wrap:anywhere}.group-character-list>li>span{font-size:11px;color:var(--muted)}
.group-character-list b{font-weight:500;color:#536b42}.group-character-list>.empty-state{grid-column:1/-1;font-size:12px}
@media(max-width:650px){.group-characters{padding:15px 18px}.group-character-list{grid-template-columns:1fr;gap:0}.profile-help{font-size:11px}.group-characters>summary>small{font-size:10px;margin-left:7px}.context-actions [data-default]{flex-basis:100%;text-align:left}}
