:root{font:14px/1.6 system-ui,-apple-system,"Segoe UI",sans-serif;color:#252a30;background:#f5f6f8;--muted:#68727e;--line:#dfe4ea;--accent:#1a566c}*{box-sizing:border-box}body{margin:0}header{height:68px;padding:0 28px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:white}header strong{font-size:16px}header strong span{font-weight:400;margin-left:10px;color:var(--muted)}.header-actions{display:flex;align-items:center;gap:14px}.operator,#freshness{font-size:12px;color:var(--muted)}button,input,select{font:inherit}button{cursor:pointer;border:1px solid var(--line);background:white;color:inherit;border-radius:6px;padding:7px 13px}button:hover{background:#eef3f5}button:disabled{opacity:.5;cursor:default}.primary{background:var(--accent);color:white;border-color:var(--accent)}.primary:hover{background:#124353}.layout{display:grid;grid-template-columns:200px minmax(0,1fr);min-height:calc(100vh - 68px)}nav{padding:25px 16px;border-right:1px solid var(--line);background:#fcfcfd}nav button{display:block;width:100%;text-align:left;border:0;margin-bottom:5px;padding:10px 16px;background:transparent}nav button.active{background:#e5eef2;color:var(--accent);font-weight:600}main{padding:32px 36px;max-width:1500px;width:100%}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.eyebrow{font-size:11px;letter-spacing:1.3px;color:var(--muted)}h1{font-size:25px;margin:8px 0}h2{font-size:18px}.muted,.caption{color:var(--muted)}.caption{font-size:12px;margin-top:24px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.card{background:white;border:1px solid var(--line);border-radius:9px;padding:20px}.number{font-size:32px;font-weight:600;margin:6px 0}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:9px;background:white}table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:left;padding:13px 16px;border-bottom:1px solid #edf0f3;vertical-align:top}th{font-size:12px;font-weight:500;color:var(--muted);white-space:nowrap;background:#fafbfc}tr:last-child td{border:0}.actions{display:flex;gap:7px;white-space:nowrap}.mono{font:12px/1.6 ui-monospace,monospace;word-break:break-all}.tag{display:inline-block;font-size:11px;border-radius:4px;padding:2px 7px;background:#edf2f5;color:#436075}.tag.good{background:#e8f3eb;color:#27663d}.tag.warn{background:#fff2d9;color:#8b601b}.notice{background:#e9f1f7;border:1px solid #c7d9e6;border-radius:7px;padding:12px 16px}.notice.danger{background:#fff0ed;border-color:#ecc6be;color:#934334}.empty{padding:35px 24px;text-align:center;color:var(--muted)}label{display:block;margin:14px 0;color:#414b56}input,select{display:block;width:100%;padding:9px 11px;border:1px solid #bfc9d2;border-radius:5px;background:white;margin-top:5px}input[type=checkbox]{display:inline;width:auto;margin-right:8px}.login-body{display:flex;align-items:center;justify-content:center;min-height:100vh}.login-card{max-width:410px;background:white;padding:36px;border:1px solid var(--line);border-radius:12px}.login-card button{width:100%;margin-top:12px}dialog{border:1px solid var(--line);border-radius:10px;width:min(550px,calc(100vw - 30px));padding:24px;max-height:90vh;overflow:auto}dialog::backdrop{background:rgb(15 25 35 / .4)}.dialog-heading,.dialog-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.dialog-footer{justify-content:flex-end;margin-top:24px}.danger-button{color:white;background:#a8453c;border-color:#a8453c}.detail{display:grid;grid-template-columns:180px 1fr;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}pre{white-space:pre-wrap;word-break:break-word;max-width:600px;font-size:11px}.text-danger{color:#a8453c}@media(max-width:1000px){header{padding:12px 20px;height:auto;gap:12px;flex-wrap:wrap}.layout{grid-template-columns:160px minmax(0,1fr)}main{padding:24px}.header-actions{flex-wrap:wrap}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){header{padding:15px}.header-actions{gap:8px}.operator{max-width:170px;overflow:hidden;text-overflow:ellipsis}.layout{display:block}nav{display:flex;gap:5px;padding:10px;overflow:auto;border-right:0;border-bottom:1px solid var(--line)}nav button{width:auto;white-space:nowrap;margin:0;padding:8px 11px}main{padding:22px 15px}.cards{grid-template-columns:1fr}.page-heading{align-items:flex-start}h1{font-size:23px}table,thead,tbody,tr,td{display:block}thead{display:none}tr{padding:14px;border-bottom:1px solid var(--line)}td{display:flex;gap:12px;padding:6px 0;border:0;overflow-wrap:anywhere}td:before{content:attr(data-label);min-width:78px;color:var(--muted);font-size:12px}td:last-child{margin-top:5px}.detail{grid-template-columns:1fr;gap:4px}dialog{margin:auto auto 10px}.table-wrap{overflow:hidden}}

.filters{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:16px}.filters select{width:auto;max-width:260px;min-width:130px}.card+.table-wrap{margin-top:16px}

#catalog-app>section,#catalog-job{margin:18px 0}#catalog-app .filters input{max-width:420px}#catalog-app .filters select{max-width:340px}.catalog-dialog{width:min(780px,calc(100vw - 30px))}.catalog-dialog pre{max-width:none}.catalog-dialog form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px}.catalog-dialog form>h2,.catalog-dialog form>p,.catalog-dialog form>.dialog-footer,.catalog-dialog form>label:has([name=review_confirmed]){grid-column:1/-1}@media(max-width:650px){.catalog-dialog form{grid-template-columns:1fr}}

.catalog-subnav{display:flex;gap:8px;border-bottom:1px solid var(--line);margin-top:24px;padding-bottom:12px}.catalog-subnav .active{background:#e5eef2;color:var(--accent);font-weight:600}#catalog-app section[hidden]{display:none}
