@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
*{box-sizing:border-box}body{margin:0;background:#f7f8fc;color:#142345;font-family:Manrope,Arial,sans-serif}button,input,textarea,select{font:inherit}button,.button{cursor:pointer;background:white;border:1px solid #dce2ee;border-radius:10px;padding:12px 18px;color:#22365b;font-weight:600}button:hover,.button:hover{border-color:#7885cf;background:#f0f2ff}button:disabled{opacity:.5;cursor:wait}a{color:inherit}header{height:98px;border-bottom:1px solid #e1e6f0;background:white;display:flex;justify-content:space-between;align-items:center;padding:0 max(5vw,24px)}.brand{display:flex;gap:14px;align-items:center;text-decoration:none;font-size:13px;font-weight:800;letter-spacing:.08em}.brand small{display:block;letter-spacing:0;font-size:12px;font-weight:500;margin-top:5px;color:#7b8499}.star{font-size:47px;color:#6057cc}.badge{font-size:12px;color:#6356b7;background:#f1efff;padding:9px 13px;border-radius:30px}main{max-width:1320px;margin:auto;padding:48px 5vw 0}.eyebrow{font-size:11px;letter-spacing:.18em;color:#7b86a0;font-weight:800}.intro{display:flex;justify-content:space-between;align-items:center;padding:18px 0 32px}h1{font-size:clamp(40px,5vw,67px);line-height:1.1;letter-spacing:-.055em;margin:12px 0 24px;font-weight:800}h1 em{font-style:normal;color:#6b59cf}.intro p{color:#798299;line-height:1.8;font-size:14px}.primary{background:#6252cd;color:white;border-color:#6252cd;padding:15px 24px;box-shadow:0 6px 18px #6252cd20}.primary:hover{background:#5143b4;color:white}.stats{border-top:1px solid #dde3ed;border-bottom:1px solid #dde3ed;display:flex;align-items:center;gap:34px;padding:23px 0;color:#7b8499;font-size:12px}.stats strong{font-size:25px;color:#233354;margin-right:8px}.tools{margin-left:auto;display:flex;gap:8px}.tools button,.tools .button{font-size:12px}.search{display:flex;gap:12px;margin:28px 0}input,textarea,select{border:1px solid #dce2ed;border-radius:9px;padding:13px;background:white;color:#142345;min-width:0}input:focus,textarea:focus,select:focus{outline:2px solid #a39ae8;outline-offset:2px}.search input{flex:1}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{padding:0;text-align:left;overflow:hidden;border:1px solid #e2e6ef;border-radius:16px;box-shadow:0 4px 18px #20306004}.card:hover{transform:translateY(-2px);background:white}.cover{height:220px;position:relative;background:linear-gradient(135deg,#eeeffa,#e5e9f8);display:grid;place-items:center}.cover img{width:100%;height:100%;object-fit:cover}.geometry{font-size:150px;color:#aba5d9;font-weight:400;line-height:1}.number{position:absolute;left:16px;bottom:15px;background:white;padding:7px 10px;border-radius:7px;font-size:11px}.cardbody{padding:22px}.cardbody small{font-size:10px;color:#7868bc}.cardbody h2{font-size:18px;margin:12px 0}.cardbody p{font-size:12px;color:#7c869a;line-height:1.7;min-height:40px;font-weight:400}.cardfoot{border-top:1px solid #edf0f5;padding-top:14px;display:flex;justify-content:space-between;font-size:11px;color:#7e88a0}.cardfoot span{color:#6655c8}.empty{text-align:center;background:white;border:1px dashed #d4daeb;padding:50px 20px;border-radius:18px}.empty>span{font-size:65px;color:#b2a6e9}.empty h2{font-size:22px}.empty p{font-size:14px;color:#7b8499;line-height:1.7}.notice,.error,.import{padding:16px;border-radius:10px;background:#eaf3ed;line-height:1.6}.error{background:#fff0ee;color:#a1352d}.import{background:#eeebfc}.overlay{position:fixed;inset:0;background:#13234475;z-index:10;display:flex;justify-content:flex-end}.editor{width:min(640px,100%);height:100%;overflow:auto;background:#fff;padding:30px}.editorhead{display:flex;justify-content:space-between;align-items:center}.editorhead small{font-size:10px;letter-spacing:.15em;color:#8275bc}.editorhead h2{margin:9px 0 24px}.editor form>label{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:700;margin:20px 0}.editor form>small,.hint{color:#7e879b;font-size:11px;line-height:1.6}.upload{border:1px dashed #aaa3d9;padding:20px;border-radius:10px;background:#faf9ff}.upload input{font-size:12px}.upload small{font-weight:400;color:#7e879b}.photos{display:flex;flex-wrap:wrap;gap:10px}.photos img{width:100px;height:100px;object-fit:cover;border-radius:8px}.photos figure{margin:0;width:100px}.photos figcaption{font-size:9px;overflow-wrap:anywhere}.save{width:100%}footer{padding:40px 0;margin-top:40px;border-top:1px solid #e1e6ef;font-size:10px;color:#8b94a6;display:flex;justify-content:space-between;gap:15px}@media(max-width:750px){header{padding:0 20px;height:80px}.badge{font-size:9px}.brand{font-size:10px;gap:8px}.star{font-size:34px}main{padding:32px 20px 0}.intro{display:block}.intro .primary{margin-top:12px}.stats{flex-wrap:wrap;gap:18px}.tools{margin-left:0;width:100%}.grid{grid-template-columns:repeat(2,1fr)}.search{flex-wrap:wrap}.search input{flex-basis:100%}.cover{height:170px}.cardbody{padding:15px}footer{flex-direction:column}.editor{padding:22px}}@media(max-width:450px){.grid{grid-template-columns:1fr}.cover{height:230px}}

.account{display:flex;align-items:center;gap:12px;font-size:12px}.account a,a.button{text-decoration:none}.editor fieldset{border:0;padding:0;margin:0;min-width:0}.editor fieldset>label{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:700;margin:20px 0}.editor fieldset>small{font-size:11px;color:#7e879b}.history{border-top:1px solid #e1e6ef;margin-top:22px;font-size:11px;color:#7e879b}.author{font-size:11px!important}.editor fieldset:disabled{opacity:.8}@media(max-width:550px){.account{gap:6px;font-size:10px}.account .button,.account button{padding:8px;font-size:10px}}

/* Keep mobile controls readable without Safari focus zoom; preserve pinch zoom. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
input,select,textarea{font-size:16px;max-width:100%}
button,a.button{touch-action:manipulation}
.overlay{align-items:center;justify-content:center;padding:18px;overscroll-behavior:contain}
.editor{width:min(920px,100%);height:auto;max-height:calc(100dvh - 36px);padding:22px 26px;border-radius:18px;overscroll-behavior:contain;scrollbar-gutter:stable}
.editorhead{gap:12px;margin-bottom:10px}.editorhead h2{font-size:22px;margin:5px 0 8px}.editorhead h2:focus{outline:none}
.editor fieldset{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:12px 16px}
.editor fieldset>label{margin:0;gap:5px}.editor input,.editor textarea{padding:9px 11px;line-height:1.35;width:100%}
.editor .description-field,.editor-author,.editor .upload,.editor .photos,.editor .hint,.editor .error,.editor .save,.editor fieldset>small{grid-column:1/-1}
.editor textarea{min-height:86px;resize:vertical}.editor-author{margin:0;font-size:12px;color:#7e879b;line-height:1.5}
.editor .upload{padding:12px;gap:5px;background:#faf9ff}.upload input{font-size:16px;padding:0;border:0;background:transparent;line-height:1.5}.upload small{font-size:11px}
.editor .hint{margin:0}.editor .save{padding:12px}.editor .photos:empty{display:none}
.editor .photos img{width:68px;height:68px}.editor .photos figure{width:68px}.history{margin-top:14px}
@media(max-width:600px){
 .overlay{padding:0;align-items:stretch}.editor{width:100%;height:100dvh;max-height:100dvh;border-radius:0;padding:12px 14px;padding-bottom:max(12px,env(safe-area-inset-bottom));scrollbar-gutter:auto}
 .editorhead{margin-bottom:8px}.editorhead h2{font-size:19px;margin:3px 0}.editorhead small{font-size:9px}.editorhead>button{padding:8px 12px}
 .editor fieldset{grid-template-columns:minmax(0,1fr);gap:9px}.editor fieldset>label{font-size:11px;gap:4px}.editor textarea{min-height:80px}
 .editor input,.editor textarea{padding:8px 10px}.editor .upload{padding:9px}.editor .hint{font-size:10px;line-height:1.4}
 .editor .save{position:sticky;bottom:0;z-index:1;box-shadow:0 -5px 16px #ffffffb3}
 .account{max-width:50%;flex-wrap:wrap;justify-content:flex-end}.account>span{overflow-wrap:anywhere}
}
.catalog-nav{display:flex;gap:10px;margin:22px 0 8px;flex-wrap:wrap}.catalog-nav button{display:flex;align-items:center;gap:12px;padding:13px 18px;background:white;border-color:#e0e3ef}.catalog-nav button>span{font-size:11px;color:#8e87ba}.catalog-nav button small{background:#eeedf7;border-radius:20px;padding:3px 8px;font-size:10px}.catalog-nav button[aria-current=page]{background:#6252cd;color:white;border-color:#6252cd}.catalog-nav button[aria-current=page]>span{color:#dcd6ff}.catalog-nav button[aria-current=page] small{background:#ffffff25}.related{border-top:1px solid #e1e6ef;padding-top:12px;margin-top:12px}.related button{display:block;margin:7px 0;font-size:12px;text-align:left;max-width:100%;overflow-wrap:anywhere}.editor select{font-size:16px;padding:9px;width:100%}.intro p{max-width:540px}@media(max-width:600px){.catalog-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.catalog-nav button{padding:10px 5px;gap:4px;flex-wrap:wrap;justify-content:center;font-size:11px}.catalog-nav button small{font-size:9px;padding:2px 5px}.catalog-nav button>span{font-size:9px}.intro h1{font-size:38px}}
.publication-status{display:inline-block;margin:8px 0 0;padding:3px 8px;border-radius:20px;background:#f0edf8;color:#7c6e9c;font-size:10px}.publication-status.live{background:#e8f4ea;color:#38714a}.publication-note{font-size:11px;line-height:1.5;color:#776993;background:#f5f2fc;padding:10px;border-radius:8px;margin:0 0 12px}.publication-actions{border-top:1px solid #e1e6ef;padding-top:12px;margin-top:14px}.publication-actions p{font-size:11px;color:#7e879b}.publication-actions button{border-color:#7966d1;color:#6252cd}
