
/* Additional platform components; original logo image is never modified */
.brand img{display:block!important;width:58px;height:58px;object-fit:contain;background:#e8e9eb;border-radius:8px}
.footer-logo{width:110px;height:110px;object-fit:contain;background:#e8e9eb;border-radius:10px}
.logo-showcase{width:min(420px,90%);margin:auto;background:#e8e9eb;border-radius:28px;padding:28px;box-shadow:0 24px 80px #14364d24;transform:rotate(-2deg)}
.logo-showcase img{display:block;width:100%;height:auto}
.panel{background:#fff;border:1px solid #dce5e8;border-radius:16px;padding:24px;box-shadow:0 8px 28px #0b293009;margin:14px 0}
.panel label,.stacked label,.form-grid label,.filter label{display:flex;flex-direction:column;gap:7px;font-weight:600;font-size:14px;color:#183b49}
.panel input,.panel textarea,.panel select,.filter input,.inline-form select{width:100%;border:1px solid #cbd9de;border-radius:9px;padding:12px;background:#fff;color:#173745;font:inherit}
.panel input:focus,.panel textarea:focus,.panel select:focus{outline:2px solid #7eb8bb}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.form-grid .wide{grid-column:1/-1}.stacked{display:flex;flex-direction:column;gap:16px}
.filter{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:12px}.filter .btn{white-space:nowrap}
.catalog{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:24px 0}.catalog .panel{margin:0}.book-cover{height:180px;display:flex;align-items:center;justify-content:center;font-size:56px;background:#eaf1f2;border-radius:12px;margin-bottom:18px}.book-cover img{width:100%;height:100%;object-fit:contain}
.two-forms{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:55px}.spaced{margin-top:55px}.results{margin:40px 0}.result{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;border-bottom:1px solid #dae4e8}.result h3{margin:0 0 6px}.result p{margin:0}.alert{padding:15px 20px;background:#e3f1ed;border-left:4px solid #287e73;border-radius:8px;margin:18px auto}.map{width:100%;height:280px;border:0;border-radius:14px;margin-top:20px}.narrow{max-width:520px;padding-top:55px;padding-bottom:55px}.center{text-align:center}.login-logo{width:125px;height:125px;object-fit:contain;background:#e8e9eb;border-radius:12px}
.admin-layout{display:grid;grid-template-columns:245px minmax(0,1fr);min-height:100vh;background:#f4f7f8}.admin-side{background:#153846;color:#fff;padding:25px 18px;display:flex;flex-direction:column;gap:8px}.admin-side h3{color:#fff;font-size:18px}.admin-side a{color:#e1ebee;text-decoration:none;padding:12px 14px;border-radius:8px}.admin-side a:hover,.admin-side a.selected{background:#2d6571;color:#fff}.admin-logo{width:90px;height:90px;object-fit:contain;background:#e8e9eb;border-radius:12px}.admin-main{padding:30px;min-width:0}.admin-main h1{font-size:36px}.admin-main h2{font-size:25px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.stats .panel h2{font-size:42px;margin:12px 0}.table-wrap{overflow-x:auto;background:#fff;border-radius:14px;margin:18px 0}.table-wrap table{width:100%;border-collapse:collapse;min-width:700px}.table-wrap th,.table-wrap td{padding:13px;border-bottom:1px solid #e0e9ec;text-align:left;vertical-align:top;font-size:14px}.table-wrap th{background:#e9f1f2}.table-wrap td p{margin:5px 0;max-width:420px;overflow-wrap:anywhere}.inline-form{display:inline-flex;gap:6px;align-items:center;margin:3px}.inline-form select{padding:7px;min-width:115px}.mini{background:#1c5260;border:0;color:#fff;border-radius:6px;padding:9px;cursor:pointer}.mini.danger{background:#a53b46}
@media(max-width:980px){.catalog{grid-template-columns:repeat(2,minmax(0,1fr))}.filter{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-layout{grid-template-columns:1fr}.admin-side{flex-direction:row;flex-wrap:wrap;align-items:center}.admin-side .admin-logo{width:50px;height:50px}.admin-side h3{width:100%}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.catalog,.two-forms,.form-grid,.filter{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.result{align-items:flex-start;flex-direction:column}.admin-main{padding:16px}.stats{grid-template-columns:1fr 1fr}.admin-side{gap:2px;padding:12px}.admin-side a{font-size:13px;padding:8px}.logo-showcase{padding:16px}}
