:root{--green:#008938;--dark:#005b2b;--yellow:#ffc600;--ink:#17241b;--muted:#59635c;--line:#d8ded9;--paper:#f5f6f2}*{box-sizing:border-box}body{color:var(--ink);background:var(--paper);margin:0;font-family:Arial,Helvetica,sans-serif;font-size:14px}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}button{border:0}button svg,a svg{flex-shrink:0}.app-shell{min-height:100vh;display:flex}.sidebar{background:var(--dark);color:#fff;border-bottom:9px solid var(--yellow);flex-direction:column;width:225px;padding:31px 20px;display:flex;position:fixed;inset:0 auto 0 0}.brand{line-height:1;display:block}.subway-word{letter-spacing:-2px;white-space:nowrap;font-size:35px;font-style:italic;font-weight:1000}.subway-word>span:first-child{color:var(--yellow)}.brand-arrow{color:#fff;margin-left:1px;font-size:28px;font-style:normal}.workspace{border-block:1px solid #ffffff35;align-items:center;gap:10px;margin:25px 0 12px;padding:20px 0 23px;display:flex}.avatar{background:var(--yellow);color:var(--dark);place-items:center;width:32px;height:32px;font-weight:900;display:grid}.workspace strong{font-size:12px}.workspace small{color:#ccdfd1;margin-top:5px;font-size:10px;display:block}.nav-label{letter-spacing:1.2px;color:#c8dccf;margin:20px 0 12px;font-size:10px;font-weight:700}.nav-item{align-items:center;gap:10px;padding:14px 12px;font-size:12px;font-weight:700;display:flex}.selected{background:var(--yellow);color:#003e1c;border-left:4px solid #fff}.sidebar-bottom{color:#d2e3d8;align-items:center;gap:8px;margin-top:auto;padding-top:30px;font-size:10px;line-height:1.6;display:flex}main{flex:1;min-width:0;margin-left:225px}.topbar{border-bottom:1px solid var(--line);height:64px;color:var(--muted);background:#fff;justify-content:space-between;align-items:center;padding:0 35px;font-size:12px;display:flex}.slash{color:#a3aca5;margin:0 14px}.role{align-items:center;gap:8px;font-size:11px;font-weight:700;display:flex}.green-dot{background:var(--green);border-radius:50%;width:7px;height:7px}.content{max-width:1500px;margin:auto;padding:34px 35px 20px}.page-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.eyebrow{letter-spacing:1.5px;color:var(--green);margin-bottom:8px;font-size:10px;font-weight:800}h1{letter-spacing:-1.3px;margin:0 0 10px;font-size:37px;font-weight:900;line-height:1.15}.page-heading p{color:var(--muted);margin:0;font-size:13px;line-height:1.6}.primary,.secondary{white-space:nowrap;border-radius:3px;justify-content:center;align-items:center;gap:9px;min-height:41px;padding:11px 16px;font-size:12px;font-weight:700;display:inline-flex}.primary{background:var(--yellow);color:#12351d;border:1px solid #e6b200}.primary:hover{background:#f0ba00}.secondary{color:#294232;background:#fff;border:1px solid #b6c1b9}.secondary:hover{background:#edf3ed}.icon-button{color:#294232;background:#fff;border:1px solid #c9d1ca;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;width:35px;height:35px;display:inline-flex}.icon-button:hover{background:#ecf2ec}.week-toolbar{background:var(--green);color:#fff;border-bottom:4px solid var(--yellow);justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;padding:19px 22px;display:flex}.week-main{align-items:center;gap:13px;display:flex}.calendar-icon{color:var(--yellow);place-items:center;display:grid}h2{letter-spacing:-.3px;margin:0;font-size:18px;font-weight:800}.week-main h2{font-size:23px}.week-main h2 span{margin-left:5px;font-size:15px;font-weight:400}.week-main p{color:#e4f2e8;margin:5px 0 0;font-size:12px}.week-controls{align-items:center;gap:6px;display:flex}.week-controls input{color:#294232;border:0;border-radius:3px;width:135px;height:35px;padding:8px;font-size:11px}.week-controls .secondary{min-height:35px;margin-left:8px;padding:8px 11px;font-size:11px}.stats{border:1px solid var(--line);background:#fff;grid-template-columns:repeat(3,1fr);gap:0;margin-bottom:24px;display:grid}.stat{border-right:1px solid var(--line);justify-content:space-between;padding:18px 22px;display:flex}.stat:last-child{border-right:0}.stat span{color:#536257;font-size:11px}.stat strong{margin:7px 0 5px;font-size:30px;font-weight:900;line-height:1.2;display:block}.stat em{color:#6d796f;font-size:15px;font-style:normal;font-weight:400}.stat small{color:#68746b;font-size:10px}.stat-icon{display:none!important}.overview{border:1px solid var(--line);background:#fff;overflow:hidden}.section-top{justify-content:space-between;align-items:center;gap:15px;padding:23px 21px 17px;display:flex}.section-top p,.member-top p{color:#68746b;margin:7px 0 0;font-size:12px}.count{color:#315d3d;background:#e8efe7;margin-left:7px;padding:3px 7px;font:700 11px Arial;display:inline-flex}.actions{align-items:center;gap:7px;display:flex}.actions .secondary{min-height:35px;padding:8px 12px;font-size:11px}.table-tools{justify-content:space-between;gap:10px;padding:0 21px 17px;display:flex}.tabs{border-bottom:1px solid var(--line);gap:12px;display:flex}.tabs button{color:#66736a;background:0 0;border-bottom:3px solid #0000;padding:10px 7px;font-size:12px}.tabs button.active{color:var(--dark);border-bottom-color:var(--green);font-weight:700}.search{border:1px solid #c9d1ca;border-radius:3px;width:180px;padding:9px 11px;font-size:12px}.table-scroll{overflow-x:auto}table{border-collapse:collapse;text-align:left;width:100%;min-width:820px}thead{color:#47604d;background:#eef3eb}th{letter-spacing:.5px;text-align:center;white-space:nowrap;border-block:1px solid var(--line);padding:15px 10px;font-size:10px;font-weight:700}th:first-child{text-align:left;width:210px;padding-left:21px}th span{color:#6b7e6d;margin-left:4px}td{border-bottom:1px solid var(--line);text-align:center;vertical-align:middle;padding:17px 9px}td:first-child{text-align:left;padding-left:21px}tbody tr:nth-child(2n){background:#fcfdfa}.person{align-items:center;gap:10px;display:flex}.person-avatar{background:var(--yellow);width:31px;height:31px;color:var(--dark);border-radius:3px;flex-shrink:0;place-items:center;font-size:13px;font-weight:800;display:grid}.person strong{overflow-wrap:anywhere;max-width:155px;font-size:12px;display:block}.person small{color:#708075;margin-top:5px;font-size:10px;display:block}.person-note{color:#68796c;overflow-wrap:anywhere;max-width:200px;margin:8px 0 0;font-size:11px;line-height:1.6}.time-pill{color:#12582a;border-left:3px solid var(--green);background:#e3f0e0;padding:7px 8px;font-size:11px;font-weight:700;line-height:1.5;display:block}.time-pill span{font-weight:400}.time-pills{flex-direction:column;gap:5px;display:flex}.unavailable{color:#68746b;font-size:10px}.unknown{color:#705800;background:#fff1bc;padding:5px;font-size:10px}.missing{color:#87958a;font-size:18px}.hours{font-size:13px;font-weight:700}.table-footer{color:#65746a;justify-content:space-between;gap:12px;padding:14px 21px;font-size:10px;display:flex}.table-footer span{align-items:center;gap:5px;display:flex}.legend{width:7px;height:7px;margin-left:9px;display:inline-block}.legend:first-child{margin-left:0}.available{background:var(--green)}.grey{background:#abb5ad}.amber{background:var(--yellow)}.tip{color:#66736a;align-items:center;gap:10px;margin-top:16px;padding:8px 0;display:flex}.tip>span{color:var(--green);font-weight:700}.tip p{margin:0;font-size:11px;line-height:1.7}.tip strong{color:#34513c}footer{border-top:1px solid var(--line);color:#69776e;align-items:center;gap:18px;margin-top:32px;padding-top:18px;font-size:10px;display:flex}footer>span:first-child{color:var(--green);letter-spacing:.6px;font-weight:900}.footer-actions{flex-wrap:wrap;align-items:center;gap:16px;margin-left:auto;display:flex}.footer-actions a{color:var(--dark);text-decoration:underline}.empty{text-align:center;color:#627067;flex-direction:column;align-items:center;gap:12px;padding:48px 25px;display:flex}.empty h3{color:var(--ink);margin:5px 0 0;font-size:18px}.empty p{margin:0 0 5px;font-size:12px;line-height:1.8}.empty.small{padding:24px}.large-icon{width:48px;height:48px;color:var(--green);background:#e7f0e4;border-radius:3px;place-items:center;display:grid}.join-card{border:1px solid var(--line);border-top:5px solid var(--green);background:#fff;flex-direction:column;align-items:flex-start;gap:18px;max-width:510px;margin:30px auto;padding:30px;display:flex}.join-card h2{font-size:25px;font-weight:900}.join-card p{color:#627067;margin:0;line-height:1.7}.join-card label{width:100%;font-size:12px;font-weight:700;display:block}.join-card input{border:1px solid #b8c4bc;border-radius:3px;width:100%;min-height:42px;margin-top:8px;padding:12px;display:block}.join-card small{color:#67756b;font-size:11px;font-weight:400;line-height:1.7;display:block}.auth-fields{border:0;flex-direction:column;gap:17px;width:100%;margin:0;padding:0;display:flex}.auth-fields small{margin-top:6px}.auth-links{flex-direction:column;gap:13px;display:flex}.auth-card .error{width:100%;margin:0}.error{color:#863a20;background:#fff1eb;border-left:4px solid #b44724;margin-bottom:20px;padding:14px;font-size:12px;line-height:1.7}.toast{background:var(--dark);color:#fff;border-left:5px solid var(--yellow);z-index:10;align-items:center;gap:10px;padding:15px 21px;display:flex;position:fixed;bottom:25px;right:25px;box-shadow:0 5px 20px #0002}.share-panel{border-left:4px solid var(--yellow);background:#fff3c3;flex-wrap:wrap;align-items:center;gap:20px;margin-bottom:23px;padding:18px;display:flex}.share-panel p{color:#655e3c;margin:6px 0;font-size:11px;line-height:1.6}.share-panel input{background:#fff;border:1px solid #d8c98e;border-radius:3px;flex:1;min-width:180px;padding:10px;font-size:12px}.member-top{justify-content:space-between;align-items:center;gap:15px;margin:26px 0 17px;display:flex}.days-fieldset{border:0;min-width:0;margin:0;padding:0}.day-list{border:1px solid var(--line);background:#fff}.day-row{border-bottom:1px solid var(--line);align-items:center;gap:20px;padding:20px;display:flex}.day-row:last-child{border-bottom:0}.day-name{flex-shrink:0;align-items:center;gap:12px;width:140px;display:flex}.day-name>span{color:#526850;background:#edf1e9;border-radius:2px;place-items:center;width:36px;height:40px;font-size:18px;font-weight:800;display:grid}.day-name strong{font-size:12px}.day-name small{color:#6b7b6d;margin-top:4px;font-size:10px;font-weight:400;display:block}.day-row select{background:#fff;border:1px solid #bdc9bd;border-radius:3px;width:145px;padding:10px;font-size:11px}.is-available .day-name>span{background:var(--yellow);color:var(--dark)}.slots{flex-direction:column;gap:8px;display:flex}.slot{align-items:center;gap:8px;display:flex}.slot input{color:#294c30;border:1px solid #b6c5b8;border-radius:3px;width:102px;padding:8px;font-size:12px}.slot>span{color:#647867;font-size:10px}.text-button{color:var(--dark);text-underline-offset:3px;background:0 0;align-items:center;gap:4px;padding:0;font-size:11px;text-decoration:underline;display:inline-flex}.add-slot{white-space:nowrap;margin-left:auto}.status-hint{color:#6c7e6d;font-size:11px}.note-label{margin-top:23px;font-size:12px;font-weight:700;display:block}.note-label span{color:#6d7d6c;margin-left:8px;font-size:10px;font-weight:400}.note-label textarea{resize:vertical;border:1px solid #c1cdc0;border-radius:3px;width:100%;margin-top:10px;padding:14px;font-size:12px;line-height:1.7;display:block}.save-bar{justify-content:space-between;align-items:center;gap:15px;padding:21px 0;display:flex}.save-bar strong{font-size:15px}.save-bar small{color:#63755f;margin-top:6px;font-size:11px;display:block}.personal{border-top:1px solid var(--line);color:#697e64;align-items:flex-start;gap:10px;padding-top:17px;display:flex}.personal p{margin:0;font-size:11px;line-height:1.8}.personal svg{flex-shrink:0}.spin{animation:2s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=1150px){.sidebar{width:195px;padding:28px 16px}.subway-word{font-size:30px}main{margin-left:195px}.content{padding:28px 24px}.topbar{padding:0 24px}.day-row{gap:12px;padding:16px}.day-name{width:117px}.day-row select{width:133px}.slot input{width:89px}.stat{padding:17px}.table-footer{flex-wrap:wrap}}@media (width<=900px){.sidebar{width:85px;padding:25px 10px}.brand{margin-top:55px;transform:rotate(-90deg)}.subway-word{font-size:28px}.workspace,.nav-label,.nav-item,.sidebar-bottom{display:none}main{margin-left:85px}.page-heading{flex-direction:column;align-items:flex-start;gap:17px}.content{padding:25px 22px}.day-row{flex-wrap:wrap}.day-name{width:140px}.slots{flex:1;min-width:220px}.day-row .add-slot{margin-left:0}.week-toolbar{padding:17px}.section-top,footer{flex-wrap:wrap}.footer-actions{margin-left:0}.stat{padding:16px 13px}}@media (width<=600px){.app-shell{display:block}.sidebar{border-bottom:4px solid var(--yellow);width:100%;height:65px;padding:15px 18px;position:static}.brand{margin:0;transform:none}.subway-word{font-size:30px}main{margin-left:0}.topbar{height:46px;padding:0 17px;font-size:10px}.content{padding:24px 16px 15px}.eyebrow{font-size:9px}h1{font-size:31px}.page-heading{margin-bottom:22px}.page-heading p{font-size:12px}.page-heading .primary{width:100%}.week-toolbar{flex-direction:column;align-items:flex-start;gap:15px}.week-controls{justify-content:space-between;width:100%}.week-controls .secondary{margin-left:0}.stats{margin-bottom:20px}.stat{padding:13px 10px}.stat strong{font-size:26px}.stat em{font-size:11px}.stat span{font-size:10px}.stat small{font-size:9px;line-height:1.5;display:block}.section-top{padding:18px 15px}.section-top p{line-height:1.6}.table-tools{flex-direction:column;padding:0 15px 16px}.tabs{justify-content:space-between}.search{width:100%}.table-footer{padding:14px;font-size:9px;line-height:1.6}.table-footer span{flex-wrap:wrap}.empty{padding:35px 20px}.empty p{font-size:11px}.join-card{margin:15px 0;padding:23px}.join-card h2{font-size:23px}.join-card .primary{white-space:normal;width:100%}.member-top{flex-direction:column;align-items:flex-start}.member-top h2{font-size:17px}.day-row{justify-content:space-between;gap:14px;padding:18px 15px}.day-name{width:auto}.day-row select{width:145px}.slots{flex-basis:100%}.slot input{width:108px}.save-bar{flex-direction:column;align-items:stretch}.save-bar .primary{width:100%}.toast{font-size:12px;bottom:15px;left:15px;right:15px}.share-panel{gap:10px}.share-panel input{width:100%;min-width:0}footer{gap:12px;margin-top:28px;font-size:9px}.footer-actions{gap:15px;width:100%;line-height:1.7}.personal p{font-size:10px}}
