:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#1b2822;background:#f4f5ef;font-synthesis:none;text-rendering:optimizeLegibility;font-weight:400;font-size:16px}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button{cursor:pointer}.auth-wrap{min-height:100svh;display:grid;place-items:center;padding:24px;background:radial-gradient(ellipse at top,#dce6d7,#f4f5ef 62%)}.auth-card{width:min(100%,430px);background:#fff;border:1px solid #e4e8e0;border-radius:26px;padding:34px;box-shadow:0 22px 70px #1d362417}.brand-mark{width:50px;height:50px;border-radius:15px;background:#dff36b;color:#263326;display:grid;place-items:center;font-weight:900;letter-spacing:-.08em}.brand-mark.small{width:32px;height:32px;border-radius:10px;font-size:12px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:.14em;color:#78877c;margin:20px 0 8px}.auth-card h1,.page-heading h1{font-size:clamp(34px,7vw,52px);letter-spacing:-.055em;line-height:1.02;margin:0}.muted{color:#77827b;font-size:14px;line-height:1.55}.stack{display:grid;gap:15px}.stack label,.observation{display:grid;gap:7px;font-size:13px;font-weight:650;color:#39483e}.stack input,.stack select,.stack textarea,.observation textarea{width:100%;border:1px solid #dce2da;border-radius:11px;padding:12px;background:#fff;color:#1b2822;outline:none}.stack input:focus,.stack select:focus,.stack textarea:focus,.observation textarea:focus{border-color:#6d895c;box-shadow:0 0 0 3px #9fbd7b35}.primary,.secondary{border:0;border-radius:11px;padding:12px 16px;font-weight:750}.primary{background:#24362b;color:#fff}.primary:hover{background:#354f3b}.primary:disabled{opacity:.6}.secondary{background:#eaf0e4;color:#314833}.link-button,.back-button{border:0;background:none;color:#56714c;padding:14px 0;font-size:13px;font-weight:700}.app-shell{min-height:100vh}.topbar{height:64px;background:#17211d;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 max(20px,calc((100vw - 1120px)/2));position:sticky;top:0;z-index:3}.topbar>div{display:flex;align-items:center;gap:10px}.topbar strong{font-size:14px}.user-chip{border:1px solid #ffffff29;color:#dfe8dd;background:#ffffff0c;border-radius:999px;padding:8px 12px;font-size:12px}.content{width:min(100% - 32px,1120px);margin:0 auto;padding:38px 0 60px}.page-heading{display:flex;justify-content:space-between;align-items:end;margin:14px 0 26px}.page-heading .eyebrow{margin-top:0}.overview-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:18px}.panel{background:#fff;border:1px solid #e5e9e2;border-radius:18px;padding:22px;margin-bottom:18px;box-shadow:0 5px 22px #24362b08}.panel h2,.checklist-head h2,.observation h2{font-size:21px;letter-spacing:-.035em;margin:0 0 18px}.section-title{display:flex;justify-content:space-between}.section-title .eyebrow,.panel>.eyebrow{margin-top:0}.gig-list{display:grid;gap:8px}.gig-card{display:flex;align-items:center;gap:14px;width:100%;text-align:left;border:1px solid #edf0eb;border-radius:13px;padding:12px;background:#fff;color:inherit}.gig-card:hover{border-color:#bdcdb6;background:#fbfcf8}.gig-date{width:48px;height:48px;flex:none;display:grid;place-items:center;border-radius:12px;background:#eef3e8;color:#47633d;font-size:12px;font-weight:800}.gig-details{display:grid;gap:4px;flex:1}.gig-details strong{font-size:14px}.gig-details small,.venue-card small{font-size:12px;color:#7b867d}.arrow{font-size:20px;color:#85947c}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.empty{font-size:14px;color:#78827a;padding:8px 0 16px}.venue-panel{margin-top:18px}.venue-list{display:flex;gap:9px;overflow:auto;margin:0 -3px 18px;padding:3px}.venue-card{min-width:220px;max-width:280px;display:grid;gap:6px;padding:14px;border:1px solid #e9ede7;border-radius:12px}.venue-card strong{font-size:14px}.venue-form{max-width:540px;margin:18px 0 2px}details summary{color:#526e48;font-weight:700;font-size:13px;cursor:pointer}.back-button{margin-bottom:12px}.checklist-head{display:flex;align-items:center;justify-content:space-between;margin:25px 0 8px}.checklist-head h2{margin:0}.checklist-head .muted{margin:5px 0}.list-group{background:#fff;border:1px solid #e5e9e2;border-radius:16px;overflow:hidden;margin:12px 0}.list-group h3{font-size:13px;background:#f8f9f5;margin:0;padding:14px 17px;border-bottom:1px solid #edf0ea}.check-row{min-height:60px;display:flex;align-items:center;gap:13px;padding:11px 17px;border-bottom:1px solid #f0f2ee;cursor:pointer}.check-row:last-child{border:0}.check-row input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:21px;height:21px;border:1.5px solid #bdc8bc;border-radius:7px;flex:none;margin:0}.check-row input:checked{background:#527449;border-color:#527449;position:relative}.check-row input:checked:after{content:"✓";color:#fff;font-weight:800;position:absolute;left:4px;top:0}.check-copy{display:grid;gap:3px;flex:1;font-size:14px}.check-copy small{color:#839084;font-size:11px}.checked .check-copy>span{color:#829083;text-decoration:line-through}.quantity{font-size:12px;color:#78857a}.observation{margin-top:20px}.observation h2{margin-bottom:4px}.observation .secondary{justify-self:start}.notice{border:1px solid #e6ebd7;background:#f5f8ed;border-radius:12px;padding:13px 15px;font-size:13px;color:#455340;line-height:1.55;margin:15px 0}.notice.error{background:#fff1ed;color:#8e3f31;border-color:#f1d4cb;display:flex;justify-content:space-between;gap:12px}.notice button{background:none;border:0;color:inherit}.content footer,footer{text-align:center;color:#929c92;font-size:11px;padding:20px}footer{padding-bottom:30px}@media(max-width:760px){.content{width:calc(100% - 28px);padding-top:25px}.overview-grid{grid-template-columns:1fr;gap:0}.panel{padding:18px}.page-heading h1{font-size:38px}.topbar{padding:0 14px}.topbar strong{font-size:12px}.user-chip{font-size:11px;padding:7px 9px}.form-row{gap:8px}.auth-card{padding:26px 22px}.venue-card{min-width:200px}.checklist-head{align-items:flex-start}.checklist-head .secondary{padding:10px 12px}}.pack{border-top:1px solid #f0f2ee}.pack summary{list-style:none;display:flex;align-items:center;justify-content:space-between;padding:10px 17px;color:#65755f;font-size:12px;font-weight:750;cursor:pointer}.pack summary::-webkit-details-marker{display:none}.pack summary:after{content:"⌄";font-size:16px}.pack:not([open]) summary:after{content:"›"}.pack .check-row{padding-left:25px}.access-panel{margin-top:18px}.member-projects{display:grid;gap:10px;margin-bottom:18px}.member-projects>div{display:grid;gap:4px;padding:12px;border:1px solid #e9ede7;border-radius:12px}.member-projects strong{font-size:13px}.member-projects span{font-size:12px;color:#78827a}.invite-form{display:grid;grid-template-columns:1.2fr 1.2fr .8fr auto;gap:10px;align-items:end}.invite-form label{display:grid;gap:6px;font-size:12px;font-weight:650}.invite-form input,.invite-form select{min-width:0;border:1px solid #dce2da;border-radius:10px;padding:10px;background:#fff}.invite-form .secondary{white-space:nowrap}@media(max-width:760px){.invite-form{grid-template-columns:1fr 1fr}.invite-form button{grid-column:1/-1}}.list-tabs{display:flex;gap:8px;overflow-x:auto;margin:8px 0 14px;padding:2px 0 8px;position:sticky;top:64px;background:#f4f5ef;z-index:2}.list-tabs button{border:1px solid #dce3d8;border-radius:999px;padding:10px 16px;background:#fff;color:#52634f;white-space:nowrap;font-size:13px;font-weight:750}.list-tabs button.active{background:#24362b;color:#fff;border-color:#24362b}.project-picker{display:grid;gap:6px;max-width:380px;margin:0 0 16px;font-size:12px;font-weight:700}.project-picker select,.roster-row input,.roster-row select,.template-row input,.template-row select,.add-gig-item input,.add-gig-item select{border:1px solid #dce2da;border-radius:10px;padding:10px;background:#fff;min-width:0;width:100%}.roster-add{grid-template-columns:1fr 1fr auto}.roster-list{display:grid;gap:9px;margin-top:14px}.roster-row{display:grid;grid-template-columns:1fr 1fr auto auto;align-items:end;gap:9px;padding:12px;border:1px solid #e9ede7;border-radius:12px}.roster-row label,.template-row label,.add-gig-item label{display:grid;gap:5px;font-size:11px;font-weight:700;color:#5c6b5c}.danger-button{border:1px solid #efd4ce;border-radius:10px;padding:9px 11px;background:#fff5f2;color:#974e40;font-size:12px;font-weight:700}.template-pack{border:1px solid #e8ece5;border-radius:12px;margin:10px 0;overflow:hidden}.template-pack>summary{padding:12px 14px;background:#f8f9f5}.template-row{display:grid;grid-template-columns:1fr 1.5fr .7fr 1fr;gap:9px;align-items:end;padding:13px;border-top:1px solid #edf0ea}.template-actions{grid-column:1/-1;display:flex;gap:6px;flex-wrap:wrap}.template-actions button{padding:8px 10px}.template-add{border:1px dashed #bccbb7;border-radius:12px;margin-top:14px}.template-add .primary{grid-column:1/-1}.add-gig-item{display:grid;gap:12px;background:#fff;border:1px solid #e5e9e2;border-radius:16px;padding:18px;margin:14px 0}.add-gig-item>strong{font-size:14px}.add-gig-item .secondary{justify-self:start}@media(max-width:760px){.list-tabs{top:56px;margin-left:-14px;margin-right:-14px;padding:8px 14px;background:#f4f5ef}.roster-add,.roster-row{grid-template-columns:1fr}.roster-row .danger-button,.roster-row .secondary{justify-self:start}.template-row{grid-template-columns:1fr 1fr}.template-actions{grid-column:1/-1}.template-add{grid-template-columns:1fr 1fr}.template-add .primary{grid-column:1/-1}.add-gig-item .form-row{grid-template-columns:1fr}}
