:root{--ink:#17201d;--muted:#68736e;--line:#e4e8e5;--surface:#fff;--canvas:#f5f7f5;--forest:#174f3f;--forest-dark:#103b30;--mint:#dff2e8;--gold:#c99b4a;--danger:#a83d3d;--shadow:0 12px 35px #1b372d12}*{box-sizing:border-box}html{background:var(--canvas);min-width:320px}body{color:var(--ink);background:var(--canvas);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.eyebrow{color:var(--forest);letter-spacing:.15em;text-transform:uppercase;margin:0 0 9px;font-size:11px;font-weight:800}.muted{color:var(--muted)}.brand-mark{background:#ffffff1f;border:1px solid #ffffff47;border-radius:17px;place-items:center;width:54px;height:54px;display:grid;transform:rotate(-7deg);box-shadow:inset 0 1px #fff3}.brand-mark>span{font-family:Georgia,serif;font-size:30px;font-weight:700;transform:rotate(7deg)}.brand-mark.small{color:#fff;background:var(--forest);width:38px;height:38px;box-shadow:none;border:0;border-radius:12px}.brand-mark.small>span{font-size:21px}.auth-shell{grid-template-columns:minmax(420px,.95fr) minmax(480px,1.05fr);min-height:100vh;display:grid}.auth-brand-panel{color:#fff;background:radial-gradient(circle at 82% 18%,#66ab8959,#0000 30%),linear-gradient(150deg,#0d332a 0%,#174f3f 58%,#246b56 100%);flex-direction:column;min-height:100vh;padding:64px clamp(48px,7vw,112px);display:flex;position:relative;overflow:hidden}.auth-brand-panel:after{content:"";border:1px solid #ffffff24;border-radius:50%;width:420px;height:420px;position:absolute;bottom:-220px;right:-230px;box-shadow:0 0 0 70px #ffffff06,0 0 0 140px #ffffff05}.auth-copy{z-index:1;max-width:560px;margin:auto 0;position:relative}.auth-copy .eyebrow{color:#a9d7c5}.auth-copy h1{letter-spacing:-.035em;margin:0 0 25px;font-family:Georgia,Times New Roman,serif;font-size:clamp(42px,5vw,72px);font-weight:500;line-height:1.02}.auth-copy>p:last-child{color:#ffffffb8;max-width:500px;font-size:17px;line-height:1.65}.security-note{z-index:1;align-items:flex-start;gap:14px;display:flex;position:relative}.security-note>span{color:#123d31;background:#a9d7c5;border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-weight:900;display:grid}.security-note p{color:#ffffffa8;margin:0;font-size:13px;line-height:1.55}.security-note strong{color:#fff}.auth-card-wrap{background:#fafbfa;flex-direction:column;justify-content:center;padding:60px clamp(34px,8vw,130px);display:flex}.auth-card{width:100%;max-width:470px;margin:auto}.auth-card h2{letter-spacing:-.02em;margin:0;font-family:Georgia,serif;font-size:37px;font-weight:500}.auth-card>.muted{margin:10px 0 34px}.auth-form{gap:20px;display:grid}.auth-footer{color:#929b97;margin:45px auto 0;font-size:12px}.field{color:#34413c;gap:8px;font-size:13px;font-weight:700;display:grid}.field input,.field select{width:100%;min-height:48px;color:var(--ink);background:#fff;border:1px solid #d9dfdc;border-radius:10px;outline:none;padding:0 15px;transition:border-color .18s,box-shadow .18s}.field input:focus,.field select:focus{border-color:#41806d;box-shadow:0 0 0 3px #174f3f1a}.field input::placeholder{color:#a2aaa6}.field small{color:#87908c;font-size:11px;font-weight:500;line-height:1.45}.field .field-error{color:var(--danger)}.button{cursor:pointer;border:0;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 18px;font-size:13px;font-weight:800;transition:transform .15s,background .15s,box-shadow .15s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button:disabled{cursor:wait;opacity:.62;transform:none}.button-primary{color:#fff;background:var(--forest);box-shadow:0 6px 16px #174f3f2e}.button-primary:hover{background:var(--forest-dark)}.button-secondary{color:#45524d;box-shadow:none;background:#eef1ef}.alert{border-radius:9px;padding:13px 15px;font-size:13px;line-height:1.5}.alert-error{color:#8c3030;background:#fff1f1;border:1px solid #f0cdcd}.alert-success{color:#176344;background:#eaf8f1;border:1px solid #bde1cf}.app-shell{grid-template-columns:242px 1fr;min-height:100vh;display:grid}.sidebar{color:#dde9e4;background:#123d32;flex-direction:column;height:100vh;padding:24px 18px;display:flex;position:sticky;top:0}.sidebar-brand{border-bottom:1px solid #ffffff17;align-items:center;gap:12px;padding:0 9px 28px;display:flex}.sidebar-brand>span:last-child{display:grid}.sidebar-brand strong{color:#fff;font-family:Georgia,serif;font-size:19px}.sidebar-brand small{color:#82a99a;letter-spacing:.12em;text-transform:uppercase;margin-top:2px;font-size:9px;font-weight:700}.sidebar-nav{gap:5px;margin-top:26px;display:grid}.sidebar-nav p{color:#799f91;letter-spacing:.16em;text-transform:uppercase;margin:0 12px 8px;font-size:9px;font-weight:800}.sidebar-nav a{color:#aac3ba;border-radius:8px;align-items:center;gap:12px;padding:11px 12px;font-size:13px;font-weight:650;display:flex}.sidebar-nav a:hover{color:#fff;background:#ffffff14}.sidebar-nav a span{color:#8eb6a7;text-align:center;width:18px;font-size:18px}.sidebar-bottom{border-top:1px solid #ffffff17;margin-top:auto;padding-top:18px}.admin-chip{align-items:center;gap:10px;padding:8px;display:flex}.admin-chip>span{color:#113c30;background:#b4dacb;border-radius:9px;place-items:center;width:32px;height:32px;font-size:12px;font-weight:900;display:grid}.admin-chip div{min-width:0;display:grid}.admin-chip strong{color:#fff;font-size:11px}.admin-chip small{color:#83a99a;text-overflow:ellipsis;margin-top:2px;font-size:9px;overflow:hidden}.logout-button{color:#8fb0a3;cursor:pointer;background:0 0;border:0;justify-content:space-between;width:100%;padding:10px 9px;font-size:11px;display:flex}.logout-button:hover{color:#fff}.mobile-header{display:none}.content-shell{min-width:0}.page-shell{width:min(1280px,100%);margin:0 auto;padding:48px clamp(28px,4.3vw,72px) 70px}.narrow-page{max-width:1060px}.page-header{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:33px;display:flex}.page-header h1,.detail-header h1{letter-spacing:-.025em;margin:0;font-family:Georgia,serif;font-size:clamp(31px,4vw,43px);font-weight:500}.page-header p:last-child{color:var(--muted);margin:8px 0 0;font-size:14px}.metric-grid{grid-template-columns:1.25fr repeat(3,1fr);gap:14px;margin-bottom:28px;display:grid}.metric-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;flex-direction:column;min-height:155px;padding:23px;display:flex;box-shadow:0 2px 9px #18322a06}.metric-card.featured{color:#fff;border-color:var(--forest);background:linear-gradient(145deg,#174f3f,#246c56)}.metric-card>div{align-items:center;gap:9px;display:flex}.metric-card p{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:11px;font-weight:800}.metric-card.featured p,.metric-card.featured small{color:#ffffffad}.metric-card strong{margin:auto 0 0;font-family:Georgia,serif;font-size:40px;font-weight:500;line-height:1}.metric-card small{color:#909894;margin-top:6px;font-size:10px}.metric-icon{color:#b8dbc9}.metric-dot{border-radius:50%;width:8px;height:8px}.metric-dot.green{background:#36a66e;box-shadow:0 0 0 4px #e0f4e9}.metric-dot.amber{background:#d7a340;box-shadow:0 0 0 4px #fbf0d9}.metric-dot.red{background:#c45c5c;box-shadow:0 0 0 4px #f8e2e2}.panel{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:14px;overflow:hidden}.panel-heading{border-bottom:1px solid #edf0ee;justify-content:space-between;align-items:center;padding:22px 24px;display:flex}.panel-heading h2{margin:0;font-family:Georgia,serif;font-size:20px;font-weight:500}.panel-heading p{color:#8a938f;margin:5px 0 0;font-size:11px}.panel-heading>a{color:var(--forest);font-size:11px;font-weight:800}.table-wrap{width:100%;overflow-x:auto}table{border-collapse:collapse;width:100%}th{color:#8b9490;letter-spacing:.1em;text-align:left;text-transform:uppercase;white-space:nowrap;background:#fafbfa;padding:12px 20px;font-size:9px;font-weight:800}td{color:#4b5752;white-space:nowrap;border-top:1px solid #edf0ee;padding:17px 20px;font-size:12px}td strong,td small{display:block}td strong{color:var(--ink);font-size:13px}td small{color:#a0a8a4;margin-top:4px;font-size:9px}.row-link{color:var(--forest);font-size:10px;font-weight:800}.status{border-radius:99px;align-items:center;gap:6px;width:max-content;padding:5px 9px;font-size:9px;font-weight:800;display:inline-flex}.status i{border-radius:50%;width:5px;height:5px}.status-active{color:#177047;background:#e2f5ea}.status-active i{background:#2b9d63}.status-expired{color:#9d4242;background:#fae8e8}.status-expired i{background:#c05555}.status-scheduled{color:#956b1f;background:#fbf0d9}.status-scheduled i{background:#c99332}.status-disabled{color:#68706d;background:#ecefed}.status-disabled i{background:#89918d}.empty-state{text-align:center;flex-direction:column;align-items:center;padding:55px 25px;display:flex}.empty-state>span{color:#91a69d;font-size:35px}.empty-state h3{margin:12px 0 4px;font-family:Georgia,serif;font-size:21px;font-weight:500}.empty-state p{color:var(--muted);margin:0 0 18px;font-size:12px}.toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.toolbar>p{color:#909894;font-size:10px}.search-form{background:#fafbfa;border:1px solid #dce1de;border-radius:8px;align-items:center;width:min(430px,100%);height:39px;display:flex;overflow:hidden}.search-form>span{color:#8e9893;padding-left:12px;font-size:20px}.search-form input{background:0 0;border:0;outline:none;flex:1;min-width:0;padding:0 10px;font-size:11px}.search-form button{height:100%;color:var(--forest);cursor:pointer;background:#fff;border:0;border-left:1px solid #e0e4e2;padding:0 13px;font-size:10px;font-weight:800}.breadcrumb{color:#909894;gap:9px;margin-bottom:25px;font-size:11px;display:flex}.breadcrumb strong{color:#4a5752}.form-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:14px;overflow:hidden}.form-card>.alert{margin:22px 26px 0}.form-section{border-bottom:1px solid var(--line);gap:20px;padding:28px;display:grid}.section-heading{gap:13px;margin-bottom:2px;display:flex}.section-heading>span{width:28px;height:28px;color:var(--forest);background:var(--mint);border-radius:8px;place-items:center;font-size:9px;font-weight:900;display:grid}.section-heading h2{margin:0;font-family:Georgia,serif;font-size:20px;font-weight:500}.section-heading p{color:#8a938f;margin:4px 0 0;font-size:11px}.form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-actions{background:#fafbfa;justify-content:flex-end;gap:10px;padding:20px 28px;display:flex}.detail-header{align-items:center;gap:17px;margin-bottom:28px;display:flex}.tenant-avatar{color:#fff;background:var(--forest);border-radius:16px;place-items:center;width:58px;height:58px;font-family:Georgia,serif;font-size:27px;display:grid}.title-with-status{align-items:center;gap:13px;display:flex}.detail-header p{color:#929b97;margin:6px 0 0;font-size:10px}.detail-grid{grid-template-columns:.9fr 1.1fr;gap:18px;display:grid}.detail-card dl{margin:0;padding:5px 24px 20px}.detail-card dl>div{border-bottom:1px solid #edf0ee;justify-content:space-between;gap:20px;padding:15px 0;display:flex}.detail-card dl>div:last-child{border-bottom:0}.detail-card dt{color:#8a938f;font-size:10px}.detail-card dd{color:var(--ink);text-align:right;margin:0;font-size:11px;font-weight:750}.compact-form{box-shadow:none;border:0;border-radius:0;gap:16px;padding:22px 24px 24px;display:grid}.compact-form .alert{margin:0}.form-hint{color:#84908b;margin:0;font-size:10px}.scope-note{background:#f1f7f4;border:1px solid #dce7e2;border-radius:10px;align-items:flex-start;gap:12px;margin-top:18px;padding:15px 18px;display:flex}.scope-note>span{color:#fff;background:var(--forest);border-radius:50%;place-items:center;width:22px;height:22px;font-family:Georgia,serif;font-size:12px;display:grid}.scope-note p{color:#63716b;margin:0;font-size:10px;line-height:1.55}.scope-note strong{color:#30453d}.standalone-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:30px;display:flex}.standalone-state>span{color:#a4ada9;letter-spacing:.2em;font-size:12px;font-weight:900}.standalone-state h1{margin:13px 0 6px;font-family:Georgia,serif;font-weight:500}.standalone-state p{color:var(--muted);margin:0 0 20px}.skeleton{background:linear-gradient(90deg,#e9eeeb 25%,#f6f8f7 50%,#e9eeeb 75%) 0 0/200% 100%;border-radius:12px;animation:1.4s infinite shimmer}.skeleton-title{width:310px;height:70px;margin-bottom:33px}.skeleton-card{height:155px}.skeleton-panel{height:360px}@keyframes shimmer{to{background-position:-200% 0}}@media (max-width:980px){.auth-shell{grid-template-columns:1fr}.auth-brand-panel{display:none}.auth-card-wrap{min-height:100vh}.app-shell{grid-template-columns:82px 1fr}.sidebar{padding-inline:12px}.sidebar-brand{justify-content:center;padding-inline:0}.sidebar-brand>span:last-child,.sidebar-nav p,.sidebar-nav a:not(:hover){font-size:0}.sidebar-nav a{justify-content:center}.sidebar-nav a span{font-size:18px}.admin-chip div,.logout-button{display:none}.admin-chip{justify-content:center}.metric-grid{grid-template-columns:1fr 1fr}.detail-grid{grid-template-columns:1fr}}@media (max-width:680px){.app-shell{display:block}.sidebar{display:none}.mobile-header{color:#fff;background:#123d32;align-items:center;gap:10px;height:62px;padding:0 19px;display:flex}.mobile-header strong{font-family:Georgia,serif;font-size:17px}.page-shell{padding:30px 18px 55px}.page-header{flex-direction:column;align-items:flex-start}.page-header .button{width:100%}.metric-grid{grid-template-columns:1fr 1fr;gap:9px}.metric-card{min-height:135px;padding:17px}.metric-card strong{font-size:34px}.panel-heading{padding:19px}.toolbar{flex-direction:column;align-items:flex-start}.toolbar>p{margin-bottom:0}.form-section{padding:22px 19px}.form-grid{grid-template-columns:1fr}.form-actions{padding:18px}.form-actions .button{flex:1}.title-with-status{flex-direction:column;align-items:flex-start;gap:7px}.detail-header h1{font-size:29px}.tenant-avatar{width:49px;height:49px}}@media (max-width:430px){.metric-grid{grid-template-columns:1fr}}
