/* Shared mobile layout for the catalogue, account and information pages. */
@media(max-width:700px){
 html{font-size:16px;-webkit-text-size-adjust:100%}
 body{overflow-wrap:break-word;width:100%;max-width:100vw}
 body>header,header:has(#reader-open:not([hidden])){display:grid;grid-template-columns:30px minmax(0,1fr) 28px auto;gap:9px 7px;padding:10px 12px;min-height:0;align-items:center}
 .brand{grid-column:1/3;grid-row:1;order:1;font-size:19px;gap:5px;white-space:nowrap;min-width:0}
 .brand-logo{width:27px;height:27px;flex-shrink:0}
 .brand-logo img{width:100%;height:100%;object-fit:contain}
 .auth-header-button{order:6;grid-column:4;grid-row:2;justify-self:end;margin:0;min-height:30px;font-size:11px;padding:6px 9px}
 .tiktok-link{order:2;grid-column:3;grid-row:1;justify-content:center;margin:0;padding:5px;min-height:28px;width:28px;border-radius:50%}
 .tiktok-link span{display:none}
 .tiktok-link img{width:15px;height:15px}
 .info-nav{order:3;grid-column:4;grid-row:1;display:flex;gap:4px;min-width:0}
 .info-nav .info-link{min-height:28px;padding:5px 7px;font-size:10px}
 header #reader-open{order:5;grid-column:2/4;grid-row:2;justify-self:start;width:max-content;max-width:100%;min-height:30px;margin:0;padding:6px 8px;font-size:11px;white-space:nowrap;box-shadow:0 0 6px #b58bd244}
 body>header:has(#reader-avatar:not([hidden])){grid-template-columns:44px minmax(0,1fr) 28px auto;row-gap:11px;padding-bottom:14px}
 #reader-avatar{order:4;grid-column:1;grid-row:2;justify-self:start;margin:0;width:44px;height:44px;border-width:2px}
 #owner-analytics-link{order:7;grid-column:1/-1;justify-self:end;text-align:center;font-size:10px;padding:4px 8px;min-height:26px}
 main{width:100%;max-width:100%;min-width:0;margin:0;padding:20px 14px 36px}
 .intro{padding:24px 20px;border-radius:16px}
 .intro .eyebrow{font-size:9px;letter-spacing:1.5px;line-height:1.5}
 .intro h1{font-size:30px;line-height:1.18;margin:12px 0;letter-spacing:-.6px}
 .intro p{font-size:14px;line-height:1.65}
 .intro br{display:initial}
 .search-row{margin:18px 0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}
 .search-row .search{grid-column:1/-1;min-width:0;padding:0 14px;border-radius:10px}
 .search input{font-size:16px;padding:14px 0;min-width:0}
 .next-reading-open{min-height:44px;padding:10px 14px;font-size:13px}
 #mobile-filters{display:block;min-height:44px;padding:10px 16px;font-size:13px}
 .workspace{min-width:0}
 aside{padding:18px;margin-bottom:16px;border-radius:14px}
 .filter-group select{font-size:16px;min-height:44px}
 .catalog{padding:16px 12px;border-radius:16px;min-width:0}
 .catalog-header{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;margin:0 0 16px}
 .catalog-header .eyebrow{font-size:10px;letter-spacing:1.2px;line-height:1.5}
 .catalog-header .sort{display:flex;align-items:center;justify-content:space-between;gap:10px;max-width:none;font-size:12px}
 .sort select{margin:0;min-width:0;max-width:72%;font-size:14px;padding:9px;border:1px solid #dfd4df;border-radius:8px;background:#fff9}
 .book-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .book-grid .cover-space{height:145px;padding:12px 8px}
 .book-grid .cover-space .book-cover{max-width:100%;max-height:122px;width:auto;height:auto;object-fit:contain}
 .book-grid .book-body{padding:12px 10px;gap:3px}
 .book-grid .book-title{font-size:15px;line-height:1.35;margin:5px 0 3px}
 .book-grid .genre{font-size:8px;letter-spacing:.6px;line-height:1.45}
 .book-grid .author{font-size:12px;line-height:1.4;margin:0 0 5px}
 .favorite-heart{width:34px;height:34px;right:6px;top:6px;font-size:23px}
 .card-community-rating{display:flex;flex-wrap:wrap;align-items:center;gap:4px;font-size:12px}
 .pagination{gap:6px;flex-wrap:wrap;margin-top:18px}
 .page-button{min-height:40px;padding:8px 10px}
 .chip{font-size:11px;margin:0 5px 8px 0;padding:7px 9px}
 footer{padding:20px 16px;gap:10px;font-size:19px}
 footer span,footer small{width:100%;font-size:11px;line-height:1.5}
 dialog,#reader-dialog,#reader-dialog.reader-library{width:calc(100% - 24px);max-width:none;max-height:90dvh;height:auto;padding:22px 16px;border-radius:18px}
 dialog h2,#reader-dialog h2{font-size:25px;line-height:1.25;margin:0 32px 16px 0}
 dialog h3{font-size:15px;line-height:1.4}
 dialog .close{width:36px;height:36px;top:10px;right:10px}
 dialog input,dialog select,dialog textarea{font-size:16px!important;max-width:100%;min-width:0}
 .dialog-top{gap:14px;align-items:flex-start}
 .dialog-top>div{min-width:0;flex:1}
 .dialog-top>.book-cover{width:74px;max-height:115px;object-fit:contain;flex-shrink:0}
 .dialog-top h2{font-size:23px;margin-right:20px}
 .synopsis{font-size:14px;line-height:1.75}
 #book-details .purchase-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:18px}
 #book-details .purchase-button{width:100%;min-width:0;min-height:64px;padding:10px 4px;flex-direction:column;gap:6px;font-size:11px}
 dialog .button{font-size:13px;padding:10px 12px;min-height:42px}
 .book-content-tabs,.book-author-rating{flex-wrap:wrap;gap:8px}
 .saga-book{min-width:0;padding:10px;gap:10px}
 .saga-book strong{font-size:13px;line-height:1.4}
 .reader-heading{gap:12px;align-items:flex-start}
 .reader-corner-avatar{width:58px;height:58px;flex-shrink:0}
 .reader-heading-text{min-width:0}
 #reader-welcome{font-size:13px;line-height:1.6;margin:0 0 10px}
 #reader-profile-actions{gap:8px 12px;flex-wrap:wrap}
 #reader-profile-actions .text-button{font-size:11px;padding:3px 0;line-height:1.5}
 .reader-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:20px 0}
 .reader-tabs .button{width:100%;font-size:12px;padding:10px 6px;min-height:44px}
 .diary-toolbar{flex-direction:column;align-items:stretch;gap:10px;margin:16px 0}
 .diary-toolbar p{margin:0;font-size:13px}
 #diary-entries,#diary-search-results{grid-template-columns:minmax(0,1fr);gap:12px}
 #diary-search-panel,#diary-form{padding:14px;border-radius:12px}
 .diary-fields{grid-template-columns:minmax(0,1fr);gap:14px}
 .diary-form-actions{flex-wrap:wrap;gap:10px}
 .diary-form-actions .button{flex:1}
 .diary-checks label{font-size:12px;padding:8px;line-height:1.4}
 #avatar-dialog{padding:14px 16px;max-height:94dvh}
 #avatar-dialog h2{font-size:21px;margin:0 36px 8px 0}
 #avatar-dialog .close{width:30px;height:30px;top:8px;right:8px}
 .avatar-editor-layout{grid-template-columns:minmax(0,1fr);gap:10px;margin-bottom:10px}
 .avatar-preview-column{max-width:180px;margin:auto;width:100%}
 .avatar-preview-column p{display:none}
 #avatar-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 10px}
 .avatar-field{min-width:0;gap:3px}.avatar-field-heading{font-size:11px;gap:5px;flex-wrap:nowrap;min-height:20px}
 #avatar-controls select{width:100%;padding:3px 6px;min-height:30px;height:30px}
 #avatar-dialog .avatar-color-picker summary{width:20px;height:20px}
 #avatar-dialog #avatar-save{min-height:34px;padding:7px 12px;font-size:12px}
 #avatar-status{margin:6px 0 0;font-size:12px}
 #avatar-status:empty{display:none}
 .stats-toolbar{gap:12px;align-items:flex-start;margin-bottom:14px}
 .stats-title-actions{gap:8px;align-items:center}
 .stats-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
 .stats-metrics>div{padding:12px 8px;border-radius:11px;min-width:0;font-size:11px;line-height:1.4}
 .stats-metrics strong{font-size:22px;line-height:1.3}
 .stats-block{padding:14px;border-radius:12px;margin-top:14px}
 .stats-rankings{grid-template-columns:1fr;gap:0}
 .stats-months{gap:5px}.stats-month{min-width:34px;font-size:11px}.stats-bar-track{height:80px}
 .info-main{padding-top:20px}.info-hero,.contact-hero{padding:22px 18px;border-radius:16px}
 .info-hero h1,.contact-hero h1{font-size:29px;line-height:1.25;letter-spacing:-.5px}
 .info-hero p,.contact-hero p{font-size:14px;line-height:1.65}
 .contact-grid{grid-template-columns:1fr;gap:14px;margin:18px 0}
 .contact-card,.contact-form-card,.faq-section,.info-note{padding:20px 18px;border-radius:16px}
 .contact-card-heading h2{font-size:23px}.contact-icon{width:28px;height:28px;font-size:28px}
 .contact-card p,.faq-item p{font-size:14px;line-height:1.65}.info-cta{font-size:13px;padding:12px 14px;width:100%;min-height:44px}
 .contact-form-fields{grid-template-columns:1fr;gap:14px;margin:18px 0}
 .contact-form-card input,.contact-form-card select,.contact-form-card textarea{font-size:16px}
 .faq-layout{gap:16px;margin-top:18px}.faq-section h2{font-size:23px}.faq-item summary{font-size:14px;gap:12px}
 #next-reading-dialog{padding:20px 14px;max-height:92dvh}
 #next-reading-dialog h2{font-size:23px}.next-reading-grid{gap:9px}
 .next-reading-card{border-radius:12px}.next-reading-card strong{font-size:13px}
 .analytics-main{padding:20px 14px}.analytics-shell{padding:20px 16px}.analytics-toolbar{gap:10px}
 .analytics-shell h1{font-size:30px}.analytics-shell h2{font-size:22px}.analytics-metric strong{font-size:27px}
}
@media(max-width:360px){.brand{font-size:17px;gap:4px}.info-nav .info-link{font-size:9px;padding:5px}.intro h1{font-size:27px}.book-grid{gap:8px}.catalog{padding:14px 10px}.book-grid .book-title{font-size:14px}.stats-metrics strong{font-size:19px}}
