:root{--cream:#f4f0e8;--paper:#fdfcf9;--ink:#1b1b18;--charcoal:#33362f;--muted:#6e6759;--line:#e3dccd;--oak:#8a6844;--green:#4e7a4e;--red:#a33d2d;--amber:#b07f2e}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--paper);color:var(--ink);font-family:-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:15px;line-height:1.6}a{color:inherit;text-decoration:none}.shell{min-height:100vh;display:flex}.sidebar{background:var(--charcoal);width:220px;color:var(--cream);flex-direction:column;flex-shrink:0;gap:.2rem;padding:1.6rem 1rem;display:flex}.sidebar .brand{letter-spacing:.12em;text-transform:uppercase;margin-bottom:1.6rem;padding:0 .6rem;font-size:.8rem;font-weight:600}.sidebar .brand span{color:var(--oak)}.sidebar a{color:#f4f0e8d1;border-radius:8px;padding:.55rem .6rem;font-size:.92rem}.sidebar a:hover{color:#fff;background:#ffffff14}.lock-ico{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:15px;height:15px}.sidebar a.locked{color:#fff;background:#a8281c;align-items:center;gap:.45rem;margin:.15rem 0;font-weight:600;display:flex}.sidebar a.locked:hover{color:#fff;background:#bf3224}.sidebar .locked-group{flex-direction:column;gap:.2rem;margin-bottom:.9rem;display:flex}.sidebar .locked-group:empty{display:none}.sidebar .spacer{flex:1}.bp-head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.bp-eyebrow{color:#a8281c;align-items:center;gap:.35rem;display:flex}.bp-eyebrow .lock-ico{width:12px;height:12px}.bp-wall{text-align:center;border-top:4px solid #a8281c;max-width:520px;margin:3rem auto;padding:2.2rem 1.6rem}.bp-wall p{color:var(--muted)}.bp-wall-ico{color:#fff;background:#a8281c;border-radius:50%;place-items:center;width:54px;height:54px;margin:0 auto 1rem;display:grid}.bp-wall-ico .lock-ico{width:24px;height:24px}.bp-crumb{color:var(--muted);margin-bottom:.6rem;font-size:.85rem;text-decoration:underline;display:inline-block}.bp-back{margin-top:1.2rem;text-decoration:underline;display:inline-block}.sidebar .who{color:#f4f0e88c;padding:0 .6rem;font-size:.78rem}.main{flex:1;max-width:1100px;padding:2.2rem 2.6rem}.eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--oak);font-size:.68rem;font-weight:600}h1.page{margin:.25rem 0 1.4rem;font-size:1.7rem;font-weight:650}.card{border:1px solid var(--line);background:#fff;border-radius:12px;margin-bottom:1rem;padding:1.1rem 1.3rem}.card h2{margin-bottom:.7rem;font-size:1.02rem;font-weight:600}table.list{border-collapse:collapse;width:100%;font-size:.92rem}table.list th{text-align:left;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);padding:.45rem .6rem;font-size:.68rem;font-weight:600}table.list td{border-bottom:1px solid var(--line);padding:.6rem}table.list tr:last-child td{border-bottom:none}.pill{background:var(--cream);color:var(--muted);border-radius:999px;padding:.18rem .6rem;font-size:.72rem;font-weight:600;display:inline-block}.pill.green{color:var(--green);background:#e6efe6}.pill.red{color:var(--red);background:#f7e6e2}.pill.amber{color:var(--amber);background:#f6edd9}.pill.oak{color:var(--oak);background:#efe6da}.avatar{background:var(--cream);width:30px;height:30px;color:var(--charcoal);border-radius:50%;justify-content:center;align-items:center;margin-right:.6rem;font-size:.72rem;font-weight:700;display:inline-flex}.login-wrap{background:var(--charcoal);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{background:var(--paper);border-radius:14px;width:100%;max-width:400px;padding:2.4rem}.login-card h1{margin:1rem 0 .3rem;font-size:1.3rem}.login-card p{color:var(--muted);margin-bottom:1.2rem;font-size:.92rem}.login-card input{border:1px solid var(--line);background:#fff;border-radius:9px;width:100%;margin-bottom:.8rem;padding:.7rem .9rem;font-size:.95rem}.btn{text-align:center;background:var(--ink);width:100%;color:var(--cream);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;border:none;border-radius:999px;padding:.75rem 1.4rem;font-size:.82rem;font-weight:600;display:inline-block}.btn:hover{background:#000}.notice{color:var(--green);margin-top:.4rem;font-size:.88rem}.error{color:var(--red);margin-top:.4rem;font-size:.88rem}.empty{color:var(--muted);padding:1rem 0;font-size:.92rem}.grid2{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (max-width:900px){.grid2{grid-template-columns:1fr}.main{padding:1.4rem}}.avatar{flex-shrink:0;overflow:hidden}.avatar-img{object-fit:cover;background:var(--cream)}.avatar-lg{width:96px;height:96px;margin-right:0;font-size:2rem}@media (max-width:767px){input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px}a,button{-webkit-tap-highlight-color:transparent}}.appbar,.tabbar{display:none}@media (max-width:767px){.sidebar{display:none}.shell{display:block}.appbar{z-index:30;background:var(--charcoal);color:var(--cream);padding:calc(env(safe-area-inset-top) + .6rem) calc(env(safe-area-inset-right) + 1rem) .6rem calc(env(safe-area-inset-left) + 1rem);justify-content:space-between;align-items:center;display:flex;position:sticky;top:0;box-shadow:0 1px #0000002e}.appbar .brand{letter-spacing:.12em;text-transform:uppercase;font-size:.8rem;font-weight:600}.appbar .brand span{color:var(--oak)}.appbar-right{align-items:center;gap:.5rem;display:flex}.appbar-signout{color:#f4f0e8c7;align-items:center;min-height:44px;padding:0 .4rem;font-size:.78rem;display:inline-flex}.appbar-signout:active{color:#fff}.tabbar{z-index:30;background:var(--charcoal);padding-bottom:env(safe-area-inset-bottom);border-top:1px solid #ffffff14;display:flex;position:fixed;bottom:0;left:0;right:0}.tab{color:#f4f0e899;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:3px;min-height:56px;padding:.45rem .2rem;display:flex}.tab-ico svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:24px;height:24px}.tab-lbl{flex-direction:column;align-items:center;font-size:.66rem;font-weight:600;line-height:1.05;display:flex}.tab.active{color:var(--cream)}.tab.active .tab-ico svg{stroke:var(--oak)}.tab:active{background:#ffffff0f}.tab.locked,.tab.locked.active{color:#ff8f80}.tab.locked .tab-ico svg,.tab.locked.active .tab-ico svg{stroke:#ff8f80;width:24px;height:24px}.main{max-width:100%;padding:1.25rem calc(env(safe-area-inset-right) + 1rem) calc(76px + env(safe-area-inset-bottom)) calc(env(safe-area-inset-left) + 1rem)}h1.page{margin:.2rem 0 1rem;font-size:1.4rem}}@media (max-width:640px){.card.group{background:0 0;border:none;margin-bottom:1.5rem;padding:0}.card.group>h2{margin-bottom:.55rem;padding:0 .15rem;font-size:.95rem}table.cardify,table.cardify tbody,table.cardify tr,table.cardify td{width:100%;display:block}table.cardify thead{display:none}table.cardify tr{border:1px solid var(--line);background:#fff;border-radius:12px;margin-bottom:.7rem;padding:.85rem 1rem}table.cardify tr:active{background:var(--cream)}table.cardify td{overflow-wrap:anywhere;border:none;flex-wrap:wrap;align-items:center;gap:.55rem;min-width:0;min-height:34px;padding:.28rem 0;display:flex}table.cardify td[data-label]:before{content:attr(data-label);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);flex:none;font-size:.62rem;font-weight:600}table.cardify td[data-primary]{border-bottom:1px solid var(--line);margin-bottom:.4rem;padding:0 0 .5rem;font-size:1.05rem;font-weight:600;line-height:1.3;display:block}table.cardify td[data-primary]:before{content:none}table.cardify td[data-primary] .avatar,table.cardify td[data-primary] .avatar-img{width:34px!important;min-width:34px!important;height:34px!important}table.cardify td button{min-height:44px}table.cardify.tight tr{border:none;border-bottom:1px solid var(--line);background:0 0;border-radius:0;margin:0;padding:.7rem 0}table.cardify.tight tr:last-child{border-bottom:none}table.cardify.tight td[data-primary]{border-bottom:none;margin-bottom:.1rem;padding-bottom:.15rem;font-size:.98rem}}@media (max-width:480px){.login-wrap{align-items:flex-start;padding:12vh 1rem 2rem}.login-card{padding:1.6rem 1.3rem}}.pa-btn{border:1px solid var(--line);font:inherit;cursor:pointer;white-space:nowrap;color:var(--ink);background:#fff;border-radius:999px;align-items:center;gap:.35rem;padding:.45rem .8rem;font-size:.85rem;font-weight:600;display:inline-flex}.pa-btn:hover{border-color:var(--oak)}.pa-count{background:var(--cream);border-radius:999px;padding:0 .45rem;font-size:.75rem}.pa-box{color:var(--ink);background:#fff;border:none;border-radius:14px;width:min(460px,100vw - 2rem);max-height:min(640px,90vh);margin:auto;padding:0;overflow:hidden;box-shadow:0 20px 60px #0000004d}.pa-box::backdrop{background:#1b1b1873}.pa-in{flex-direction:column;max-height:min(640px,90vh);display:flex}.pa-head{justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem 1.2rem .4rem;display:flex}.pa-head strong{font-size:1.1rem}.pa-eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--oak);font-size:.64rem;font-weight:650}.pa-x{background:var(--cream);cursor:pointer;border:none;border-radius:50%;flex-shrink:0;width:32px;height:32px;font-size:1.2rem}.pa-note{color:var(--muted);padding:0 1.2rem .6rem;font-size:.84rem}.pa-list{border-top:1px solid var(--line);padding:0 1.2rem;list-style:none;overflow-y:auto}.pa-list li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding:.5rem 0;display:flex}.pa-list li:last-child{border-bottom:none}.pa-name{font-size:.92rem;font-weight:600}.pa-owner{color:var(--oak);background:#efe6da;border-radius:999px;padding:.18rem .6rem;font-size:.72rem;font-weight:600}.pa-list select{font:inherit;border:1px solid var(--line);cursor:pointer;border-radius:999px;padding:.3rem .55rem;font-size:.84rem;font-weight:600}.pa-list select.yes{color:var(--green);background:#e6efe6}.pa-list select.no{color:var(--muted);background:#f3f1ec}.pa-foot{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;min-height:3.2rem;padding:.8rem 1.2rem;display:flex}.pa-foot .ok{color:var(--green);font-size:.84rem}.pa-foot .bad{color:var(--red);font-size:.84rem}.pa-done{background:var(--ink);color:var(--cream);font:inherit;cursor:pointer;border:none;border-radius:999px;margin-left:auto;padding:.45rem 1.1rem;font-size:.82rem;font-weight:600}@media (max-width:767px){.pa-list select{font-size:16px}}.team-in{font:inherit;border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;min-width:0;padding:.32rem .5rem;font-size:.88rem}.team-in:focus{outline:2px solid var(--oak);outline-offset:1px}.team-tenure-btn{font:inherit;cursor:pointer;color:inherit;text-align:left;background:0 0;border:1px dashed #0000;border-radius:8px;margin-left:-.45rem;padding:.25rem .45rem}.team-tenure-btn:hover{border-color:var(--oak);background:var(--cream)}.team-link{text-underline-offset:2px;text-decoration:underline}.team-save{color:var(--green);margin-left:.4rem;font-size:.78rem}.team-none{color:var(--muted)}@media (max-width:767px){.team-in{font-size:16px}}.team-card{align-items:flex-start;gap:.75rem;display:flex}.team-card-body{flex-direction:column;align-items:flex-start;gap:.22rem;min-width:0;display:flex}.team-card-body .team-in{width:19rem;max-width:100%}.team-name{font-size:1rem;font-weight:650}.team-titles{flex-wrap:wrap;gap:.3rem;margin-bottom:.1rem;display:flex}.team-title{color:#3d4b5c;background:#e8ecf1;border-radius:999px;padding:.14rem .55rem;font-size:.72rem;font-weight:600}.team-contact{color:var(--ink);font-size:.86rem;font-weight:400}.team-contact span{color:var(--muted);width:1.1rem;display:inline-block}.team-contact:hover{text-underline-offset:2px;text-decoration:underline}table.list.team th:first-child{width:22rem}table.list.team th:nth-child(2){width:9rem}table.list.team th:nth-child(3),table.list.team th:nth-child(4){width:13rem}table.list.team{table-layout:fixed}table.list.team td{vertical-align:top;padding-top:.8rem;padding-bottom:.8rem}@media (max-width:640px){table.cardify .team-room{display:none}table.list.team{table-layout:auto}}.main:has(table.team){max-width:none}.team-disc-edit{flex-direction:column;align-items:flex-start;gap:.35rem;display:flex}.team-upload{padding:.35rem .75rem;font-size:.8rem}.team-upload.busy{opacity:.6;cursor:progress}.team-file{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.78rem;overflow:hidden}table.list.team tr{scroll-margin-top:90px}table.list.team tr:target{background:#eef2f6;box-shadow:inset 4px 0 #5b6b7d}.stars{color:#d8d0c0;gap:.05rem;font-size:1rem;line-height:1;display:inline-flex}.stars .on{color:#c9a227}.stars.edit button{color:#d8d0c0;cursor:pointer;background:0 0;border:none;padding:.1rem;font-size:1.15rem;line-height:1}.stars.edit button.on{color:#c9a227}.stars.edit button:hover{transform:scale(1.12)}.team-books{padding:.35rem .7rem;font-size:.8rem;text-decoration:none}.team-avg{border:1px solid var(--line);background:#fff;border-radius:12px;flex-wrap:wrap;align-items:baseline;gap:.3rem .8rem;margin-bottom:1rem;padding:.8rem 1.1rem;display:flex}.team-avg-l{letter-spacing:.14em;text-transform:uppercase;color:var(--oak);font-size:.68rem;font-weight:600}.team-avg strong{font-size:1.3rem;font-weight:650}.team-avg small{color:var(--muted);font-size:.84rem}
