:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#21332d;background:#f5f6f2;color-scheme:light}*{box-sizing:border-box}body{margin:0;min-height:100svh;display:grid;place-items:center;padding:28px 20px}main{width:100%;max-width:420px;background:white;padding:36px;border:1px solid #e0e5dc;border-radius:18px;box-shadow:0 16px 48px #243d3010}.brand{display:flex;align-items:baseline;gap:8px;color:inherit;text-decoration:none;font-size:25px;font-weight:750;letter-spacing:-1px;margin-bottom:36px}.brand span{font-size:13px;font-weight:450;letter-spacing:0;color:#6f7f74}h1{font-size:26px;letter-spacing:-.7px;margin:0 0 12px}p{font-size:14px;line-height:1.65}.muted,.footnote{color:#6b786f}.footnote{font-size:12px;margin:24px 0 0}form{display:grid;gap:10px;margin-top:26px}label{font-size:13px;font-weight:600}input{width:100%;font:inherit;padding:11px 12px;background:#fcfdfb;border:1px solid #d2dcd3;border-radius:8px;margin-bottom:10px}input:focus{outline:2px solid #477c64;outline-offset:2px}button{font:inherit;font-size:14px;font-weight:600;padding:12px;border:0;border-radius:8px;background:#254d3b;color:#fff;cursor:pointer}button:disabled{opacity:.55;cursor:wait}.secondary{background:#edf1eb;color:#254d3b}#status{color:#865024;overflow-wrap:anywhere;margin-bottom:0}#status:empty{display:none}@media(max-width:480px){main{padding:28px 24px}}

