*{box-sizing:border-box;margin:0;padding:0}:root{--green:#5dbb63;--green-d:#3a8f40;--green-xl:#eaf3de;--amber:#f5a623;--amber-d:#c47d0a;--blue:#3498db;--blue-d:#1a6fa8;--blue-l:#e6f1fb;--purple:#9b59b6;--purple-d:#6c3483;--red:#e74c3c;--red-d:#922b21;--teal:#1d9e75;--teal-d:#0f6e56;--teal-l:#e1f5ee;--bg:#f5f3ee;--bg2:#ece8e0;--white:#fff;--text:#1e1a14;--text2:#6b5a42;--text3:#9e8e7a;--border:#ddd8cf;--border2:#ccc6bb;--r:10px;--rsm:7px;--rlg:14px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html,body{background:var(--bg);height:100%;color:var(--text);font-family:Nunito,sans-serif}body{overflow-x:hidden}.app-shell{background:var(--green-d);height:100vh;display:flex}.sidebar{background:var(--green-d);flex-direction:column;flex-shrink:0;align-items:center;gap:5px;width:70px;padding:14px 0 10px;display:flex}.logo{color:#ffffffe6;text-align:center;margin-bottom:4px;font-family:Fredoka One,cursive;font-size:11px;line-height:1.2}.logo span{font-size:20px;display:block}.nav-btn{cursor:pointer;border:none;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:2px;width:52px;height:48px;transition:top 80ms,box-shadow 80ms,transform .1s;display:flex;position:relative;top:0;box-shadow:0 4px #00000040}.nav-btn i{color:#fff;font-size:19px}.nav-btn span{color:#fff;letter-spacing:.3px;font-size:9px;font-weight:800}.nav-btn:active{top:3px;box-shadow:0 1px #00000040}.nav-btn.active{transform:scale(1.05);box-shadow:0 4px #00000040,0 0 0 2.5px #ffffffe6}.nb-people{background:var(--blue)}.nb-cal{background:var(--amber)}.nb-chat{background:var(--purple)}.nb-base{background:var(--green)}.nb-yard{background:var(--teal)}.nb-gear{background:#5a5a5a}.main{background:var(--bg);border-radius:16px 0 0 16px;flex-direction:column;flex:1;display:flex;overflow:hidden;box-shadow:-4px 0 20px #00000026}.topbar{background:var(--white);border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:12px;height:54px;padding:0 18px;display:flex}.tb-title{color:var(--text);align-items:center;gap:8px;font-family:Fredoka One,cursive;font-size:17px;display:flex}.tb-spacer{flex:1}.content{flex-direction:column;flex:1;gap:14px;padding:16px;display:flex;overflow-y:auto}.vb{border-radius:var(--rsm);cursor:pointer;white-space:nowrap;border:none;align-items:center;gap:5px;padding:7px 14px;font-family:Fredoka One,cursive;font-size:12px;transition:top 80ms;display:inline-flex;position:relative;top:0}.vb:active{top:2px}.vb:disabled{opacity:.6;cursor:not-allowed}.vb-green{background:var(--green);color:#fff;box-shadow:0 3px 0 var(--green-d)}.vb-blue{background:var(--blue);color:#fff;box-shadow:0 3px 0 var(--blue-d)}.vb-amber{background:var(--amber);color:#fff;box-shadow:0 3px 0 var(--amber-d)}.vb-red{background:var(--red);color:#fff;box-shadow:0 3px 0 var(--red-d)}.vb-ghost{background:var(--white);color:var(--text);border:1.5px solid var(--border);box-shadow:0 2px 0 var(--border)}.vb-danger{color:var(--red);box-shadow:none;background:#fff0f0;border:1.5px solid #fcc}.vb-sm{padding:5px 10px;font-size:11px}.vb-block{justify-content:center;width:100%}.card{background:var(--white);border-radius:var(--rlg);border:1px solid var(--border);overflow:hidden}.card-hd{color:#fff;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:10px 15px;font-family:Fredoka One,cursive;font-size:14px;display:flex}.card-hd-left{align-items:center;gap:8px;min-width:0;display:flex}.card-hd-btn{color:#fff;cursor:pointer;white-space:nowrap;background:#fff3;border:1.5px solid #ffffff80;border-radius:7px;flex-shrink:0;align-items:center;gap:5px;padding:5px 10px;font-family:Fredoka One,cursive;font-size:11px;display:inline-flex}.card-hd-btn:hover{background:#ffffff4d}.hd-blue{background:var(--blue)}.hd-green{background:var(--green)}.hd-amber{background:var(--amber)}.hd-teal{background:var(--teal)}.stats-row{grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:10px;display:grid}.stat-tile{background:var(--white);border-radius:var(--r);border:1px solid var(--border);text-align:center;padding:12px}.stat-n{color:var(--text);font-family:Fredoka One,cursive;font-size:26px;line-height:1}.stat-l{color:var(--text3);letter-spacing:.5px;margin-top:3px;font-size:10px;font-weight:800}.two-col{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (width<=700px){.two-col{grid-template-columns:1fr}}.clist{flex-direction:column;gap:5px;padding:8px 10px;display:flex}.crow{background:var(--bg);border-radius:var(--rsm);cursor:pointer;border:2px solid #0000;align-items:center;gap:9px;padding:8px 10px;transition:border-color .12s,background .1s;display:flex}.crow:hover{background:var(--bg2);border-color:var(--green)}.av{color:#fff;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-family:Fredoka One,cursive;font-size:13px;display:flex}.av-lg{border-radius:11px;width:50px;height:50px;font-size:18px}.ci{flex:1;min-width:0}.cn{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:800;overflow:hidden}.cm{color:var(--text2);font-size:11px}.badge{white-space:nowrap;border-radius:5px;padding:2px 7px;font-size:10px;font-weight:800;box-shadow:0 2px #0000001f}.empty-row{text-align:center;color:var(--text3);padding:20px;font-size:12px}.drawer-overlay{z-index:20;opacity:0;pointer-events:none;background:#00000040;transition:opacity .2s;position:fixed;inset:0}.drawer-overlay.open{opacity:1;pointer-events:all}.drawer{background:var(--white);z-index:21;flex-direction:column;width:min(480px,100vw);transition:transform .22s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(100%);box-shadow:-8px 0 30px #00000026}.drawer.open{transform:translate(0)}.drawer-hd{flex-shrink:0;padding:16px 18px 0;position:relative}.drawer-close{z-index:2;border:1.5px solid var(--border);background:var(--bg);cursor:pointer;width:30px;height:30px;color:var(--text2);border-radius:7px;justify-content:center;align-items:center;display:flex;position:absolute;top:14px;right:14px}.drawer-close:hover{background:var(--bg2)}.drawer-body{flex:1;padding:16px 18px;overflow-y:auto}.d-section{margin-bottom:16px}.d-sec-label{color:var(--text3);letter-spacing:.5px;margin-bottom:8px;font-family:Fredoka One,cursive;font-size:11px}.d-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;padding:6px 0;display:flex}.d-row:last-child{border-bottom:none}.d-label{color:var(--text2);flex-shrink:0;align-items:center;gap:6px;font-size:12px;display:flex}.d-val{color:var(--text);text-align:right;overflow-wrap:break-word;min-width:0;font-size:12px;font-weight:700}.divider-sm{background:var(--border);height:1px;margin:10px 0}.note-box{background:var(--bg);border-radius:var(--rsm);color:var(--text2);border-left:3px solid var(--amber);padding:10px 12px;font-size:12px;line-height:1.6}.skill-chip{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:20px;align-items:center;gap:4px;margin:2px 2px 2px 0;padding:3px 9px;font-size:11px;font-weight:700;display:inline-flex}.field{margin-bottom:11px}.field:last-child{margin-bottom:0}.field-lbl{color:var(--text3);align-items:center;gap:5px;margin-bottom:5px;font-size:11px;font-weight:800;display:flex}.field-in{border-radius:var(--rsm);border:1.5px solid var(--border);width:100%;color:var(--text);background:var(--bg);outline:none;padding:8px 11px;font-family:Nunito,sans-serif;font-size:13px;font-weight:700;transition:border-color .12s,background .12s}.field-in:focus{border-color:var(--green);background:var(--white)}.field-sel{border-radius:var(--rsm);border:1.5px solid var(--border);width:100%;color:var(--text);background:var(--bg);cursor:pointer;outline:none;padding:8px 11px;font-family:Nunito,sans-serif;font-size:13px;font-weight:700}.two-field{grid-template-columns:1fr 1fr;gap:10px;display:grid}@media (width<=380px){.two-field{grid-template-columns:1fr}}.skill-tag{background:var(--bg);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:20px;align-items:center;gap:4px;margin:2px 4px 2px 0;padding:3px 9px;font-size:11px;font-weight:700;transition:background .1s,border-color .1s,color .1s;display:inline-flex}.skill-tag.on{background:var(--green-xl);border-color:var(--green);color:var(--green-d)}.avail-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.avail-day{text-align:center}.avail-lbl{color:var(--text3);margin-bottom:3px;font-size:9px;font-weight:700}.avail-block{cursor:pointer;border-radius:5px;justify-content:center;align-items:center;height:26px;font-size:11px;display:flex}.av-yes{background:var(--green-xl);color:var(--green-d)}.av-no{background:var(--bg2);color:var(--text3)}.type-toggle{gap:8px;margin-bottom:12px;display:flex}.type-btn{border-radius:var(--rsm);border:2px solid var(--border);background:var(--bg);color:var(--text3);cursor:pointer;flex-direction:column;flex:1;align-items:center;gap:4px;padding:9px;font-family:Fredoka One,cursive;font-size:12px;display:flex}.type-btn.on{border-color:var(--green);background:var(--green-xl);color:var(--green-d)}.stub-view{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;display:flex}.stub-icon{border-radius:14px;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.stub-icon i{color:#fff;font-size:26px}.stub-label{color:var(--text);font-family:Fredoka One,cursive;font-size:20px}.stub-cs{background:var(--bg2);color:var(--text3);border-radius:20px;align-items:center;gap:6px;padding:5px 16px;font-family:Fredoka One,cursive;font-size:12px;display:inline-flex}.stub-sub{color:var(--text3);text-align:center;max-width:320px;font-size:12px;line-height:1.6}.toast{background:var(--green-d);color:#fff;z-index:999;pointer-events:none;text-align:center;border-radius:10px;max-width:calc(100vw - 40px);padding:10px 20px;font-family:Fredoka One,cursive;font-size:13px;transition:transform .25s cubic-bezier(.4,0,.2,1);position:fixed;bottom:20px;left:50%;transform:translate(-50%)translateY(60px);box-shadow:0 4px 16px #0003}.toast.show{transform:translate(-50%)translateY(0)}.auth-screen{background:var(--green-d);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.auth-card{background:#fff;border-radius:18px;width:100%;max-width:360px;padding:32px 28px;box-shadow:0 20px 50px #0000004d}.auth-card h1{color:var(--text);text-align:center;margin:0 0 18px;font-family:Fredoka One,cursive;font-size:20px}.auth-card form{flex-direction:column;gap:8px;display:flex}.auth-card label{color:var(--text3);font-size:11px;font-weight:800}.auth-card input{border:1.5px solid var(--border);width:100%;color:var(--text);background:var(--bg);border-radius:10px;outline:none;padding:11px 14px;font-family:Nunito,sans-serif;font-size:14px}.auth-card input:focus{border-color:var(--green)}.auth-card button[type=submit]{background:var(--green);color:#fff;cursor:pointer;width:100%;box-shadow:0 3px 0 var(--green-d);border:none;border-radius:10px;margin-top:6px;padding:12px;font-family:Fredoka One,cursive;font-size:14px}.auth-card button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.auth-card>button[type=button]{background:var(--green);color:#fff;cursor:pointer;width:100%;box-shadow:0 3px 0 var(--green-d);border:none;border-radius:10px;padding:12px;font-family:Fredoka One,cursive;font-size:14px}.auth-hint{color:var(--text2);margin:2px 0 4px;font-size:12px}.auth-error{color:var(--red);margin:0;font-size:12px}.auth-links{justify-content:space-between;margin-top:6px;display:flex}.link-button{color:var(--blue-d);cursor:pointer;background:0 0;border:none;padding:0;font-size:11px;font-weight:700}.link-button:disabled{color:var(--text3);cursor:not-allowed}.toggle{cursor:pointer;border:none;border-radius:10px;flex-shrink:0;width:36px;height:20px;transition:background .15s;position:relative}.toggle:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:left .15s;position:absolute;top:2px;box-shadow:0 1px 3px #0003}.toggle.on{background:var(--green)}.toggle.on:after{left:18px}.toggle.off{background:var(--border2)}.toggle.off:after{left:2px}.gear-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}@media (width<=700px){.gear-grid{grid-template-columns:1fr}}.gear-card{flex-direction:column;gap:6px;padding:14px 16px;display:flex}.gear-row{background:var(--bg);border-radius:var(--rsm);cursor:pointer;align-items:center;gap:9px;margin-bottom:5px;padding:9px 12px;display:flex}.gear-back{color:var(--text2);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;margin-bottom:4px;padding:0;font-family:Fredoka One,cursive;font-size:12px;display:flex}.cal-wrap{background:var(--white);border-radius:var(--rlg);border:1px solid var(--border);overflow:hidden}.cal-legend{flex-wrap:wrap;align-items:center;gap:12px;padding:8px 14px;display:flex}.cal-legend-row1{border-bottom:1px solid var(--border)}.cal-legend-row2{border-bottom:1px solid var(--border);padding-top:6px;padding-bottom:10px}.leg-item{color:var(--text2);align-items:center;gap:5px;font-size:11px;font-weight:700;display:flex}.leg-dot{border-radius:2px;flex-shrink:0;width:9px;height:9px}.tlist-seg{background:var(--bg);border-radius:7px;gap:2px;padding:2px;display:flex}.tseg-btn{cursor:pointer;border:none;border-radius:5px;padding:5px 10px;font-family:Fredoka One,cursive;font-size:11px;transition:background .1s,color .1s}.tseg-btn.on{background:var(--white);color:var(--text)}.tseg-btn:not(.on){color:var(--text3);background:0 0}.cal-nav-cluster{flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;display:flex}.cal-nav-label{color:var(--text2);text-align:center;white-space:nowrap;min-width:140px;padding:0 6px;font-family:Fredoka One,cursive;font-size:13px}@media (width<=420px){.cal-nav-label{min-width:0}}.cal-grid-scroll{overflow-x:auto}.cal-grid{grid-template-columns:44px repeat(7,minmax(64px,1fr));gap:3px;min-width:fit-content;padding:10px;display:grid}.cal-dh{text-align:center;color:var(--text3);cursor:pointer;border-radius:5px;padding:5px 3px;font-family:Fredoka One,cursive;font-size:11px}.cal-dh.today{background:var(--blue-l);color:var(--blue-d)}.cal-tl{color:var(--text3);text-align:right;padding-top:6px;padding-right:6px;font-size:10px;font-weight:700}.cal-cell{background:var(--bg);border-radius:5px;flex-direction:column;gap:2px;min-height:42px;padding:3px;display:flex}.ev{color:#fff;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;border-radius:4px;padding:3px 6px;font-size:10px;font-weight:700;transition:transform 80ms;overflow:hidden;box-shadow:0 2px #00000026}.ev:hover{transform:scale(1.04)}.ev-unassigned{border:1.5px dashed #ffffffe6!important;box-shadow:0 2px #00000040,inset 0 0 0 1px #00000026!important}.cal-month-grid{grid-template-columns:repeat(7,minmax(40px,1fr));gap:4px;min-width:fit-content;display:grid}.cal-month-hd{text-align:center;color:var(--text3);padding:4px;font-family:Fredoka One,cursive;font-size:10px}.cal-month-cell{background:var(--bg);cursor:pointer;border:1.5px solid #0000;border-radius:7px;min-height:64px;padding:6px;transition:border-color .1s;position:relative}.cal-month-cell:hover{border-color:var(--green)}.cal-month-cell.today{background:var(--blue-l);border-color:var(--blue)}.cal-day-job-row{background:var(--bg);border-radius:var(--rsm);cursor:pointer;border-left:4px solid #0000;flex-wrap:wrap;align-items:center;gap:6px 11px;margin-bottom:7px;padding:11px 14px;display:flex}.signed-in-as{background:var(--bg);border:1.5px solid var(--border);color:var(--text2);cursor:pointer;border-radius:20px;align-items:center;gap:6px;min-width:0;max-width:100%;padding:6px 12px;font-family:Nunito,sans-serif;font-size:11px;font-weight:700;display:flex}.signed-in-as:hover{background:var(--bg2)}.signed-in-as-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:var(--border2);border-radius:5px}.invoice-line{border-bottom:1px solid var(--border);justify-content:space-between;gap:10px;padding:8px 0;font-size:12px;display:flex}.invoice-line:last-child{border-bottom:none}.invoice-total-row{color:var(--text2);justify-content:space-between;padding:4px 0;font-size:12px;display:flex}.invoice-total-row.grand{color:var(--text);border-top:2px solid var(--text);margin-top:6px;padding-top:8px;font-family:Fredoka One,cursive;font-size:15px}.invoice-biz-header{border-bottom:2px solid var(--text);align-items:center;gap:12px;padding-bottom:12px;display:flex}.invoice-logo{object-fit:contain;border-radius:var(--rsm);flex-shrink:0;width:52px;height:52px}.invoice-biz-name{color:var(--text);overflow-wrap:break-word;font-family:Fredoka One,cursive;font-size:15px}.invoice-biz-tagline{color:var(--text2);overflow-wrap:break-word;margin-top:1px;font-size:11px;font-style:italic}.invoice-biz-line{color:var(--text3);overflow-wrap:break-word;margin-top:2px;font-size:11px}.print-batch{width:800px;position:absolute;top:0;left:-9999px}.invoice-page+.invoice-page{border-top:2px dashed var(--border);margin-top:40px;padding-top:40px}@media print{body *{visibility:hidden}.invoice-print-area,.invoice-print-area *{visibility:visible}.drawer{box-shadow:none!important;width:auto!important;position:static!important;transform:none!important}.invoice-print-area{width:100%;padding:20px;position:absolute;top:0;left:0}.print-batch{width:auto;left:auto}.invoice-page{page-break-after:always}.invoice-page:last-child{page-break-after:auto}.invoice-page+.invoice-page{border-top:none;margin-top:0;padding-top:0}.no-print{display:none!important}.invoice-line,.d-row,.invoice-totals,.invoice-biz-header{break-inside:avoid;page-break-inside:avoid}}
