:root{font-family:"Segoe UI",Inter,system-ui,-apple-system,sans-serif;font-size:14px;color:#1d302c;background:#f5f7f8;font-synthesis:none;--green:#107a58;--mint:#89dfba;--muted:#75827e;--border:#e3e9e7;--nav:#122a23;--radius:12px}
.action-menu[open]>div{position:fixed!important;right:auto!important;top:auto;z-index:40}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0;border-radius:8px;padding:10px 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:600;background:var(--green);color:white;transition:background .15s,box-shadow .15s}button:hover{background:#0a6346}button:disabled{opacity:.45;cursor:default}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #62c8a4;outline-offset:3px}svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}a{color:inherit;text-decoration:none}.secondary{background:white;border:1px solid #d5dfdb;color:#314a41}.secondary:hover{background:#f1f6f3}.text-button{padding:4px 0;background:none;color:var(--green);font-size:12px;white-space:nowrap}.text-button:hover{background:none;color:#054d35;text-decoration:underline}.icon-button{width:34px;height:34px;padding:7px;background:transparent;color:#71837a;border-radius:7px;font-size:22px;font-weight:400}.icon-button:hover{background:#edf3ef;color:#244d3b}input,select,textarea{border:1px solid #dce4e0;border-radius:7px;background:white;color:#243e32;padding:10px 12px;outline:none;min-height:40px}input:focus,select:focus,textarea:focus{border-color:#55aa88;box-shadow:0 0 0 3px #cceadf80}input:read-only{background:#f5f8f6;color:#718078}input[type=checkbox]{min-height:auto;width:17px;height:17px;accent-color:var(--green);margin:0}input[type=search]::-webkit-search-cancel-button{cursor:pointer}select{cursor:pointer;padding-right:25px}.muted{color:var(--muted);line-height:1.65}h1,h2,h3,p{margin-top:0}h1{font-size:29px;line-height:1.25;letter-spacing:-.8px;font-weight:650;margin-bottom:10px}h2{font-size:16px;font-weight:650;letter-spacing:-.2px;margin-bottom:0}h3{font-size:16px;font-weight:600}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.7px;color:#82948a;margin:0 0 10px}
#sidebar{position:fixed;inset:0 auto 0 0;width:230px;background:var(--nav);color:#bdd0c6;padding:30px 18px 18px;display:flex;flex-direction:column;z-index:30}.brand{display:flex;align-items:center;gap:10px;padding:0 13px;color:#f0faf5;font-size:23px;font-weight:600;letter-spacing:-.7px}.brand small{display:block;color:#8fa79a;font-size:10px;font-weight:500;letter-spacing:2.1px;margin-top:1px}.nav-label{margin:44px 16px 13px;font-size:9px;letter-spacing:1.4px;color:#6f8a7c}#tabs{display:flex;flex-direction:column;gap:5px}#tabs button{justify-content:flex-start;background:none;color:#9fb9ab;font-size:13px;font-weight:500;min-height:45px;padding:12px 16px;gap:13px}#tabs button:hover{background:#1d382d;color:white}#tabs button.selected{background:#214c39;color:#bcf0d5}#tabs button.selected svg{color:#80d7aa}.sidebar-note{margin:auto 10px 23px;padding-top:45px;display:flex;align-items:flex-start;gap:9px;font-size:11px;line-height:1.6;color:#729585}.small-shield{border:1px solid #3c6350;color:#80b89c;padding:0 5px;border-radius:5px}.sidebar-note p{margin:0}.profile{border-top:1px solid #294435;padding:18px 4px 0;display:flex;gap:10px;align-items:center}.avatar{width:34px;height:34px;background:#dceddf;color:#35734f;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;font-size:12px;font-weight:650;flex-shrink:0}.profile .avatar{background:#2d4b39;color:#c4e4cc}.profile>div{flex:1;min-width:0}.profile strong{display:block;font-size:12px;font-weight:500;color:#e2f0e7;overflow:hidden;text-overflow:ellipsis}.profile div>span{display:block;font-size:10px;color:#789d89;margin-top:4px}.profile .icon-button{color:#8db39d}.profile .icon-button:hover{background:#284735;color:#d5f1df}.main-shell{min-height:100vh;display:flex;flex-direction:column}.is-signed-in .main-shell{margin-left:230px}.topbar{height:73px;background:#ffffffdd;border-bottom:1px solid var(--border);padding:0 40px;display:flex;align-items:center;justify-content:space-between;gap:15px}.header-left,.header-right{display:flex;align-items:center;gap:14px}.header-right>span{font-size:11px;color:#93a198}.header-right select{font-size:12px;min-height:34px;padding:6px 25px 6px 11px;border-color:#e2e9e5}.login-brand{display:flex;align-items:center;gap:9px;font-size:20px;font-weight:600;color:#255342}.login-brand span{font-size:12px;color:#8b9b92;font-weight:400;margin-left:2px}.is-signed-in .login-brand{display:none}#breadcrumb{font-size:13px;color:#6b7e73}#menu-toggle{display:none}main{flex:1;width:100%;max-width:1540px;margin:0 auto;padding:36px 40px 48px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:28px}.page-heading p.muted{font-size:13px;margin:0}#add{font-size:12px;min-height:40px;padding:11px 17px;white-space:nowrap;box-shadow:0 3px 8px #0b4d2e12}.panel{background:#fff;border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 2px 4px #17362b03;overflow:hidden}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:24px}.metrics article{background:white;border:1px solid var(--border);border-radius:var(--radius);padding:20px 22px;min-height:145px}.metrics article>div{display:flex;justify-content:space-between;align-items:center;gap:8px}.metrics article>div span{font-size:12px;color:#677d70}.metrics svg{width:32px;height:32px;padding:7px;background:#eff7f2;border-radius:8px;color:#5d9479}.metrics article:nth-child(2) svg{background:#fff8e7;color:#b0924e}.metrics article:nth-child(3) svg{background:#eef5fa;color:#6d95ae}.metrics strong{display:block;margin-top:8px;font-size:33px;font-weight:600;letter-spacing:-1px;line-height:1.2}.metrics small{display:block;font-size:10px;color:#97a49c;line-height:1.5;margin-top:10px}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.panel-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;padding:23px 25px 15px}.panel-heading p{font-size:11px;color:#95a098;margin:8px 0 0;line-height:1.5}.access-total{padding:7px 25px 0;display:flex;gap:12px;align-items:baseline}.access-total strong{font-size:37px;font-weight:600;letter-spacing:-1.2px}.access-total>span{color:#95a298;font-size:11px}#access-bar{height:11px;border-radius:5px;background:#f0f4f1;margin:21px 25px 19px;display:flex;overflow:hidden}#access-bar>span{min-width:0;height:100%}.segment-active{background:#3da67a}.segment-expiring{background:#e4b65e}.segment-expired{background:#c47d7d}.segment-disabled{background:#c6d2cb}.segment-scheduled{background:#7da7c5}#access-legend{padding:0 25px 24px;display:grid;grid-template-columns:1fr 1fr;gap:14px 20px}.legend-item{display:flex;gap:8px;align-items:center;font-size:11px;color:#7d8b82}.legend-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.legend-item strong{margin-left:auto;font-weight:600;color:#485e50}.compact-list{padding:0 25px 13px}.compact-row{display:flex;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid #edf1ee}.compact-row:last-child{border-bottom:0}.compact-row .row-text{flex:1;min-width:0}.compact-row strong{display:block;font-size:12px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compact-row small{display:block;font-size:10px;color:#94a096;margin-top:5px}.compact-row .avatar{width:32px;height:32px;font-size:11px;border-radius:50%;background:#f0f5f2;color:#7d9b87}.compact-row .text-button{font-size:11px}.compact-empty{padding:35px 25px 40px;text-align:center;color:#9ca89f;font-size:12px;line-height:1.7}.compact-empty strong{display:block;font-size:12px;color:#718679;margin-bottom:8px}.group-availability{font-size:10px;white-space:nowrap;color:#6f9d82}.group-availability.off{color:#a0aaa4}
#toolbar{padding:20px 23px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid #edf1ee}.search-field{position:relative;flex:1;max-width:340px;margin:0}.search-field input{width:100%;font-size:12px;padding-left:36px;background:#fbfcfb;border-color:#e5ebe7}.search-field svg{position:absolute;left:12px;top:12px;width:16px;height:16px;color:#8d9e93}.filters{display:flex;gap:9px}.filters select{font-size:11px;min-width:140px;border-color:#e1e8e3}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;min-width:820px;text-align:left;font-size:12px}th{background:#fafcfb;color:#8d9c92;font-size:10px;font-weight:600;padding:13px 24px;white-space:nowrap}td{padding:17px 24px;border-bottom:1px solid #edf1ee;color:#728378;vertical-align:middle}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fcfefd}td:first-child{min-width:200px;max-width:300px;color:#324e3d;font-weight:550;overflow-wrap:anywhere}td small{display:block;font-size:10px;color:#9aaa9f;margin-top:5px;font-weight:400}td .text-button{font-size:11px;font-weight:500}.cell-actions{white-space:nowrap;display:flex;align-items:center;gap:12px}.badge{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;padding:4px 8px;background:#edf8f1;color:#3e9461;border:1px solid #e0efe5;font-size:10px;font-weight:500;border-radius:5px}.badge::before{content:"";width:4px;height:4px;background:currentColor;border-radius:50%}.badge.warning{background:#fff8e9;border-color:#f5ead1;color:#b39046}.badge.neutral{background:#f1f4f2;border-color:#e6ebe7;color:#8c9d91}.badge.danger{background:#fcf0f0;border-color:#f3e1e1;color:#b87979}.action-menu{position:relative}.action-menu summary{list-style:none;cursor:pointer;padding:0 5px;color:#91a297;font-size:20px;font-weight:400;line-height:1.1}.action-menu summary::-webkit-details-marker{display:none}.action-menu[open]>div{position:absolute;right:0;top:27px;z-index:12;background:white;border:1px solid var(--border);border-radius:8px;box-shadow:0 6px 25px #21463418;padding:6px;min-width:150px}.action-menu button{width:100%;padding:9px 12px;background:none;color:#567363;justify-content:flex-start;font-size:11px;font-weight:500}.action-menu button:hover{background:#f0f7f2}.list-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 23px;border-top:1px solid #edf1ee;color:#93a299;font-size:10px}.pagination{display:flex;align-items:center;gap:7px}.pagination label{display:flex;align-items:center;gap:9px;margin:0;font-size:10px}.pagination select{font-size:11px;min-height:29px;padding:4px 22px 4px 8px;margin-right:6px}.pagination .icon-button{width:28px;height:28px;padding:6px;border:1px solid #e5ece7}.pagination .icon-button svg{width:15px;height:15px}#empty{text-align:center;padding:55px 24px}.empty-icon{background:#f1f7f3;color:#88a08e;border-radius:14px;padding:15px;display:inline-flex;margin-bottom:17px}.empty-icon svg{width:27px;height:27px}#empty h3{margin:0 0 10px}#empty p{color:#99a69d;font-size:12px;margin:0 0 20px}#empty button{font-size:12px}
body>.main-shell>footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 40px 24px;color:#a1ada5;font-size:10px}#login-panel{display:grid;grid-template-columns:1fr 1fr;max-width:1000px;margin:65px auto 35px;border:1px solid #dfe9e2;border-radius:18px;overflow:hidden;min-height:530px;box-shadow:0 12px 45px #1f482708}.login-story{padding:55px 48px;background:linear-gradient(155deg,#173b2d,#10261f);color:#e1f0e7;display:flex;flex-direction:column;justify-content:center}.story-mark{padding:15px;background:#2b4f3d;border-radius:16px;width:75px;display:inline-flex;justify-content:center;margin-bottom:30px}.login-story h1{font-size:35px;letter-spacing:-1px;font-weight:550;line-height:1.25;margin-bottom:18px}.login-story p{font-size:13px;line-height:1.8;color:#91b49f;max-width:280px}.story-points{display:flex;flex-wrap:wrap;gap:12px 16px;font-size:10px;color:#7ba48d;margin-top:28px}.story-points span::before{content:"✓";margin-right:6px;color:#9ad0ae}.login-form-wrap{padding:63px 48px 34px;background:white;display:flex;flex-direction:column;justify-content:center}.login-form-wrap h2{font-size:26px;margin-bottom:11px;letter-spacing:-.8px}.login-form-wrap .muted{font-size:12px;margin-bottom:27px}.login-form-wrap label{display:block;margin:0 0 19px}.login-form-wrap label>span{display:block;font-size:11px;font-weight:600;color:#6e8776;margin:0 0 8px}.login-form-wrap input{width:100%;background:#fcfefd}.login-form-wrap button[type=submit]{width:100%;font-size:12px;min-height:42px;margin-top:5px}.login-footer{color:#a7b4ab;font-size:9px;margin:30px 0 0;text-align:center}dialog{border:1px solid #dce7df;border-radius:15px;background:white;color:inherit;padding:0;width:min(580px,calc(100vw - 32px));max-height:88vh;overflow:auto;box-shadow:0 25px 95px #16392335}dialog::backdrop{background:#15302270;backdrop-filter:blur(3px)}.dialog-heading{padding:26px 28px 22px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #edf2ee}.dialog-heading h2{font-size:22px;font-weight:600;letter-spacing:-.6px}.dialog-heading .eyebrow{font-size:8px;margin-bottom:8px}#editor-fields{padding:25px 28px 12px}#editor-fields label{display:block;margin:0 0 19px}#editor-fields label>span{display:block;color:#6b8573;font-size:11px;font-weight:550;margin-bottom:8px}#editor-fields input:not([type=checkbox]),#editor-fields select,#editor-fields textarea{width:100%;font-size:12px}#editor-fields label.check-field{display:flex;align-items:center;gap:10px;margin:5px 0 18px;padding:13px 14px;background:#f5faf6;border-radius:8px}#editor-fields label.check-field>span{margin:0;order:1}#editor-fields .muted{font-size:11px;margin:0 0 17px}#editor-fields details{border-top:1px solid #e6ede8;padding:18px 0 0;margin:12px 0 20px}#editor-fields summary{cursor:pointer;color:#678a73;font-size:12px;font-weight:600;margin:0 0 18px}#editor-fields details[open]{margin-bottom:0}#editor-fields textarea{min-height:100px;font-family:ui-monospace,monospace;font-size:10px}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}.dialog-actions{padding:20px 28px;background:#fafcfb;border-top:1px solid #edf2ee;display:flex;justify-content:flex-end;gap:10px;margin:0}.dialog-actions button{font-size:12px}#token-dialog,#confirm-dialog{padding:29px;width:min(450px,calc(100vw - 32px))}#token-dialog h2,#confirm-dialog h2{font-size:22px;font-weight:600;margin:17px 0 12px}#token-dialog p,#confirm-dialog p{font-size:12px;line-height:1.7}#token-owner{color:#86a18d;margin-bottom:7px;font-size:11px!important}.dialog-symbol{display:inline-flex;align-items:center;justify-content:center;background:#eaf7ef;color:#4c9a67;border-radius:12px;width:46px;height:46px;font-size:24px}.dialog-symbol svg{width:23px;height:23px}.dialog-symbol.caution{background:#fff5e3;color:#bc9549}#token-value{width:100%;font-family:ui-monospace,monospace;font-size:11px;min-height:89px;resize:none;line-height:1.8;color:#456c52;background:#f7fbf8;padding:13px;margin:5px 0 21px}#token-dialog .dialog-actions,#confirm-dialog .dialog-actions{padding:0;background:none;border:0;flex-wrap:wrap}
#toast{position:fixed;left:calc(50% + 115px);bottom:28px;transform:translateX(-50%);max-width:min(560px,calc(100vw - 32px));display:flex;align-items:center;gap:11px;background:#fff;border:1px solid #d8e8de;border-radius:11px;box-shadow:0 6px 30px #284d2a1c;padding:10px 13px 10px 16px;font-size:12px;color:#577561;z-index:80}.toast-mark{background:#e9f8ee;color:#4e9a6a;border-radius:50%;padding:3px 6px;font-size:10px}#toast.error .toast-mark{background:#ffefee;color:#be6a65}#toast.error{border-color:#f0d9d5;color:#a86c64}#toast .icon-button{width:24px;height:24px;font-size:18px;color:#a5b2aa;padding:0}body:not(.is-signed-in) #toast{left:50%}#error-banner{border:1px solid #f1dfbb;background:#fff9eb;color:#9f7b40;padding:12px 16px;border-radius:9px;font-size:12px;margin-bottom:20px;display:flex;align-items:center;justify-content:space-between;gap:12px}#loading{display:flex;gap:12px;align-items:center;color:#8ca394;font-size:12px;padding:30px 5px}.spinner{width:16px;height:16px;border:2px solid #d6e8dc;border-top-color:#5d9e73;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}[hidden]{display:none!important}
@media(min-width:1600px){main{padding-top:42px}}@media(max-width:1200px){.topbar{padding:0 28px}main{padding:30px 28px}.metrics{gap:12px}.metrics article{padding:18px}.dashboard-grid{gap:18px}.panel-heading{padding:21px 20px 15px}.panel-heading h2{font-size:14px}.panel-heading p{font-size:10px}}@media(max-width:1050px){#sidebar{width:205px;padding-left:12px;padding-right:12px}.is-signed-in .main-shell{margin-left:205px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}#toast{left:calc(50% + 102.5px)}.dashboard-grid{grid-template-columns:1fr}.login-story{padding:45px 35px}.login-form-wrap{padding:45px 35px}.filters select{min-width:115px}.search-field{min-width:170px}}@media(max-width:800px){#sidebar{transform:translateX(-100%);width:230px;transition:transform .15s}.is-signed-in .main-shell{margin-left:0}.show-nav #sidebar{transform:translateX(0)}.show-nav #nav-scrim{display:block!important;position:fixed;inset:0;border:0;border-radius:0;background:#18332880;z-index:29}#menu-toggle{display:flex!important}.is-signed-in .topbar{height:62px}.topbar{padding:0 22px}.header-right>span{display:none}#toast{left:50%}.is-signed-in .header-left{gap:8px}main{padding:28px 22px}.page-heading h1{font-size:26px}#login-panel{margin:30px auto;grid-template-columns:1fr;max-width:480px}.login-story{padding:30px 35px}.login-story h1{font-size:28px;margin-bottom:12px}.story-mark,.story-points{display:none}.login-story p{max-width:none;margin-bottom:0}.login-form-wrap{padding:35px}.filters{gap:6px}.metrics article{min-height:135px}body>.main-shell>footer{padding:16px 22px}}
@media(max-width:520px){.topbar{padding:0 16px}.header-right{gap:6px}.header-right select{max-width:130px}.page-heading{align-items:flex-start;gap:12px;margin-bottom:22px}.page-heading h1{font-size:25px}.page-heading p.muted{font-size:11px;max-width:230px}.page-heading .eyebrow{font-size:8px}#add{padding:10px 12px;font-size:11px}#add svg{display:none}main{padding:25px 16px 35px}.metrics{gap:10px}.metrics article{padding:15px}.metrics article>div span{font-size:11px}.metrics strong{font-size:29px}.metrics svg{width:26px;height:26px;padding:6px}.metrics small{font-size:9px}.dashboard-grid{gap:16px}.panel-heading{padding:19px 17px 12px}.panel-heading p{max-width:190px}.compact-list{padding:0 17px 9px}.access-total{padding-left:17px}.access-total strong{font-size:32px}#access-bar{margin-left:17px;margin-right:17px}#access-legend{padding-left:17px;padding-right:17px;font-size:10px;gap:13px 16px}#toolbar{align-items:stretch;flex-direction:column;padding:17px}.search-field{max-width:none}.filters select{flex:1;min-width:0;width:50%}.filters{width:100%}.list-footer{padding:15px 17px}.pagination label>span{display:none}.pagination{gap:5px}th,td{padding:15px 18px}.login-story{padding:30px 27px}.login-form-wrap{padding:32px 27px}#login-panel{margin:8px auto;min-height:auto}.login-brand{font-size:18px}.dialog-heading{padding:24px 22px 20px}#editor-fields{padding:22px 22px 12px}.dialog-actions{padding:18px 22px}.field-pair{grid-template-columns:1fr;gap:0}#toast{font-size:11px;bottom:20px}body>.main-shell>footer{padding:16px;font-size:9px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

/* Keep operational text readable at normal desktop scale. */
:root{--muted:#5e7068}.page-heading p.muted{font-size:14px}.metrics article>div span{font-size:13px;color:#567262}.metrics small{font-size:11px;color:#61766a}.panel-heading p{font-size:12px;color:#61766a}.legend-item{font-size:12px;color:#5f7667}.compact-row strong{font-size:13px}.compact-row small{font-size:11px;color:#63796b}.group-availability{font-size:11px;color:#51765d}.group-availability.off{color:#738578}th{font-size:11px;color:#607467}td{font-size:13px;color:#627567}.badge{font-size:11px}.list-footer{color:#657b6c;font-size:11px}.search-field input,.filters select{font-size:13px}.header-right>span{color:#657e6e}.eyebrow{color:#657d6c}#editor-fields label>span{font-size:12px;color:#526e5b}#editor-fields .muted{font-size:12px}#editor-fields input:not([type=checkbox]),#editor-fields select,#editor-fields textarea{font-size:13px}.compact-empty{font-size:13px;color:#637b6a}.compact-empty strong{font-size:14px;color:#4f6e5a}
