:root{--pestos-bg: #f6f7f4;--pestos-panel: #ffffff;--pestos-ink: #1d241c;--pestos-muted: #6a7266;--pestos-accent: #2e6b34;--pestos-accent-ink: #ffffff;--pestos-border: #dde2da;--pestos-error: #a33326}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;background:var(--pestos-bg);color:var(--pestos-ink)}.pestos-login{min-height:100vh;display:grid;place-items:center;padding:1rem}.pestos-login-card{background:var(--pestos-panel);border:1px solid var(--pestos-border);border-radius:10px;padding:2rem;width:100%;max-width:22rem;display:grid;gap:.9rem}.pestos-login-card h1{margin:0;font-size:1.5rem}.pestos-login-sub{margin:0;color:var(--pestos-muted)}.pestos-login-card label{display:grid;gap:.3rem;font-size:.9rem}.pestos-login-card input{padding:.55rem .7rem;border:1px solid var(--pestos-border);border-radius:6px;font-size:1rem}.pestos-login-card button,.pestos-signout{background:var(--pestos-accent);color:var(--pestos-accent-ink);border:none;border-radius:6px;padding:.6rem 1rem;font-size:.95rem;cursor:pointer}.pestos-error{color:var(--pestos-error);margin:0;font-size:.9rem}.pestos-shell{min-height:100vh;display:flex;flex-direction:column}.pestos-header{display:flex;justify-content:space-between;align-items:center;padding:.7rem 1.2rem;background:var(--pestos-panel);border-bottom:1px solid var(--pestos-border)}.pestos-brand{font-weight:700}.pestos-appname{color:var(--pestos-muted);font-weight:400}.pestos-user{font-size:.85rem;color:var(--pestos-muted);display:flex;gap:.8rem;align-items:center}.pestos-signout{padding:.35rem .7rem;font-size:.8rem}.pestos-body{display:flex;flex:1;min-height:0}.pestos-nav{width:13.5rem;padding:.8rem .5rem;border-right:1px solid var(--pestos-border);background:var(--pestos-panel);display:flex;flex-direction:column;gap:.2rem}.pestos-nav-item{text-align:left;padding:.55rem .8rem;border:none;background:none;border-radius:6px;font-size:.95rem;color:var(--pestos-ink);cursor:pointer;display:flex;flex-direction:column}.pestos-nav-item:hover:not(.pestos-nav-pending){background:var(--pestos-bg)}.pestos-nav-active{background:var(--pestos-bg);font-weight:600}.pestos-nav-pending{color:var(--pestos-muted);cursor:default}.pestos-nav-pending small{font-size:.72rem}.pestos-main{flex:1;padding:1.4rem;overflow:auto}.pestos-main h2{margin-top:0}.pestos-table{border-collapse:collapse;width:100%;background:var(--pestos-panel)}.pestos-table th,.pestos-table td{text-align:left;padding:.5rem .7rem;border-bottom:1px solid var(--pestos-border);font-size:.9rem}.pestos-table th{color:var(--pestos-muted);font-weight:600}.pestos-note{color:var(--pestos-muted)}.pestos-pill{display:inline-block;padding:.1rem .55rem;border-radius:99px;font-size:.78rem;background:var(--pestos-bg);border:1px solid var(--pestos-border)}.pestos-pill-ok{background:#e4f0e5;border-color:#bcd8bf}.pestos-pill-warn{background:#fbeee9;border-color:#ecc9bf}.pestos-lane{margin-bottom:1.6rem}.pestos-lane h3{margin:0 0 .5rem}.pestos-lane-pill-live{background:#fbeee9;border-color:#ecc9bf;font-weight:700}.pestos-lane-pill-priority{background:#fdf3e0;border-color:#ecd9ae;font-weight:700}.pestos-lane-pill-standard{background:var(--pestos-bg);font-weight:700}.pestos-flags{display:flex;gap:.3rem;flex-wrap:wrap}.pestos-flag-btn{border:1px solid var(--pestos-border);background:var(--pestos-panel);border-radius:99px;padding:.1rem .55rem;font-size:.75rem;color:var(--pestos-muted);cursor:pointer}.pestos-flag-btn:hover{border-color:var(--pestos-accent)}.pestos-flag-on{background:#fdf3e0;border-color:#ecd9ae;color:var(--pestos-ink)}.pestos-resolve-btn{background:var(--pestos-accent);color:var(--pestos-accent-ink);border:none;border-radius:6px;padding:.4rem .9rem;font-size:.85rem;cursor:pointer}.pestos-resolve-btn:disabled{opacity:.6;cursor:default}.pestos-cal-toolbar{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;margin:.6rem 0 1rem}.pestos-cal-toolbar select,.pestos-cal-toolbar button{padding:.3rem .55rem;border:1px solid var(--pestos-border);border-radius:6px;background:var(--pestos-panel);color:var(--pestos-ink);font-size:.85rem;cursor:pointer}.pestos-cal-grid{display:grid;gap:4px;align-items:stretch}.pestos-cal-head{font-weight:600;font-size:.85rem;padding:.3rem .4rem}.pestos-cal-window{font-weight:600;font-size:.85rem;padding:.4rem;border-right:1px solid var(--pestos-border)}.pestos-cal-cell{min-height:92px;padding:.35rem;border:1px solid var(--pestos-border);border-radius:8px;background:var(--pestos-panel);display:flex;flex-direction:column;gap:4px}.pestos-cal-droppable{outline:2px dashed var(--pestos-accent);outline-offset:-2px}.pestos-cal-cap{font-size:.72rem;color:var(--pestos-muted);text-align:right}.pestos-cal-job{position:relative;display:flex;flex-direction:column;gap:1px;padding:.3rem 1.4rem .3rem .45rem;border-radius:6px;border:1px solid var(--pestos-border);background:var(--pestos-bg);font-size:.8rem}.pestos-cal-job-label{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pestos-cal-booked{border-color:var(--pestos-accent);cursor:grab}.pestos-cal-booked:active{cursor:grabbing}.pestos-cal-held{opacity:.55;border-style:dashed}.pestos-cal-in_progress{border-color:var(--pestos-accent);border-width:2px}.pestos-cal-completed{opacity:.7;text-decoration:none}.pestos-cal-x{position:absolute;top:2px;right:4px;border:0;background:transparent;color:var(--pestos-muted);font-size:.95rem;cursor:pointer;line-height:1}.pestos-cal-x:hover{color:var(--pestos-error)}.pestos-cal-side{margin-top:1.2rem}.pestos-cal-side ul{margin:.2rem 0 .8rem 1.1rem;padding:0}.pestos-link-btn{border:0;background:none;padding:0;margin:0;font:inherit;color:inherit;text-align:left;cursor:pointer;text-decoration:underline dotted}.pestos-search-input{flex:1;max-width:20rem;padding:.4rem .6rem;border:1px solid var(--pestos-border);border-radius:6px;font-size:.9rem}.pestos-row-clickable{cursor:pointer}.pestos-row-clickable:hover{background:var(--pestos-bg)}.pestos-back-link{border:0;background:none;padding:0;margin-bottom:.8rem;color:var(--pestos-accent);font-size:.85rem;cursor:pointer;text-decoration:underline}.pestos-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.pestos-job-list{margin:.2rem 0 1rem 1.1rem;padding:0;font-size:.9rem}.pestos-timeline{list-style:none;margin:.4rem 0 0;padding:0;display:grid;gap:.7rem}.pestos-timeline li{border-bottom:1px solid var(--pestos-border);padding-bottom:.6rem;font-size:.9rem}.pestos-today-section{margin-bottom:1.8rem}.pestos-today-section h4{margin:.8rem 0 .3rem;font-size:.85rem}
