:root{--color-warm-white: #fafaf8;--color-text: #242723;--color-jade: #16866d;--color-muted: #6c736c;--color-gray-bg: #f2f3f1;--color-gray-light: #e1e5df;--color-border: #e1e5df;--color-green-active: #16866d;--color-amber-suspended: #d4a017;--color-mint: #e6f5f1;--color-amber-bg: #fff8e1;--color-red-soft: #d63031;--color-backdrop: rgba(0, 0, 0, .4);--radius-8: 8px;--radius-12: 12px;--radius-16: 16px}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--color-text);background-color:var(--color-warm-white);min-height:100%}body{display:flex;flex-direction:column}.app-shell{display:grid;grid-template-columns:minmax(180px,210px) 1fr;min-height:100vh;overflow:hidden}.app-main{min-width:0;padding:24px;overflow-x:hidden}.side-nav{background-color:var(--color-gray-bg);border-right:1px solid var(--color-border);display:flex;flex-direction:column;padding:24px;gap:24px}.side-nav .brand{font-weight:700;font-size:1.1rem;color:var(--color-jade);margin-bottom:16px;display:block}.side-nav .nav-buttons{display:flex;flex-direction:column;gap:8px}.topbar{display:flex;align-items:center;justify-content:flex-end;gap:16px;margin-bottom:24px}.topbar .email-badge{font-size:.9rem;color:var(--color-muted)}.topbar .signout-btn{background:none;border:none;color:var(--color-text);cursor:pointer;text-decoration:underline;font-size:.9rem}.page-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:24px;flex-wrap:wrap;gap:12px}.page-header h3{font-size:32px;margin:0;line-height:1.2}.page-header .subtitle{font-size:1rem;color:var(--color-muted);margin-left:12px}.page-header .actions{display:flex;gap:12px;align-items:center}.toolbar{display:flex;align-items:center;gap:12px;margin-bottom:24px}.toolbar .search-input{flex:1;max-width:560px}.breadcrumbs{font-size:.9rem;color:var(--color-muted);margin-bottom:16px}.breadcrumbs a{color:var(--color-jade);text-decoration:none}.tabs{display:flex;border-bottom:1px solid var(--color-border);margin-bottom:24px;gap:24px}.tab-item{padding:8px 0;background:none;border:none;color:var(--color-muted);font-size:1rem;cursor:pointer;position:relative}.tab-item.active{color:var(--color-jade);font-weight:600}.tab-item.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background-color:var(--color-jade)}.table-wrap{border:1px solid var(--color-border);border-radius:var(--radius-12);overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:left;font-size:12px;font-weight:600;color:var(--color-muted);background-color:var(--color-gray-bg);padding:12px 16px;white-space:nowrap}td{padding:12px 16px;border-bottom:1px solid var(--color-border);vertical-align:middle}tr:last-child td{border-bottom:none}tr{height:52px}.identifier{font-size:12px;color:var(--color-muted);overflow-wrap:anywhere}.badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.badge.active{background-color:var(--color-mint);color:var(--color-green-active)}.badge.suspended{background-color:var(--color-amber-bg);color:var(--color-amber-suspended)}input,select,textarea,button{min-height:44px;font:inherit;border-radius:var(--radius-8);border:1px solid var(--color-border);padding:8px 12px;background-color:#fff;width:100%}button{cursor:pointer;font-weight:500}button.primary{background-color:var(--color-jade);color:#fff;border-color:var(--color-jade)}button:disabled,input:disabled,select:disabled,textarea:disabled{background-color:var(--color-gray-bg);color:var(--color-muted);cursor:not-allowed}:focus-visible{outline:2px solid var(--color-jade);outline-offset:2px}dialog{width:min(680px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;border:1px solid var(--color-border);border-radius:var(--radius-16);padding:0;box-shadow:0 4px 24px #0000001f;background-color:#fff}dialog::backdrop{background-color:var(--color-backdrop)}.modal-header{position:sticky;top:0;background-color:#fff;display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid var(--color-border)}.dialog-footer{position:sticky;bottom:0;background-color:#fff;padding:16px;border-top:1px solid var(--color-border);display:flex;justify-content:flex-end;gap:12px;z-index:1}.modal-close{width:44px;height:44px;background:none;border:none;cursor:pointer;font-size:1.2rem;color:var(--color-muted);display:flex;align-items:center;justify-content:center}.modal-close:hover{color:var(--color-text)}.field{display:flex;flex-direction:column;gap:6px;margin:16px 0}.check{display:flex;align-items:center;gap:8px}.check input[type=checkbox]{width:20px;height:20px;min-height:20px;cursor:pointer}.context{background-color:var(--color-mint);padding:12px;border-left:3px solid var(--color-jade);font-size:.95rem}.context strong{display:block;margin-bottom:4px;font-size:.9rem}.context small{font-size:.85rem;color:var(--color-muted)}.notice{background-color:var(--color-amber-bg);padding:12px;border-left:3px solid var(--color-amber-suspended);line-height:1.6;font-size:14px;color:var(--color-text)}.muted{color:var(--color-muted)}.error{color:var(--color-red-soft);border-left:3px solid var(--color-red-soft);padding-left:12px;font-size:14px;margin:16px 0}.success{background-color:var(--color-mint);padding:12px;border-left:3px solid var(--color-jade);color:var(--color-green-active);margin:16px 0}pre{display:grid;gap:6px;background-color:var(--color-gray-bg);padding:12px;border-radius:var(--radius-8);overflow-wrap:anywhere;font-size:13px;font-family:monospace}.auth-card{max-width:440px;margin:48px auto;padding:28px;border:1px solid var(--color-border);border-radius:var(--radius-16);background-color:#fff}.auth-page{padding:20px}.skeleton{display:flex;flex-direction:column;gap:8px}.skeleton-row{height:18px;background-color:var(--color-gray-bg);border-radius:4px}.pagination{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:24px}.pagination .rows-select{width:auto;min-width:80px}.pagination .count{margin-left:auto;margin-right:auto}.pagination .page-input{width:68px;text-align:center;padding:0;text-indent:0}.pagination .btn{background:none;border:1px solid var(--color-border);padding:0 12px;height:44px;cursor:pointer;font-size:.9rem}@media(max-width:767px){.app-shell{grid-template-columns:1fr}.side-nav{display:none}.app-main{padding:16px}.page-header h3{font-size:24px}.toolbar{flex-direction:column;align-items:stretch}.toolbar .search-input{max-width:none}.topbar{flex-wrap:wrap}.topbar .main-buttons{width:100%;justify-content:flex-start}.pagination{flex-wrap:wrap;justify-content:center}dialog{width:calc(100% - 24px);max-height:calc(100dvh - 24px)}}@media(max-width:480px){.auth-card{margin:16px;padding:16px}.page-header{flex-direction:column;align-items:flex-start;gap:12px}.page-header .actions{flex-direction:column;width:100%}.page-header .actions button,.page-header .actions select{width:100%}}:root{color-scheme:light dark}.app-shell{display:grid;grid-template-columns:210px 1fr;min-height:100vh}.app-main{max-width:1280px;margin:0 auto;width:100%;padding:1rem}.side-nav{display:flex;flex-direction:column;padding:1rem;gap:.5rem;border-right:1px solid var(--color-border);background:#fff}.side-nav nav{display:flex;flex-direction:column;gap:.25rem}.side-nav nav button{width:auto;text-align:left;border-radius:4px;padding:.5rem;cursor:pointer;background:transparent;border:1px solid transparent}.side-nav nav button[aria-current=page]{background:var(--color-mint);border-color:var(--color-jade);color:var(--color-jade)}.side-nav p{margin-top:auto;font-size:.85rem;color:var(--color-muted);padding:.5rem}.topbar{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--color-border);background:#fff;gap:1rem;flex-wrap:wrap}.topbar .identity-email{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.topbar .actions{display:flex;gap:.5rem;flex-wrap:wrap}.page-header h1{margin:0;font-size:1.875rem;font-weight:700}.page-header h2{font-size:1.375rem;margin:.5rem 0}button{width:auto}input,select,textarea{width:100%;min-height:44px;background:#fff}.tabs{display:flex;gap:0;border-bottom:2px solid #e5e7eb}.tabs button{flex:1;min-width:0;border-radius:0;border-bottom:2px solid transparent;margin-bottom:-2px;padding:.75rem 1rem}.tabs button[aria-selected=true]{color:var(--color-jade);border-bottom-color:var(--color-jade);font-weight:600}table{width:100%;table-layout:auto}td{text-wrap:wrap;max-width:22rem;min-width:110px;word-break:break-word}.resource-table-wrapper{overflow-x:auto}.pagination{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0}.pagination-info{flex:1;text-align:center}.pagination-input{width:64px;text-align:center}.brand span{display:block;font-size:.75rem;color:var(--color-muted);margin-top:.25rem}.auth-page{max-width:480px;margin:60px auto;padding:2rem}.dialog,.modal{color:inherit}.modal-header{position:sticky;top:0;z-index:2;background:inherit}.modal-header h2{font-size:1.25rem;margin:0}.modal-content{padding:20px}.dialog-footer{margin-top:1rem;display:flex;gap:.5rem;justify-content:flex-end}input[type=checkbox]{width:20px;height:20px}pre{white-space:pre-wrap;word-break:break-word}dl{display:grid;grid-template-columns:150px 1fr;gap:.75rem 1rem}dd{margin:0}@media(min-width:768px){.side-nav{display:flex;flex-direction:column}.app-shell{grid-template-columns:210px 1fr}}@media(max-width:767px){.app-shell{display:block}.side-nav{display:flex;flex-direction:column;flex-wrap:nowrap;overflow-x:auto;padding:.75rem 1rem;gap:.5rem;border-bottom:1px solid var(--color-border);border-right:none;background:#fff}.side-nav nav{display:flex;flex-direction:row;gap:.5rem;flex:1}.side-nav nav button{flex:1;min-width:0;width:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.side-nav p{display:none}.topbar{flex-wrap:wrap;padding:.75rem}.topbar .identity-email{flex-basis:100%;text-align:center}.tabs{flex-wrap:wrap}.tabs button{flex:1;min-width:0;font-size:13px;padding:8px}.page-header h1{font-size:1.5rem}.page-header h2{font-size:1.125rem}.pagination{flex-wrap:wrap;gap:.5rem;text-align:center}.pagination-info{flex-basis:100%}.pagination-btn,.pagination-input{flex:0 1 auto}dl{grid-template-columns:1fr;gap:.5rem}.auth-page{margin:1rem;padding:1rem}}@media(prefers-color-scheme:dark){:root{--color-warm-white: #141b18;--color-text: #edf2ef;--color-muted: #b5c1b9;--color-gray-bg: #202b24;--color-border: #3c4b42;--color-jade: #61d4ae;--color-mint: #173e31;--color-amber-bg: #3a321c;--color-red-soft: #ff9292;--color-green-active: #61d4ae;--color-amber-suspended: #f2cf7b}body,.app-shell,.side-nav,.topbar,input,select,textarea,button,dialog,.modal-header,.dialog-footer,.auth-card{background-color:#18221c!important;color:var(--color-text)!important;border-color:var(--color-border)!important}button.primary{background-color:var(--color-jade)!important;color:#10271c!important}}.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.topbar>div:first-child{min-width:0;overflow-wrap:anywhere;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.pagination-size{width:auto}.before span,.before code{display:block;overflow-wrap:anywhere;margin:8px 0}.side-nav nav button{overflow-wrap:anywhere}
