[hidden]{display:none!important}
:root{--ink:#21332d;--muted:#66736c;--green:#1f4d41;--green-dark:#173c33;--light:#f7f8f3;--line:#dce3d9;--accent:#eef3e5;--white:#fff;--error:#9c302b;--radius:18px}
*{box-sizing:border-box}html{font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--light)}body{margin:0;min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}input,select,textarea{border:1px solid #cdd8cd;border-radius:11px;background:#fff;color:var(--ink);padding:12px 14px;min-height:46px;width:100%;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px #c9dccb}textarea{resize:vertical}input[type=file]{padding:11px;min-height:52px}h1,h2,h3,p{margin-top:0}h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(2rem,4vw,3.2rem);line-height:1.12;letter-spacing:-.025em;margin-bottom:14px}h2{font-family:Georgia,'Times New Roman',serif;font-size:1.55rem;letter-spacing:-.015em;margin-bottom:7px}h3{font-size:1.08rem;margin-bottom:7px;line-height:1.35}.shell{width:min(1100px,calc(100% - 40px));margin-inline:auto}.site-header{background:var(--white);border-bottom:1px solid var(--line)}.header-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:12px;font-size:1.04rem;line-height:1.1;white-space:nowrap}.brand strong{color:var(--green)}.brand small{display:block;color:var(--muted);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;margin-top:5px}.brand-mark{background:var(--green);color:#fff;border-radius:12px;width:42px;height:42px;display:grid;place-items:center;font-size:1.5rem}.header-link{font-size:.9rem;color:var(--green);font-weight:700}.header-link:hover,.text-button:hover{text-decoration:underline}.catalog-main{padding:46px 0 80px;min-height:calc(100vh - 145px)}.intro{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:2px 0 28px}.intro p:last-child{font-size:1.02rem;color:var(--muted);margin-bottom:0}.intro-icon{font-size:3.5rem;background:var(--accent);width:115px;height:115px;border-radius:30px;display:grid;place-items:center;transform:rotate(-6deg)}.eyebrow{color:#647d47;letter-spacing:.15em;text-transform:uppercase;font-size:.72rem;font-weight:800;margin-bottom:10px}.search-panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:23px;box-shadow:0 10px 30px rgba(34,55,41,.045)}.field-label{display:block;font-size:.82rem;font-weight:700;margin-bottom:9px}.search-row{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:12px}.search-wrap{position:relative}.search-wrap span{position:absolute;left:15px;top:5px;font-size:2rem;color:#6a7c6b;line-height:1}.search-wrap input{padding-left:47px}.results-head{display:flex;align-items:baseline;justify-content:space-between;margin:35px 0 16px;gap:12px}.results-head p,.muted{color:var(--muted);font-size:.9rem;margin:0}.book-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.book-card{border:1px solid var(--line);background:#fff;border-radius:var(--radius);padding:22px;display:flex;flex-direction:column;min-height:234px;box-shadow:0 3px 13px rgba(34,55,41,.025)}.book-card .card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:20px}.category{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:#607b60;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status{font-size:.75rem;font-weight:700;border-radius:999px;padding:6px 9px;white-space:nowrap;background:#e9f4e6;color:#286538}.status.out{background:#f9ece6;color:#a2482e}.book-card h3{font-family:Georgia,'Times New Roman',serif;font-size:1.26rem;margin-bottom:8px}.author{color:var(--muted);font-size:.9rem;margin-bottom:16px}.book-card dl{border-top:1px solid var(--line);margin:auto 0 0;padding-top:16px;display:grid;grid-template-columns:1fr 1fr;gap:7px 14px}.book-card dl div{min-width:0}.book-card dt{font-size:.67rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:#7a877e;margin-bottom:4px}.book-card dd{margin:0;font-size:.87rem;font-weight:600;overflow-wrap:anywhere}.button{background:var(--green);color:#fff;border:1px solid var(--green);border-radius:10px;padding:11px 17px;font-weight:700;min-height:44px}.button:hover{background:var(--green-dark)}.button.secondary{background:#fff;color:var(--green)}.button.secondary:hover{background:var(--accent)}.more{display:block;margin:25px auto 0}.notice{padding:16px 18px;border-radius:12px;background:#eef3e5;color:#375139}.notice.error{background:#faeae6;color:var(--error)}.empty{grid-column:1/-1;text-align:center;border:1px dashed #b9c7b8;background:#fff;border-radius:var(--radius);padding:42px 24px;color:var(--muted)}.empty strong{display:block;color:var(--ink);font-size:1.1rem;margin-bottom:6px}.site-footer{border-top:1px solid var(--line);padding:24px 0;color:var(--muted);font-size:.81rem}.site-footer span{padding:0 8px}.admin-main{padding:37px 0 80px;min-height:calc(100vh - 77px)}.login-card{max-width:450px;margin:60px auto;background:#fff;border:1px solid var(--line);border-radius:20px;padding:34px;box-shadow:0 16px 35px rgba(34,55,41,.06)}.login-card p:not(.eyebrow){color:var(--muted);line-height:1.55}.login-card form{margin-top:25px}.login-card button{width:100%;margin-top:16px}.admin-heading,.section-top{display:flex;align-items:center;justify-content:space-between;gap:18px}.admin-heading{margin-bottom:25px}.admin-heading h1{margin:0}.text-button{border:0;background:none;color:var(--green);font-weight:700;padding:8px}.tabs{display:flex;border-bottom:1px solid var(--line);gap:28px;overflow:auto}.tabs button{border:0;border-bottom:3px solid transparent;background:none;padding:14px 3px;color:var(--muted);font-weight:700;white-space:nowrap}.tabs button.active{color:var(--green);border-color:var(--green)}.tab-panel{padding-top:29px}.section-top{margin-bottom:20px}.section-top p,.tab-panel>p{color:var(--muted);line-height:1.55;margin-bottom:0}.admin-filter{max-width:490px;margin-bottom:17px}.admin-list{display:grid;gap:10px;margin-top:14px}.admin-item{background:#fff;border:1px solid var(--line);border-radius:13px;padding:17px 19px;display:flex;align-items:center;justify-content:space-between;gap:18px}.admin-item main{min-width:0}.admin-item h3{margin-bottom:5px}.admin-item p{color:var(--muted);font-size:.83rem;margin:0;line-height:1.55;overflow-wrap:anywhere}.item-actions{display:flex;gap:8px;flex-shrink:0}.small-button{background:#f0f5ec;color:var(--green);border:1px solid #e0e9db;border-radius:8px;padding:8px 11px;font-weight:700;font-size:.81rem}.small-button:hover{background:#e2ecdc}.small-button.danger{background:#fff3f0;border-color:#f2ddd8;color:#a03b32}.data-card{max-width:620px;margin-top:20px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:23px}.data-card .helper{color:var(--muted);font-size:.83rem;line-height:1.5;margin:9px 0 19px}.subsection-title{margin-top:43px}.button-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:19px}.toast{position:fixed;bottom:22px;right:22px;z-index:10;background:var(--green);color:#fff;border-radius:12px;padding:14px 19px;box-shadow:0 12px 35px #0002;max-width:min(430px,calc(100vw - 44px))}.toast.error{background:var(--error)}.dialog{border:1px solid var(--line);border-radius:18px;padding:25px;width:min(620px,calc(100% - 30px));max-height:calc(100vh - 40px);overflow:auto;box-shadow:0 25px 80px #102c2340}.dialog::backdrop{background:#11251e88}.dialog-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:22px}.dialog-head h2{margin:0}.icon-button{border:0;background:#f1f4ee;border-radius:50%;height:34px;width:34px;font-size:1.35rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-grid label{font-size:.82rem;font-weight:700}.form-grid label input,.form-grid label select,.form-grid label textarea{display:block;margin-top:7px}.form-grid .wide{grid-column:1/-1}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}
.book-card dl div:nth-child(3){grid-column:1/-1}
.admin-item > div:first-child{min-width:0}
@media(max-width:820px){.book-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.shell{width:min(100% - 28px,1100px)}.header-inner{min-height:68px}.brand{font-size:.92rem}.brand-mark{height:37px;width:37px}.header-link{font-size:.79rem}.catalog-main{padding-top:32px}.intro-icon{display:none}.search-panel{padding:17px}.search-row{grid-template-columns:1fr}.results-head{margin-top:28px}.book-grid{grid-template-columns:1fr}.book-card{min-height:205px}.admin-heading{align-items:flex-start}.admin-heading h1{font-size:2rem}.section-top{align-items:flex-start;flex-direction:column}.admin-item{align-items:flex-start;flex-direction:column}.item-actions{width:100%}.tabs{gap:19px}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.dialog{padding:19px}}
