:root{--bg:#ece8e0;--paper:#f9f7f2;--ink:#282721;--muted:#74766c;--green:#2d4339;--line:#d8d8cc;--orange:#c56f44;--bad:#a33d38;--mint:#dfe8d8}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.5 "Segoe UI",system-ui,sans-serif}button,input,select,textarea{font:inherit;color:inherit}button,a,input,textarea,select{outline-offset:4px}button{cursor:pointer}button:disabled{opacity:.45;cursor:wait}a{color:inherit}button,.button{border:1px solid var(--line);border-radius:10px;background:var(--paper);padding:10px 15px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}.primary{background:var(--green);color:#fff;border-color:var(--green)}.danger{color:var(--bad);border-color:#dab9b4}.small{padding:6px 11px;font-size:12px}.muted,small{color:var(--muted)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(32px,3.6vw,51px);font-weight:500;letter-spacing:-2px;line-height:1.12;margin-bottom:14px}h2{font-size:22px;font-weight:500;letter-spacing:-.5px}h3{font-size:17px;font-weight:600;margin-bottom:6px}.kicker{text-transform:uppercase;font-size:10px;letter-spacing:2px;color:var(--muted);font-weight:600;margin-bottom:15px}.brand{text-decoration:none;display:flex;gap:10px;align-items:center;font-size:15px;letter-spacing:1px}.brand b{font-weight:400}.mark{background:var(--green);color:#f0efdb;width:38px;height:38px;border-radius:13px;display:grid;place-items:center;font:italic 32px Georgia}.layout{display:grid;grid-template-columns:238px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;border-right:1px solid var(--line);padding:28px 20px;display:flex;flex-direction:column;gap:35px}.sidebar nav{display:grid;gap:6px}.nav{border:0;background:transparent;justify-content:flex-start;text-align:left;padding:13px 15px;color:#626658}.nav.active{background:var(--green);color:#fff}.nav span{width:22px;font-size:18px}.owner{margin-top:auto;overflow-wrap:anywhere;font-size:12px}.owner strong{color:var(--green);display:block;margin-bottom:6px}.owner button{margin-top:14px}.main{padding:30px 42px 60px;min-width:0;max-width:1700px}.topbar{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:21px;margin-bottom:32px;gap:15px}.topbar span{font-size:11px;letter-spacing:1.4px}.topbar a{font-size:12px;text-decoration:none}.heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:28px}.heading p{max-width:640px;color:var(--muted);margin:0}.actions{display:flex;gap:8px;flex-wrap:wrap}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin:25px 0 36px}.stat{background:var(--paper);border:1px solid var(--line);border-radius:15px;padding:20px}.stat strong{display:block;font-size:35px;line-height:1.2;font-weight:400;margin-bottom:10px}.stat span{color:var(--muted);font-size:12px}.stat:first-child{background:var(--green);color:#fff}.stat:first-child span{color:#c7d1c1}.section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-head h2{margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.service{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:21px;min-width:0}.service-top{display:flex;align-items:center;gap:10px;justify-content:space-between;margin-bottom:18px}.service-top h3{margin:0}.dot{width:7px;height:7px;border-radius:50%;background:#95988a;display:inline-block;margin-right:6px}.good .dot{background:#3b7c55}.bad .dot{background:#bc7150}.pill{font-size:10px;border:1px solid var(--line);border-radius:20px;padding:5px 8px;white-space:nowrap}.good{color:#326548;background:#edf2e7}.bad{color:#9c5739;background:#f4e5d7}.service p{font-size:12px;color:var(--muted);min-height:54px}.service-footer{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-top:16px}.service-footer a{font-size:12px}.units{font-size:11px;color:var(--muted);border-top:1px solid var(--line);padding-top:12px;overflow-wrap:anywhere}.toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:14px;margin-bottom:17px}.toolbar input[type=search]{flex:1;min-width:150px}.toolbar .count{font-size:12px;color:var(--muted);margin-right:auto}input:not([type=checkbox]),select,textarea{background:#fffdf8;border:1px solid var(--line);border-radius:8px;padding:10px 12px;max-width:100%;min-width:0}input[type=checkbox]{accent-color:var(--green);width:17px;height:17px;flex-shrink:0;cursor:pointer}textarea{resize:vertical;min-height:100px}label{font-size:12px;display:grid;gap:6px;color:#53574c}.table-wrap{border:1px solid var(--line);border-radius:14px;background:var(--paper);overflow:auto}table{border-collapse:collapse;width:100%;text-align:left}th{padding:13px 16px;font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);font-weight:500;border-bottom:1px solid var(--line)}td{padding:16px;border-bottom:1px solid var(--line);font-size:12px}tr:last-child td{border:0}.project-cell{display:flex;align-items:center;gap:14px;min-width:240px}.project-cell img{width:63px;height:44px;border-radius:6px;object-fit:cover;border:1px solid var(--line)}.project-cell strong{display:block;font-size:14px;font-weight:600}.project-cell small{font-size:11px;display:block;max-width:320px}.empty{padding:45px;text-align:center;color:var(--muted)}.banner{background:#e2e6da;border-radius:12px;padding:15px 20px;color:#4e5c46;font-size:12px;margin:18px 0}.results{padding:18px;background:var(--paper);border:1px solid var(--line);border-radius:12px;margin:18px 0}.results p{margin:7px 0}.error{color:var(--bad)}.settings{max-width:620px;background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:28px;display:grid;gap:17px}.login{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.login-art{padding:8vw 6vw;background:var(--green);color:#e8e7d8;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh;overflow:hidden;position:relative}.login-art:after{content:'a';position:absolute;font:italic 700px Georgia;right:-30px;bottom:-340px;color:#ffffff08;pointer-events:none}.login-art .brand .mark{background:#e8e7d8;color:var(--green)}.login-art h1{font-size:clamp(45px,4.7vw,78px);max-width:600px;letter-spacing:-3px}.login-art p{max-width:360px;color:#bfcbb9;font-size:15px}.login-art small{color:#bfcbb9}.login-form{padding:45px;display:flex;align-items:center;justify-content:center}.login-form form{width:100%;max-width:360px;display:grid;gap:20px}.login-form h2{font-size:30px;margin-bottom:0}.login-form p{color:var(--muted);margin:0}.login-form button{padding:14px}.loading{padding:20vh 10vw;font-size:18px;color:var(--muted)}#notice:not(:empty){position:fixed;bottom:25px;right:25px;max-width:min(460px,calc(100% - 40px));padding:15px 22px;background:var(--green);color:white;border-radius:12px;box-shadow:0 8px 30px #0002;z-index:10}dialog{border:1px solid var(--line);border-radius:20px;max-width:760px;width:calc(100% - 32px);background:var(--paper);color:var(--ink);padding:30px;max-height:90vh;overflow:auto}dialog::backdrop{background:#18281f88;backdrop-filter:blur(3px)}.dialog-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:22px}.dialog-head h2{margin:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.wide{grid-column:1/-1}.dialog-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:24px}.audit-detail{max-width:550px;overflow-wrap:anywhere;font-size:11px}.audit-detail summary{cursor:pointer}pre{white-space:pre-wrap;overflow-wrap:anywhere}.mobile-brand{display:none}@media(min-width:1600px){.service-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:1150px){.layout{grid-template-columns:200px minmax(0,1fr)}.main{padding:25px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar{padding:25px 14px}.stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:750px){.layout{display:block}.sidebar{height:auto;position:static;padding:18px;border-right:0;border-bottom:1px solid var(--line);gap:15px}.sidebar nav{display:flex;overflow:auto;gap:4px}.nav{padding:8px 10px;white-space:nowrap;font-size:12px}.nav span{display:none}.owner{display:none}.main{padding:20px 16px 40px}.topbar{margin-bottom:25px;padding-bottom:15px}.heading{display:block}.heading .actions{margin-top:18px}h1{letter-spacing:-1px}.service-grid{grid-template-columns:1fr}.service p{min-height:0}.stats{gap:9px}.stat{padding:16px}.stat strong{font-size:30px}.login{display:block}.login-art{min-height:0;padding:28px}.login-art h1{font-size:36px;letter-spacing:-1px;margin:30px 0 15px}.login-art small{display:none}.login-art p{margin:0}.login-art:after{display:none}.login-form{padding:35px 25px}.form-grid{grid-template-columns:1fr}.wide{grid-column:auto}dialog{padding:20px}.toolbar{gap:8px}.toolbar input[type=search]{flex-basis:100%}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.sidebar nav{scrollbar-width:none}.sidebar nav::-webkit-scrollbar{display:none}
.sidebar nav .nav{flex-shrink:0}
