:root{color-scheme:light;--black: #0a0a0a;--white: #fff;--gray: #a6a6a6;--gray-dark: #767676;--line: #e4e4e4;--footer-bg: #1a1a1a;--accent: #00e1a5;--accent-hover: #00c995;--accent-soft: rgba(0, 225, 165, .14);--accent-ink: #1d1e1b}*{box-sizing:border-box}[hidden]{display:none!important}html,body{height:100%}body{margin:0;background:#fff;color:var(--black);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased;display:flex;flex-direction:column;min-height:100%}.site-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 28px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:baseline;gap:8px;text-decoration:none;color:var(--black)}.brand-mark{font-size:18px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.brand-sub{font-size:12px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--gray-dark)}.site-header nav{display:flex;align-items:center;gap:24px}.site-header nav a:not(.button-link){font-size:13px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--gray-dark);text-decoration:none;transition:color .12s ease}.site-header nav a[aria-current=page]{color:var(--black);box-shadow:inset 0 -2px 0 var(--accent);padding-bottom:3px}.site-header nav a:not(.button-link):hover{color:var(--black)}main{flex:1;max-width:760px;width:100%;margin:0 auto;padding:56px 28px 80px}main.wide{max-width:1180px}.site-footer{background:var(--footer-bg);color:var(--white);padding:56px 28px 40px}.site-footer .row{max-width:1180px;margin:0 auto;align-items:center}.site-footer .footer-brand{display:flex;align-items:center;gap:24px}.footer-logo{height:44px;width:auto;display:block}.site-footer p{margin:0;font-size:12.5px;letter-spacing:.02em;color:#b8b8b8}h1{font-size:24px;font-weight:700;letter-spacing:-.01em;margin:0}h2{font-size:15px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;margin:0 0 16px}a{color:var(--black)}button,.button-link{font:inherit;font-size:12.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--black);background:transparent;border:1px solid var(--black);border-radius:999px;padding:13px 22px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;text-decoration:none;transition:background .12s ease,color .12s ease,border-color .12s ease}button:hover,.button-link:hover{background:var(--black);color:var(--white)}button.primary,.button-link.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:700}button.primary:hover,.button-link.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:var(--accent-ink)}button.subtle,.button-link.subtle{background:transparent;color:var(--gray-dark);border-color:var(--line)}button.subtle:hover,.button-link.subtle:hover{background:var(--black);color:var(--white);border-color:var(--black)}button.icon-btn{width:34px;height:34px;padding:0;color:var(--gray-dark);background:transparent;border-color:var(--line);border-radius:50%;justify-content:center;gap:0;flex-shrink:0}button.icon-btn:hover{background:var(--black);color:var(--white);border-color:var(--black)}button.icon-btn.danger:hover{background:#b3261e;color:var(--white);border-color:#b3261e}button.icon-btn svg{width:16px;height:16px;display:block;pointer-events:none}input,select{font:inherit;color:var(--black);background:#fff;border:1px solid #d6d6d6;border-radius:0;padding:9px 12px;width:100%;display:block}input:focus,select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}label{display:block;font-size:12.5px;font-weight:600;color:var(--gray-dark);margin-bottom:6px}.field{margin-bottom:16px}table{width:100%;border-collapse:collapse;font-size:14.5px}th{text-align:left;font-size:12px;font-weight:700;color:var(--gray-dark);text-transform:uppercase;letter-spacing:.03em;padding:16px 12px 10px;border-bottom:1px solid var(--black)}td{text-align:left;padding:14px 12px;border-bottom:1px solid #eee;vertical-align:middle}tr:last-child td{border-bottom:none}.card{border:1px solid var(--line);border-radius:0;padding:24px}.muted{color:var(--gray-dark)}.row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.team-actions{display:flex;gap:10px;flex-wrap:wrap}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{display:inline-flex;align-items:center;gap:6px;border:1px solid #d6d6d6;border-radius:999px;padding:6px 14px;font-size:13.5px;cursor:pointer;user-select:none;transition:background .12s ease,color .12s ease,border-color .12s ease}.chip input{position:absolute;opacity:0;width:0;height:0}.chip:has(input:checked){background:var(--accent);color:var(--accent-ink);border-color:var(--accent);font-weight:600}.chip:has(input:focus-visible){outline:2px solid var(--black);outline-offset:2px}.back-link{display:inline-block;font-size:13px;text-decoration:none;margin-bottom:16px}.back-link:hover{color:var(--black)}.team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.team-card{display:flex;flex-direction:column;gap:4px;text-decoration:none;font-size:13.5px;transition:border-color .12s ease}.team-card:hover{border-color:var(--accent)}.team-card-name{font-size:17px;font-weight:700;margin-bottom:8px;overflow-wrap:anywhere}.readonly{padding:9px 12px;border:1px solid var(--line);background:#fafafa;min-height:41px;overflow-wrap:anywhere}input:disabled{background:#fafafa;color:var(--gray-dark)}.status-tag{display:inline-block;border:1px solid #d6d6d6;border-radius:999px;padding:3px 10px;font-size:12.5px;white-space:nowrap}.status-line{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.status-line>span:not(.status-tag){font-size:13.5px}.status-tag.pending{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-ink);font-weight:600}.status-tag.done{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);font-weight:600}.status-tag.error{border-color:#b3261e;color:#b3261e}button.mini{padding:6px 10px;font-size:11px}.staff-badge{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--white);background:var(--black);padding:7px 12px}.staff-badge:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--accent)}.section-head{display:flex;align-items:baseline;gap:12px;margin:0 0 16px}.section-head h2{margin:0}.section+.section{margin-top:48px;padding-top:40px;border-top:1px solid var(--line)}.team-card.other{background:#fafafa}.nickname{text-decoration:underline dotted var(--gray);text-underline-offset:5px;text-decoration-thickness:1.5px;cursor:help}.project-tag{display:inline-block;border:1px solid #d6d6d6;border-radius:999px;padding:3px 10px;font-size:12.5px;margin:0 6px 4px 0}.brand-row{display:flex;align-items:center;gap:16px;min-width:0}.logout-icon,.cell-summary{display:none}@media(max-width:640px){.site-header{flex-wrap:wrap;gap:10px;padding:14px 16px}.brand-row{width:100%;justify-content:space-between}.long-text{display:none}.site-header nav{width:100%;gap:18px}.site-header nav a:not(.button-link){font-size:11.5px;letter-spacing:.03em}.site-header nav .button-link{margin-left:auto;padding:8px 12px;font-size:11px;letter-spacing:.05em}.staff-badge{font-size:10.5px;letter-spacing:.03em;padding:5px 8px;gap:6px}main{padding:28px 16px 56px}table,thead,tbody,tr,td{display:block;width:100%}thead{display:none}tbody tr{border-bottom:1px solid #eee}tbody tr:last-child{border-bottom:none}td{border:none;overflow-wrap:anywhere}tbody tr[data-id]{display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:12px;padding:16px 18px;cursor:pointer;-webkit-tap-highlight-color:transparent}tbody tr[data-id]>td{display:none;padding:0!important}tbody tr[data-id]>td:first-child,tbody tr[data-id]>td.cell-summary{display:block}td.cell-summary{display:flex!important;align-items:center;gap:10px;font-size:12.5px;color:var(--gray-dark);white-space:nowrap}td.cell-summary .summary-pending{color:var(--black);font-weight:600}.chevron{width:16px;height:16px;transition:transform .15s ease}}:is(#panel-row,#detail-sheet):not([hidden]){display:block;position:fixed;left:0;right:0;bottom:0;margin:0 auto;width:100%;max-width:560px;z-index:50;max-height:88vh;overflow-y:auto;padding:0!important;background:var(--white);border-radius:18px 18px 0 0;box-shadow:0 -8px 30px #0000002e;animation:sheet-up .22s ease-out}:is(#panel-row,#detail-sheet)>td{display:block;padding:0!important;border:none}:is(#panel-row,#detail-sheet) .card{margin:0!important;border:none;padding:8px 20px 28px}.sheet-handle{display:block;margin:0 -20px 6px;padding:12px 0 14px;cursor:grab;touch-action:none}.sheet-handle:before{content:"";display:block;width:40px;height:4px;border-radius:2px;background:#d6d6d6;margin:0 auto}#panel-title{touch-action:none}#cancel-panel{display:none}:is(#panel-row,#detail-sheet) .grid{grid-template-columns:1fr;gap:0}:is(#panel-row,#detail-sheet) .grid .field{grid-column:auto!important}:is(#panel-row,#detail-sheet) .row>div{width:100%;min-width:0!important}:is(#panel-row,#detail-sheet) .row>div:last-child{display:flex;flex-direction:column;gap:8px!important}:is(#panel-row,#detail-sheet) .row>div:last-child button{width:100%;justify-content:center}:is(#panel-row,#detail-sheet) h2{font-size:18px;text-transform:none;letter-spacing:-.01em;margin-bottom:20px}:is(#panel-row,#detail-sheet) .field{margin-bottom:14px}:is(#panel-row,#detail-sheet) input,:is(#panel-row,#detail-sheet) select{border-radius:8px;padding:12px 14px;font-size:16px}:is(#panel-row,#detail-sheet) button{border-radius:999px;padding:15px 22px;font-size:13px}:is(#panel-row,#detail-sheet) .chip{border-radius:999px}body.sheet-open{overflow:hidden}body.sheet-open:after{content:"";position:fixed;inset:0;z-index:40;background:#00000059}.sheet-close{display:none}@media(min-width:641px){:is(#panel-row,#detail-sheet):not([hidden]){top:0;bottom:0;margin:auto;height:fit-content;border-radius:16px;box-shadow:0 20px 60px #0000004d;animation:popup-in .18s ease-out}:is(#panel-row,#detail-sheet) .card{padding:28px 32px 32px}.sheet-handle{display:none}#panel-title{touch-action:auto}:is(#panel-row,#detail-sheet) .sheet-close{display:flex;position:absolute;top:20px;right:20px;width:34px;height:34px;padding:0}}@keyframes popup-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}tbody tr[data-id]{cursor:pointer}tbody tr[data-id]:hover{background:#fafafa}.detail-name{line-height:1.3;text-transform:none;letter-spacing:-.01em;font-size:20px!important;padding-right:44px;margin-bottom:8px!important}.detail-list{margin:0}.detail-row{display:grid;grid-template-columns:90px 1fr;gap:14px;align-items:center;padding:14px 0;border-top:1px solid #eee}.detail-row dt{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--gray-dark)}.detail-row dd{margin:0;display:flex;align-items:center;gap:10px;min-width:0;min-height:34px;font-size:15px}#detail-sheet .detail-row{grid-template-columns:1fr;gap:4px;padding:12px 0}.detail-value{overflow-wrap:anywhere}:is(#panel-row,#detail-sheet) button.copy-btn{width:32px;height:32px;padding:0;margin-left:auto;flex-shrink:0}button.copy-btn.copied{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.detail-actions{display:flex;gap:10px;padding-top:18px;border-top:1px solid #eee}.detail-actions button{flex:1;justify-content:center}.detail-actions svg{width:15px;height:15px}button.danger-text:hover{background:#b3261e;border-color:#b3261e;color:var(--white)}.people-layout{display:grid;grid-template-columns:minmax(300px,400px) 1fr;gap:20px;align-items:start}.people-list{padding:10px}.people-group{padding:14px 12px 6px;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--gray-dark)}.people-group:first-child{padding-top:6px}button.person-item{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border:none;border-radius:12px;background:transparent;color:var(--black);text-align:left;text-transform:none;letter-spacing:normal;font-size:14.5px;font-weight:400}button.person-item:hover{background:#f6f6f6;color:var(--black)}button.person-item.active{background:#ededed}.avatar{flex-shrink:0;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#ececec;font-size:12.5px;font-weight:700;letter-spacing:.02em}.person-item.active .avatar{background:var(--black);color:var(--white)}.person-main{display:flex;flex-direction:column;min-width:0;flex:1}.person-name,.person-sub{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.person-name{font-weight:600}.person-sub{font-size:12.5px;color:var(--gray-dark)}.person-item .status-tag{flex-shrink:0;font-size:11.5px;padding:2px 9px}.you-tag{font-size:11px;font-weight:600;color:var(--gray-dark);margin-left:4px}.people-detail{position:sticky;top:20px;height:500px;padding:28px 32px;display:flex;flex-direction:column}.people-detail .detail-list{flex:1;min-height:0;overflow-y:auto}.people-detail .detail-actions{margin-top:auto}.people-detail-empty{margin:auto 0;text-align:center}.copy-btn{margin-left:auto}#invite-modal{width:min(520px,calc(100vw - 32px));border:1px solid var(--line);border-radius:18px;padding:28px;background:var(--white);color:var(--black)}#invite-modal::backdrop{background:#00000059}#invite-modal h2{text-transform:none;letter-spacing:-.01em;font-size:20px;margin:0 0 8px}#invite-modal p{margin:0}#invite-modal .invite-note{font-size:13px;margin:12px 0 20px}#invite-modal #invite-done{width:100%;justify-content:center}@media(max-width:640px){#invite-modal{width:100vw;max-width:100vw;margin:auto 0 0;border-radius:18px 18px 0 0;padding:24px 16px calc(24px + env(safe-area-inset-bottom))}}.invite-link{display:flex;align-items:center;gap:10px;margin-top:14px;padding:8px 8px 8px 12px;border:1px solid var(--line);border-radius:10px;font-size:13px}.invite-link .detail-value{overflow-wrap:anywhere;min-width:0}.invite-link button.copy-btn{width:32px;height:32px;padding:0;flex-shrink:0}@media(max-width:950px){.long-text{display:none}.site-header nav a,.staff-badge{white-space:nowrap}.people-layout{grid-template-columns:minmax(0,1fr)}.people-detail{display:none}}@media(max-width:640px){.people-list{padding:6px}}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media(max-width:360px){.logout-text{display:none}.logout-icon{display:block;width:16px;height:16px}}