.oauth{max-width:480px;overflow-wrap:anywhere}
.oauth .muted{margin-bottom:0}
.access-summary{margin-top:22px;padding:16px;background:#f5f7f2;border:1px solid #e0e5dc;border-radius:10px}
.permission{display:inline-block;color:#254d3b;font-size:12px;font-weight:650}
.access-summary p{margin:6px 0 0;font-size:13px;color:#59695e}
.account-line{margin:18px 0 0;font-size:12px;color:#6b786f}
.account-line span{display:block;margin-top:4px}
.projects{border:0;padding:0;margin:0;min-width:0}
.projects legend{font-size:13px;font-weight:600;padding:0;margin-bottom:10px}
.project-option{display:flex;align-items:center;gap:12px;border:1px solid #dce3d9;border-radius:10px;padding:13px 14px;margin-bottom:8px;cursor:pointer;transition:background .15s,border-color .15s}
.project-option:hover{background:#f5f7f2;border-color:#a5b9a9}
.project-option:has(input:checked){background:#edf4ed;border-color:#477c64}
.project-option input[type=checkbox]{width:18px;height:18px;flex-shrink:0;margin:0;padding:0;accent-color:#254d3b}
.project-option span{min-width:0;flex:1}.project-option select{max-width:150px;flex-shrink:0;font:inherit;font-size:13px;padding:8px;border:1px solid #d2dcd3;border-radius:8px;background:#fcfdfb}.project-option select:focus-visible{outline:2px solid #477c64;outline-offset:2px}@media(max-width:480px){.project-option{align-items:stretch;flex-direction:column}.project-option select{max-width:100%;width:100%}}
.project-option strong{display:block;font-size:14px;font-weight:600}
.project-option small{display:block;margin-top:4px;color:#6b786f;font-size:12px;font-weight:400}
.empty-projects{padding:16px;background:#f5f7f2;border-radius:10px;font-size:14px}
.empty-projects p{margin:6px 0 0;color:#6b786f;font-size:13px}
.oauth form .footnote{margin:0 0 10px}
.actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}
.actions .secondary{padding-left:20px;padding-right:20px}
button:focus-visible,.brand:focus-visible{outline:2px solid #477c64;outline-offset:3px}
.oauth button:disabled{cursor:not-allowed}
@media(max-width:360px){.actions{grid-template-columns:1fr}}

[hidden]{display:none!important}

.admin-page{max-width:760px}.admin-page .brand{margin-bottom:20px}.admin-page h2{font-size:20px;margin:0 0 12px}.admin-page a{color:#254d3b}.admin-link{font-weight:600}.invite-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.invite-controls input{margin:0}.user-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0;border-bottom:1px solid #e0e5dc}.user-row strong{font-size:14px}.user-status{display:block;color:#6b786f;font-size:12px;margin-top:6px;text-transform:capitalize}.user-actions{display:flex;flex-wrap:wrap;gap:8px}.user-actions button{font-size:12px;padding:9px 12px}#account-list{margin-top:24px}#invitation-result{margin-top:22px;padding:18px;background:#f5f7f2;border:1px solid #e0e5dc;border-radius:10px}#invitation-result label{display:block;margin-bottom:10px}#invitation-result .footnote{margin-top:12px}dialog{max-width:440px;width:calc(100% - 40px);padding:28px;color:#21332d;border:1px solid #e0e5dc;border-radius:16px;box-shadow:0 16px 48px #243d3020}dialog::backdrop{background:#21332d66}dialog form{margin:0}@media(max-width:560px){.invite-controls{grid-template-columns:1fr}.user-row{align-items:flex-start;flex-direction:column}.admin-page{padding:28px 24px}}

.access-page{max-width:960px}.access-page h2{margin-top:36px;font-size:23px}.access-page h3{font-size:17px}.access-workspace{margin:0 0 24px}.access-group{border:1px solid #dfe6dd;border-radius:14px;margin:12px 0;background:#fafbf7}.access-group summary{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px;cursor:pointer}.access-count{color:#66766a;font-size:12px}.access-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 18px 18px}.access-submit select{min-width:0;width:100%;padding:10px;border:1px solid #d7dfd2;border-radius:8px;background:white;font:inherit}.access-bulk{display:flex;gap:8px;padding:0 18px 18px}.access-bulk button{font-size:12px;padding:8px 12px}.access-submit{position:sticky;bottom:12px;display:grid;grid-template-columns:minmax(0,1fr) 110px auto;gap:12px;align-items:center;background:#f4f7ef;border:1px solid #dfe6dd;border-radius:12px;padding:16px;box-shadow:0 8px 24px #21332d12}.access-submit p{margin:0;font-size:13px}.access-submit button:disabled{opacity:.45;cursor:default}.access-record{border-top:1px solid #dfe6dd;padding:18px 0;overflow-wrap:anywhere}.access-record strong{font-size:15px}.access-record p,.access-record small{font-size:13px;line-height:1.7}.access-record button{display:block;margin-top:12px}.access-workspace>.footnote{margin:0 0 14px 0}@media(max-width:620px){.access-page{padding:28px 20px}.access-choices{grid-template-columns:1fr}.access-group summary{align-items:flex-start;flex-direction:column;gap:6px}.access-submit{grid-template-columns:1fr 100px}.access-submit button{grid-column:1/-1}.access-bulk{flex-wrap:wrap}}

.access-workspace,.access-group{min-width:0}.access-group summary strong,.access-workspace h3{overflow-wrap:anywhere}.access-page [role=status]{overflow-wrap:anywhere}

.access-submit .access-feedback{grid-column:1/-1;padding:12px 14px;border-radius:8px;line-height:1.6;font-weight:600}.access-feedback[data-state=notice]{background:#fff6dc;color:#725212}.access-feedback[data-state=success]{background:#e9f6e9;color:#205d33}.access-feedback[data-state=error]{background:#fff0ec;color:#963e2a}.access-submit button[data-state=complete]{background:#27683e;opacity:1}.access-submit button[data-state=waiting]{background:#725b2b;opacity:1}.access-submit button[data-state=sending]{opacity:1;cursor:wait}

.account-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:28px}.account-header .brand{margin-bottom:0}.account-header-actions{display:flex;align-items:center;gap:16px}.account-header-actions .admin-link{font-size:13px;font-weight:600;color:#254d3b;text-decoration:none}.account-header-actions .admin-link:hover{text-decoration:underline}.account-header form{margin:0;display:block}.account-header button{font-size:13px;padding:7px 14px}.account-top-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-bottom:32px}.top-card{background:#fafbf7;border:1px solid #dfe6dd;border-radius:14px;padding:16px 18px;display:flex;flex-direction:column;min-width:0}.top-card h3{margin:0 0 8px;font-size:16px;font-weight:650;color:#21332d}.top-card p{margin:0;font-size:13px;line-height:1.5}.top-card p.muted{color:#6b786f}.top-card .access-record{border-top:1px solid #dfe6dd;padding:10px 0}.top-card .access-record:first-child{border-top:0;padding-top:2px}.top-card .access-record strong{font-size:14px}.top-card .access-record p,.top-card .access-record small{font-size:12px;line-height:1.5}.top-card .access-record button{font-size:12px;padding:5px 10px;margin-top:8px}@media(max-width:640px){.account-top-grid{grid-template-columns:1fr}}.access-section-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:32px 0 16px}.account-top-grid + .access-section-header{margin-top:0}.access-section-header h2{margin:0;font-size:23px}.access-section-header button{font-size:12px;padding:6px 12px}

.access-choices{grid-template-columns:1fr;gap:8px;padding:0 12px 12px}.access-permission-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:12px;background:#fff;border:1px solid #e4e9e0;border-radius:10px}.access-resource-name{font-size:14px;overflow-wrap:anywhere}.access-resource-name strong{display:block;font-size:14px;font-weight:600}.access-resource-name small{display:block;margin-top:3px;color:#6b786f;font-size:12px;font-weight:400}.projects .access-permission-row{margin-bottom:8px;transition:background .15s,border-color .15s}.projects .access-permission-row:hover{background:#fafbf7;border-color:#cbd5cb}.projects .access-permission-row:has(input[data-permission]:checked){background:#edf4ed;border-color:#477c64}.access-permission{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;font-size:13px;font-weight:400;cursor:pointer}.access-permission input{appearance:none;display:grid;place-content:center;flex-shrink:0;width:18px;height:18px;padding:0;margin:0;border:1.5px solid #adbdad;border-radius:5px;background:#fff;cursor:pointer}.access-permission input:checked,.access-permission input:indeterminate{background:#254d3b;border-color:#254d3b}.access-permission input:checked::before{content:"";width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:translateY(-1px) rotate(45deg)}.access-permission input:indeterminate::before{content:"";width:8px;height:2px;background:#fff;border-radius:1px}.access-permission input:disabled{cursor:default;opacity:.75}.access-permission:has(input:disabled){cursor:default}.access-bulk-row{background:#f6f8f4;border-color:#dce4d9;margin-top:2px}.access-global-bulk-row{background:#f0f4ee;border-color:#d0dbce;margin-top:0;margin-bottom:14px}.access-global-bulk-row .access-bulk-label{font-weight:650;color:#21332d}.access-bulk-left{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0}.access-bulk-left button{font-size:12px;padding:5px 10px;margin:0}.access-bulk-label{font-size:13px;font-weight:600;color:#55665a}.access-grant-detail{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;color:#6b786f;font-size:12px}.access-grant-detail button{font-size:12px;padding:7px 10px}@media(max-width:360px){.access-section-header{gap:8px;margin-top:28px}.access-section-header h2{font-size:19px}.access-section-header button{font-size:11px;padding:5px 9px}.access-permission-row{gap:8px;padding:10px}.access-resource-name{font-size:13px}.access-permission{font-size:12px;gap:5px}.access-permission input{width:16px;height:16px}.access-bulk-left button{font-size:11px;padding:4px 8px}.access-bulk-label{font-size:12px}}
