@import"https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,500;9..144,600&family=Karla:wght@400;500;700&display=swap";:root{--rose: #D4638A;--rose-dark: #C6597A;--rose-soft: #F6D9E3;--ink: #3A2C31;--ink-light: #7A6B70;--ink-faint: #B3A2A8;--line: #E9DEE1;--bg: #FAF6F7;--card: #FFFFFF;--warn-bg: #F3DCC9;--warn-ink: #B5654A;--ok-bg: #EAEEDD;--ok-ink: #767B54;--danger-bg: #F6DEDC;--danger-ink: #B5423B}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%}body{font-family:Karla,sans-serif;background:var(--bg);color:var(--ink)}h1,h2,h3,p{margin:0}button{font-family:inherit;cursor:pointer}table{border-collapse:collapse;width:100%}.icon{stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}#app{display:flex;min-height:100vh}#sidebar{width:220px;flex-shrink:0;background:var(--card);border-right:.5px solid var(--line);display:flex;flex-direction:column;padding:20px 0}#sidebar .brand{padding:0 20px 20px;border-bottom:.5px solid var(--line);margin-bottom:12px}#sidebar .brand img{height:20px;width:auto;display:block}#sidebar .brand span{display:block;font-family:Karla,sans-serif;font-size:11px;color:var(--ink-faint);font-weight:400;margin-top:4px}#sidebar button{display:flex;align-items:center;gap:10px;background:none;border:none;text-align:left;padding:10px 20px;font-size:13px;color:var(--ink-light);width:100%;border-left:3px solid transparent}#sidebar button.active{color:var(--rose-dark);background:var(--rose-soft);border-left-color:var(--rose);font-weight:500}#sidebar button .badge{margin-left:auto;background:var(--danger-bg);color:var(--danger-ink);font-size:10px;padding:1px 7px;border-radius:8px}#sidebar .bottom-item{margin-top:auto;border-top:.5px solid var(--line);padding-top:12px}#main{flex:1;padding:26px 32px;overflow-x:hidden;overflow-y:auto}.page-head{margin-bottom:20px}.page-head h1{font-family:Fraunces,serif;font-size:22px;font-weight:500}.page-head p{font-size:12.5px;color:var(--ink-light);margin-top:4px}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin-bottom:26px}.stat-card{background:var(--card);border:.5px solid var(--line);border-radius:10px;padding:16px 18px}.stat-card .num{font-family:Fraunces,serif;font-size:24px;color:var(--ink)}.stat-card .label{font-size:11.5px;color:var(--ink-light);margin-top:4px}.panel{background:var(--card);border:.5px solid var(--line);border-radius:10px;overflow:hidden;margin-bottom:20px}.panel-title{padding:14px 18px;border-bottom:.5px solid var(--line);font-size:13px;font-weight:500;font-family:Fraunces,serif}th{text-align:left;font-size:10.5px;color:var(--ink-faint);padding:10px 18px;border-bottom:.5px solid var(--line);font-weight:500}td{padding:11px 18px;font-size:12.5px;border-bottom:.5px solid var(--line);color:var(--ink)}tr:last-child td{border-bottom:none}tr.clickable{cursor:pointer}tr.clickable:hover{background:#fcf8f9}.empty-row td{color:var(--ink-light);text-align:center;padding:24px}.pill{display:inline-block;font-size:10.5px;padding:2px 9px;border-radius:9px;white-space:nowrap}.pill.ok{background:var(--ok-bg);color:var(--ok-ink)}.pill.warn{background:var(--warn-bg);color:var(--warn-ink)}.pill.danger{background:var(--danger-bg);color:var(--danger-ink)}.pill.neutral{background:var(--rose-soft);color:var(--rose-dark)}.btn{border:none;padding:8px 14px;border-radius:16px;font-size:12px;font-weight:500}.btn.solid{background:var(--rose);color:#fff6f9}.btn.outline{background:none;border:.5px solid var(--rose);color:var(--rose-dark)}.btn.ghost{background:none;border:.5px solid var(--line);color:var(--ink-light)}.btn:disabled{opacity:.5}.btn-row{display:flex;gap:8px;flex-wrap:wrap}.back-link{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--ink-light);background:none;border:none;margin-bottom:16px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.detail-card{background:var(--card);border:.5px solid var(--line);border-radius:10px;padding:16px 18px}.detail-card .sub-label{font-size:10.5px;color:var(--ink-faint);margin-bottom:6px}textarea{width:100%;border:.5px solid var(--line);border-radius:8px;padding:8px 10px;font-size:12px;color:var(--ink);resize:none;font-family:inherit}input[type=text],input[type=email],input[type=password],input[type=date],select{border:.5px solid var(--line);border-radius:8px;padding:8px 10px;font-size:12.5px;color:var(--ink);font-family:inherit}label.field{display:block;font-size:11.5px;color:var(--ink-light);margin:10px 0 4px}#topbar{display:flex;align-items:center;gap:10px;margin-bottom:20px;position:relative}.search-wrap{position:relative;flex:1;max-width:360px}.search-wrap input{width:100%;border:.5px solid var(--line);border-radius:20px;padding:9px 14px 9px 36px;font-size:12.5px;background:var(--card)}.search-wrap svg{position:absolute;left:12px;top:50%;transform:translateY(-50%)}#search-results{position:absolute;top:38px;left:0;width:360px;background:var(--card);border:.5px solid var(--line);border-radius:10px;box-shadow:0 6px 18px #3a2c3114;z-index:10;overflow:hidden}#search-results .r{padding:9px 14px;font-size:12.5px;border-bottom:.5px solid var(--line);cursor:pointer}#search-results .r:last-child{border-bottom:none}#search-results .r:hover{background:var(--bg)}#search-results .r .type{font-size:10px;color:var(--ink-faint)}.flagged-msg{border:1px solid var(--danger-ink)!important;background:var(--danger-bg)!important}.flag-tag{display:inline-flex;align-items:center;gap:4px;font-size:9.5px;color:var(--danger-ink);margin-top:3px}.login-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg)}.login-card{background:var(--card);border:.5px solid var(--line);border-radius:14px;padding:32px;width:320px}.login-card h1{font-family:Fraunces,serif;font-size:20px;margin-bottom:4px}.login-card p{font-size:12.5px;color:var(--ink-light);margin-bottom:20px}.login-card label.field{display:block}.login-card input{width:100%;margin-top:4px}.login-card .btn{width:100%;margin-top:18px;padding:10px}.login-err{color:var(--danger-ink);font-size:12px;margin-top:10px}@media (max-width: 780px){#sidebar{width:64px}#sidebar .brand,#sidebar button span.label{display:none}#sidebar button{justify-content:center;padding:12px 0}#main{padding:18px}.detail-grid{grid-template-columns:1fr}}
