:root{color:#0f172a;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8fafc;font-family:Avenir Next,Hiragino Sans,Yu Gothic,Noto Sans JP,Segoe UI,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}body{background:#f8fafc;min-height:100vh;margin:0}#root{min-height:100vh}.appRoot,html,body{-webkit-text-size-adjust:100%}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100dvh;margin:0;padding:0;overflow-x:hidden}.dashboardPage{max-width:720px;min-height:100dvh;padding:28px 20px calc(140px + env(safe-area-inset-bottom,0px));flex-direction:column;justify-content:flex-start;gap:20px;margin:0 auto;display:flex}.authScreenPage{place-items:center;min-height:100dvh;padding:24px 16px;display:grid}.authScreenCard{background:#fff;border:1px solid #e2e8f0;border-radius:12px;gap:16px;width:min(560px,100%);padding:22px;display:grid}.authScreenHeader{gap:8px;display:grid}.authScreenHeader h1{color:#0f172a;letter-spacing:-.03em;margin:0;font-size:clamp(1.35rem,4.6vw,1.9rem)}.authScreenHeader p{color:#475569;margin:0;font-size:.88rem}.dashboardHeader{padding:8px 2px 2px}.dashboardHeader>div{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:24px 24px 22px;box-shadow:0 1px 2px #0f172a0a}.brand{letter-spacing:.09em;text-transform:lowercase;color:#0f172a;margin:0;font-size:1.06rem;font-weight:700}.brandMark{align-items:center;gap:10px;display:inline-flex}.brandGlyph{color:#fff;background:linear-gradient(135deg,#0f172a,#334155);border-radius:10px;place-items:center;width:32px;height:32px;display:grid;box-shadow:0 6px 16px #0f172a2e}.brandGlyph svg{width:18px;height:18px}.brandWordmark{gap:2px;display:grid}.brandSub{color:#64748b;letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:.66rem;font-weight:700}.dashboardHeader h1{letter-spacing:-.05em;color:#0f172a;margin:0;font-size:clamp(1.6rem,5.2vw,2.2rem);font-weight:700;line-height:1.05}.lead{color:#475569;max-width:34rem;margin:14px 0 0;font-size:.92rem}.message{box-shadow:none;background:#fff;border:1px solid #0000;border-radius:10px;margin:0;padding:18px 20px}.errorMessage{color:#991b1b;background:#fef2f2;border-color:#fca5a5}.successMessage{color:#065f46;background:#ecfdf5;border-color:#6ee7b7}.chartSection{background:#fff;border:1px solid #e5e7eb;border-radius:10px;gap:12px;padding:18px;display:grid}.chartStatsRow{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.statChip{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:10px 12px}.statChip p{color:#64748b;letter-spacing:.04em;text-transform:uppercase;margin:0 0 6px;font-size:.68rem}.statChip strong{color:#0f172a;font-size:clamp(1rem,3vw,1.35rem)}.chartCanvasWrap{background:#fbfdff;border:1px solid #e2e8f0;border-radius:8px;padding:10px 12px}.chartScroller{scrollbar-width:thin;justify-content:flex-start;width:100%;display:flex;overflow:auto hidden}.chartCanvas{min-width:100%;height:128px;display:block}.barLayer{fill:#0f172a;opacity:.9}.yGridLine{stroke:#e2e8f0;stroke-width:.5px}.yTickLabel{fill:#94a3b8;text-anchor:end;dominant-baseline:middle;font-size:5.8px;font-weight:600}.xTickLabel{fill:#64748b;text-anchor:middle;dominant-baseline:ideographic;font-size:5.4px;font-weight:600}.chartMeta{color:#64748b;justify-content:space-between;margin-top:8px;font-size:.74rem;display:flex}.statCard,.panel,.addPanel,.soloPanel{background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 1px 2px #0f172a0a}.statCard{padding:22px}.statCard p{color:#64748b;letter-spacing:.04em;text-transform:uppercase;margin:0 0 8px;font-size:.72rem}.statCard strong{color:#0f172a;font-size:clamp(1.15rem,3.4vw,1.6rem);line-height:1}.contentGrid{grid-template-columns:1fr;gap:14px;display:grid}.panel,.addPanel,.soloPanel{padding:24px}.panel h2,.addPanel h2,.soloPanel h2,.manualForm h3{color:#0f172a;margin:0 0 12px;font-size:.9rem}.panel p,.soloPanel p,.bookPreview p,.message,.activityList li,.lead{line-height:1.7}.panelHead,.addPanelHead{justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px;display:flex}.addPanelHead{gap:6px;margin-bottom:8px;display:grid}.addPanelHead h2{margin:0}.addPanelHead p{color:#64748b;margin:0;font-size:.82rem}.panelActions{gap:8px;display:flex}.inlineButton,.ghostButton,.navButton,.searchRow button,.manualForm button{font:inherit;border:0;border-radius:9px}.inlineButton,.ghostButton,.searchRow button,.manualForm button{cursor:pointer;min-height:44px;padding:14px 16px;font-size:.86rem;font-weight:700;transition:transform .18s,box-shadow .18s,opacity .18s,background .18s}.inlineButton,.searchRow button,.manualForm button{color:#fff;box-shadow:none;background:#0f172a}.ghostButton{color:#334155;background:#f8fafc;border:1px solid #e2e8f0}.inlineButton:hover,.ghostButton:hover,.searchRow button:hover,.manualForm button:hover,.navButton:hover{transform:translateY(-1px)}.inlineButton:disabled,.searchRow button:disabled,.manualForm button:disabled{opacity:.58;cursor:not-allowed;transform:none}.activityList{gap:14px;margin:0;padding:0;list-style:none;display:grid}.activityList li{color:#334155;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:16px 18px}.addPanel{flex-direction:column;gap:16px;display:flex}.addBlock{background:#fff;border:1px solid #e2e8f0;border-radius:12px;gap:14px;padding:16px;display:grid}.addBlockPrimary{background:linear-gradient(#fff 0%,#f8fafc 100%);border-color:#cbd5e1;padding:18px}.addEntryChoices{gap:12px;display:grid}.addEntryBlock{text-align:left;cursor:pointer;color:#0f172a;background:#fff;border:1px solid #dbe3ee;border-radius:12px;grid-template-columns:auto 1fr;align-items:center;gap:12px;padding:16px;display:grid}.addEntryBlock:hover{transform:translateY(-1px)}.addEntryBlockPrimary{background:linear-gradient(#fff 0%,#f8fafc 100%);border-color:#cbd5e1;min-height:108px}.addEntryBlockIcon{color:#334155;background:#e2e8f0;border-radius:10px;place-items:center;width:36px;height:36px;display:grid}.addEntryBlockIcon svg{width:20px;height:20px}.addEntryDigits{letter-spacing:.04em;font-size:.72rem;font-weight:800}.addEntryBlockBody{gap:4px;display:grid}.addEntryBlockBody strong{font-size:.98rem}.addEntryBlockBody span{color:#64748b;font-size:.82rem}.addBlockHead{gap:6px;display:grid}.addBlockHead h3{color:#0f172a;align-items:center;gap:8px;margin:0;font-size:1.02rem;display:inline-flex}.addBlockHead p{color:#64748b;margin:0;font-size:.84rem}.addBlockIcon{color:#334155;width:18px;height:18px}.searchRow{grid-template-columns:minmax(0,1fr) auto;gap:12px;display:grid}.scanCtaButton{min-height:48px;font:inherit;color:#fff;cursor:pointer;background:linear-gradient(135deg,#0f172a,#334155);border:0;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:14px 16px;font-size:.9rem;font-weight:700;display:inline-flex}.scanCtaButton svg{width:18px;height:18px}.scanCtaButton:hover{transform:translateY(-1px)}.addManualPanel,.addScanPanel{gap:14px;display:grid}.addInlineActions{flex-wrap:wrap;gap:8px;display:flex}.isbnModalOverlay{z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a8f;place-items:start center;padding:44px 16px 16px;display:grid;position:fixed;inset:0}.isbnModalCard{background:#fff;border:1px solid #dbe3ee;border-radius:16px;gap:14px;width:min(560px,100%);padding:16px;display:grid;box-shadow:0 20px 48px #0f172a33}.isbnModalActions{justify-content:flex-end;display:flex}.manualGuideLine{color:#475569;margin:0;font-size:.86rem}.manualGuideButton{color:#0f172a;text-underline-offset:3px;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.manualSearchFields{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;display:grid}.manualSearchFields input{color:#0f172a;width:100%;font:inherit;background:#fff;border:1px solid #d1d5db;border-radius:8px;padding:12px 14px}.manualSearchFields input:focus{border-color:#0f172a;outline:none;box-shadow:0 0 0 2px #0f172a14}.manualSuggestLoading{color:#64748b;margin:0;font-size:.8rem}.manualSearchResults{overscroll-behavior:contain;gap:8px;max-height:42vh;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.manualSearchResultButton{text-align:left;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:10px;width:100%;padding:12px;display:grid}.manualSearchThumb{object-fit:cover;background:#fff;border:1px solid #dbe3ee;border-radius:6px;width:42px;height:58px}.manualSearchThumbPlaceholder{color:#94a3b8;background:#fff;border:1px solid #dbe3ee;border-radius:6px;place-items:center;width:42px;height:58px;font-size:.52rem;display:grid}.manualSearchText{gap:4px;min-width:0;display:grid}.manualSearchResultButton strong{color:#0f172a;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.manualSearchResultButton span{color:#64748b;font-size:.82rem}.searchRow input,.manualForm input,.manualForm select,.manualForm textarea{color:#0f172a;width:100%;font:inherit;box-shadow:none;background:#fff;border:1px solid #d1d5db;border-radius:8px;padding:14px 15px;line-height:1.45}.searchRow input::placeholder,.manualForm input::placeholder,.manualForm textarea::placeholder{color:#94a3b8}.searchRow input:focus,.manualForm input:focus,.manualForm select:focus,.manualForm textarea:focus{border-color:#0f172a;outline:none;box-shadow:0 0 0 2px #0f172a14}.scanner{gap:14px;display:grid}.scanner video{aspect-ratio:4/3;object-fit:cover;width:100%;box-shadow:none;background:#0f172a;border-radius:8px}.bookPreview{background:#fff;border:1px solid #e2e8f0;border-radius:8px;grid-template-columns:88px 1fr;gap:18px;padding:18px;display:grid}.bookPreview img{object-fit:cover;width:88px;height:118px;box-shadow:none;border-radius:6px}.bookPreview h3{color:#0f172a;margin:0 0 6px}.bookPreview p{color:#475569;margin:0}.addConfirmPreview{background:#f8fafc;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:14px;padding:14px}.addConfirmPreview img{width:72px;height:102px}.addConfirmPreview h3{margin:0 0 4px;font-size:.92rem}.addConfirmPreview p{font-size:.82rem}.manualForm{gap:16px;display:grid}.manualFormLocked .manualLockedField{color:#64748b}.manualFormLocked .manualLockedField input{color:#64748b;cursor:not-allowed;background:#f1f5f9;border-color:#dbe3ee}.manualFormLocked .manualLockedField input::placeholder{color:#94a3b8}.manualForm label{color:#334155;gap:9px;font-size:.86rem;display:grid}.manualForm textarea{resize:vertical;min-height:116px}.ratingFieldset{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;gap:10px;margin:0;padding:12px;display:grid}.ratingFieldset legend{color:#334155;padding:0 6px;font-size:.82rem;font-weight:700}.ratingFieldset label{gap:8px}.authForm{gap:14px;display:grid}.authModeRow{grid-template-columns:1fr 1fr;gap:8px;display:grid}.authModeActive{color:#0f172a;background:#e2e8f0;border-color:#cbd5e1}.authForm label{color:#334155;gap:8px;font-size:.86rem;display:grid}.authForm input{color:#0f172a;width:100%;font:inherit;background:#fff;border:1px solid #d1d5db;border-radius:8px;padding:14px 15px;line-height:1.45}.authForm input:focus{border-color:#0f172a;outline:none;box-shadow:0 0 0 2px #0f172a14}.authForm button[type=submit]{font:inherit;color:#fff;cursor:pointer;background:#0f172a;border:0;border-radius:9px;padding:14px 16px;font-size:.86rem;font-weight:700}.authSignedIn{gap:12px;display:grid}.authSignedIn p{color:#334155;margin:0}.initialProfileForm{background:#fff;border:1px solid #e2e8f0;border-radius:10px;justify-items:stretch;gap:16px;padding:14px;display:grid}.initialProfileForm h3{color:#0f172a;margin:0;font-size:.95rem}.initialProfileForm p{color:#475569;margin:0;font-size:.82rem}.initialProfileForm label{color:#334155;gap:8px;font-size:.85rem;display:grid}.hiddenFileInput{display:none}.onboardingAvatarButton{cursor:pointer;background:#e2e8f0;border:0;border-radius:999px;place-items:center;width:184px;height:184px;margin:6px auto 0;padding:0;display:grid;position:relative;overflow:hidden;box-shadow:0 10px 24px #0f172a1f}.onboardingAvatarImage{object-fit:cover;width:100%;height:100%;display:block}.onboardingAvatarOverlay{color:#fff;background:linear-gradient(#0f172a14,#0f172a2e);place-items:center;display:grid;position:absolute;inset:0}.cropModalOverlay{z-index:60;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0f172a9e;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.cropModalCard{background:#fff;border-radius:20px;gap:14px;width:min(420px,100%);padding:16px;display:grid;box-shadow:0 24px 64px #0f172a47}.cropModalHeader{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.cropModalTitle{color:#0f172a;margin:0;font-size:.98rem;font-weight:700}.cropModalSubtitle{color:#64748b;margin:6px 0 0;font-size:.82rem}.cropStage{aspect-ratio:1;touch-action:none;cursor:grab;background:#0f172a;border-radius:24px;width:min(100%,320px);margin:0 auto;position:relative;overflow:hidden}.cropStage:active{cursor:grabbing}.cropStageImage{-webkit-user-select:none;user-select:none;pointer-events:none;position:absolute;top:0;left:0}.cropStageFrame{pointer-events:none;border:2px solid #ffffffeb;border-radius:20px;position:absolute;inset:24px;box-shadow:0 0 0 9999px #0f172a61}.cropZoomRow{color:#475569;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;font-size:.8rem;display:grid}.cropZoomRow input[type=range]{width:100%}.cropModalFileName{color:#64748b;margin:0;font-size:.78rem}.cropModalActions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.cameraPlusIcon{color:#fff;filter:drop-shadow(0 2px 4px #0f172a2e);width:62px;height:62px}.centeredHelp{text-align:center}.initialProfileForm input{color:#0f172a;width:100%;font:inherit;background:#fff;border:1px solid #d1d5db;border-radius:8px;padding:12px 14px;line-height:1.45}.initialProfileForm input:focus{border-color:#0f172a;outline:none;box-shadow:0 0 0 2px #0f172a14}.initialProfileForm button[type=submit]{font:inherit;color:#fff;cursor:pointer;background:#0f172a;border:0;border-radius:9px;padding:13px 16px;font-size:.86rem;font-weight:700}.initialProfileForm button[type=submit],.initialProfileForm .ghostButton{width:100%}.iconUploadHelp,.iconUploadName{color:#64748b;margin:0;font-size:.8rem}.profileBadgeImage{object-fit:cover;background:#fff;border:1px solid #dbe3ee;border-radius:999px;width:44px;height:44px}.iconButton{cursor:pointer;background:#f8fafc;border:1px solid #dbe3ee;border-radius:8px;place-items:center;padding:8px;display:grid}.iconButton.active{background:#e2e8f0;border-color:#0f172a}.iconButtonImage{object-fit:cover;width:44px;height:44px;display:block}.profileSummary{gap:8px;display:grid}.profileBadge{background:#f8fafc;border:1px solid #dbe3ee;border-radius:8px;align-items:center;gap:8px;width:fit-content;margin:0;padding:8px 12px;display:inline-flex}.profileSectionHeader{gap:12px;margin-bottom:18px;padding-right:52px;display:grid;position:relative}.profileSectionHeader h2{margin:4px 0 0;font-size:1.45rem;line-height:1.25}.profileEyebrow{letter-spacing:.18em;text-transform:uppercase;color:#64748b;margin:0;font-size:.72rem;font-weight:700}.profileMessageInline{margin:0}.profileMessageInline.message{padding:10px 12px}.profileSettingsButton{color:#334155;cursor:pointer;background:#f8fafc;border:1px solid #dbe3ee;border-radius:10px;flex-shrink:0;place-items:center;width:40px;height:40px;transition:background-color .2s,border-color .2s,color .2s;display:grid}.profileSettingsButton:hover{color:#0f172a;background:#e2e8f0;border-color:#cbd5e1}.profileSettingsButton:focus-visible{outline:none;box-shadow:0 0 0 2px #0f172a24}.profileSettingsButton svg{width:20px;height:20px}.profileSettingsCorner{position:absolute;top:0;right:0}.profileLayout{gap:14px;display:grid}.profileHeroCard,.profileInfoCard{background:linear-gradient(#fff 0%,#fbfdff 100%);border:1px solid #dbe3ee;border-radius:16px;box-shadow:0 1px 2px #0f172a0a}.profileHeroCard{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:18px;padding:18px;display:grid}.profileHeroAvatarWrap{background:linear-gradient(135deg,#0f172a,#1e293b);border-radius:999px;width:108px;height:108px;overflow:hidden;box-shadow:0 16px 34px #0f172a29}.profileHeroAvatarImage,.profileHeroAvatarFallback{object-fit:cover;place-items:center;width:100%;height:100%;display:grid}.profileHeroAvatarFallback{color:#fff;font-size:3rem}.profileHeroBody{flex-direction:column;gap:10px;display:flex}.profileHeroBodyHeader{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.profileHeroBodyHeader>div{flex:1;gap:10px;display:grid}.profileHeroBody h3{color:#0f172a;margin:0;font-size:clamp(1.3rem,4vw,1.8rem);line-height:1.2}.profileHeroBadges{flex-wrap:wrap;gap:8px;display:flex}.profileStatusBadge{color:#fff;background:#0f172a;border-radius:999px;align-items:center;padding:7px 11px;font-size:.75rem;font-weight:700;display:inline-flex}.profileStatusBadgeMuted{color:#334155;background:#e2e8f0}.profileHeroActions{flex-shrink:0;align-items:center;gap:8px;margin-left:auto;display:flex}.profileMetricGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.profileMetricCard{background:#fff;border:1px solid #e2e8f0;border-radius:14px;gap:8px;padding:16px;display:grid}.profileMetricCard p{color:#64748b;letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:.72rem}.profileMetricCard strong{color:#0f172a;font-size:clamp(1rem,2.6vw,1.25rem)}.profileInfoGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.profileInfoCard{padding:18px}.profileInfoCard h3{color:#0f172a;margin:0 0 14px;font-size:1rem;line-height:1.3}.profileInfoList{gap:12px;display:grid}.profileInfoList div{gap:4px;display:grid}.profileInfoList dt{color:#64748b;letter-spacing:.06em;text-transform:uppercase;font-size:.72rem}.profileInfoList dd{color:#0f172a;word-break:break-word;margin:0;font-size:.9rem}.profileTagList{gap:10px;margin:0;padding:0;list-style:none;display:grid}.profileTagItem{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.profileTagItem span{color:#334155;word-break:break-word;font-size:.9rem}.profileTagItem strong{color:#0f172a;font-size:.82rem}.profileEmptyText{color:#64748b;margin:0;font-size:.86rem}.profileRecentCard{gap:14px;display:grid}.profilePanelHead{margin-bottom:0}.profilePanelHead h3{margin:0}.profileRecordList{gap:12px;margin:0;padding:0;list-style:none;display:grid}.profileRecordItem{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;grid-template-columns:56px minmax(0,1fr);align-items:start;gap:12px;padding:14px 16px;display:grid}.profileRecordCoverWrap{width:56px;height:82px}.profileRecordMain{gap:8px;display:grid}.profileRecordMeta{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.profileRecordMeta strong{color:#0f172a;word-break:break-word;min-width:0;font-size:.95rem;line-height:1.4}.profileRecordMeta time{color:#64748b;white-space:nowrap;margin-left:auto;font-size:.74rem}.profileRecordItem p{color:#475569;margin:0;font-size:.86rem;line-height:1.6}.profileRecordMemo{color:#334155!important}.profileFooterActions{justify-content:flex-end;display:flex}.profileSettingsOverlay{z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a8a;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.profileSettingsModal{background:#fff;border:1px solid #dbe3ee;border-radius:18px;gap:16px;width:min(460px,100%);padding:16px;display:grid;box-shadow:0 20px 48px #0f172a33}.profileSettingsHead{justify-content:space-between;align-items:center;gap:12px;display:flex}.profileSettingsHead h3{color:#0f172a;margin:0;font-size:1rem}.profileSettingsBody{gap:14px;display:grid}.profileEditIdentity{gap:12px;display:grid}.profileEditAvatarButton{cursor:pointer;background:#e2e8f0;border:0;border-radius:999px;width:120px;height:120px;margin:0 auto;padding:0;position:relative;overflow:hidden;box-shadow:0 10px 20px #0f172a1f}.profileEditAvatarImage{object-fit:cover;width:100%;height:100%;display:block}.profileEditAvatarOverlay{text-align:center;color:#fff;background:#0f172a99;padding:8px;font-size:.76rem;font-weight:700;position:absolute;inset:auto 0 0}.profileEditIdentity label{color:#334155;gap:8px;font-size:.86rem;display:grid}.profileEditIdentity input{color:#0f172a;width:100%;font:inherit;background:#fff;border:1px solid #d1d5db;border-radius:8px;padding:12px 14px;line-height:1.45}.profileEditIdentity input:focus{border-color:#0f172a;outline:none;box-shadow:0 0 0 2px #0f172a14}.profileVisibilityFieldset{border:1px solid #dbe3ee;border-radius:12px;gap:10px;margin:0;padding:12px;display:grid}.profileVisibilityFieldset legend{color:#334155;padding:0 4px;font-size:.84rem}.profileVisibilityFieldset label{color:#0f172a;align-items:center;gap:8px;font-size:.9rem;display:flex}.profileSettingsActions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.bottomNav{left:50%;bottom:calc(12px + env(safe-area-inset-bottom,0px));width:min(720px,100vw - 24px);padding:10px 10px calc(10px + env(safe-area-inset-bottom,0px));z-index:20;background:#fff;border:1px solid #e2e8f0;border-radius:10px;grid-template-columns:repeat(5,1fr);gap:6px;display:grid;position:fixed;transform:translate(-50%);box-shadow:0 8px 20px #0f172a14}.navButton{color:#64748b;cursor:pointer;background:0 0;justify-items:center;gap:6px;min-height:52px;padding:10px 8px;font-size:.78rem;transition:transform .18s,background .18s,color .18s;display:grid}.navButton.active{color:#0f172a;background:#f1f5f9}.navIcon{width:22px;height:22px}.soloPanel{min-height:280px}.recordsList{gap:10px;margin:0;padding:0;list-style:none;display:grid}.recordItem{background:#fff;border:1px solid #e2e8f0;border-radius:8px;grid-template-columns:68px minmax(0,1fr);align-items:start;gap:12px;padding:14px;display:grid}.recordCoverWrap{width:68px;height:98px}.recordCover{object-fit:cover;background:#fff;border:1px solid #dbe3ee;border-radius:6px;width:100%;height:100%}.recordCoverPlaceholder{color:#94a3b8;background:#fff;border:1px solid #dbe3ee;border-radius:6px;place-items:center;width:100%;height:100%;font-size:.52rem;display:grid}.recordMain{gap:6px;min-width:0;display:grid}.recordHead{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.recordHead strong{color:#0f172a;word-break:break-word;font-size:.92rem;line-height:1.35}.recordHead time{color:#64748b;font-size:.74rem}.recordAuthor,.recordMemo,.recordIsbn{color:#475569;margin:0;font-size:.82rem;line-height:1.6}@media (hover:none){.inlineButton:hover,.ghostButton:hover,.searchRow button:hover,.manualForm button:hover,.navButton:hover,.scanCtaButton:hover,.addEntryBlock:hover{transform:none}.inlineButton:active,.ghostButton:active,.searchRow button:active,.manualForm button:active,.scanCtaButton:active{transform:scale(.99)}}.recordMemo{color:#334155}.recordRatings{flex-wrap:wrap;gap:6px;margin:2px 0 0;padding:0;list-style:none;display:flex}.recordRatings li{color:#334155;background:#f8fafc;border:1px solid #dbe3ee;border-radius:999px;padding:4px 9px;font-size:.74rem}.profileRecordRatings{margin-top:0}.recordIsbn{color:#64748b;font-size:.76rem}@media (width<=820px){.dashboardPage{max-width:640px;padding-inline:16px}.authScreenCard{border-radius:14px;padding:18px}.chartStatsRow,.contentGrid,.searchRow{grid-template-columns:1fr}.panelActions{justify-content:flex-end;width:100%}.dashboardHeader>div{border-radius:10px;padding:20px}.bookPreview{grid-template-columns:1fr}.recordItem{grid-template-columns:56px minmax(0,1fr)}.recordCoverWrap{width:56px;height:82px}.bookPreview img{width:100%;height:190px}.searchRow button{width:100%}.manualSearchResultButton{padding:12px 10px}.panel,.addPanel,.soloPanel{border-radius:10px}.profileHeroCard,.profileInfoGrid{grid-template-columns:1fr}.profileMetricGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.profileHeroCard{grid-template-columns:1fr;justify-items:start}.profileHeroBodyHeader{width:100%}.profileHeroAvatarWrap{width:92px;height:92px}.profileHeroActions{margin-left:0}.profileFooterActions{justify-content:stretch}.profileFooterActions .ghostButton{width:100%}}@media (width<=520px){.dashboardPage{padding:20px 14px calc(136px + env(safe-area-inset-bottom,0px));gap:12px}.authScreenPage{padding:16px 12px}.authScreenCard{gap:12px;padding:14px}.authForm input,.initialProfileForm input,.searchRow input,.manualForm input,.manualForm select,.manualForm textarea,.profileEditIdentity input{font-size:16px}.dashboardHeader h1{font-size:clamp(1.5rem,8vw,2rem)}.lead{font-size:.88rem}.statsGrid{gap:8px}.chartSection{border-radius:8px;padding:14px}.chartCanvas{height:112px}.chartMeta{font-size:.7rem}.statCard,.panel,.addPanel,.soloPanel{border-radius:8px}.panel,.addPanel,.soloPanel,.statCard{padding:18px}.bottomNav{width:calc(100vw - 18px);bottom:calc(8px + env(safe-area-inset-bottom,0px));padding:8px 6px calc(8px + env(safe-area-inset-bottom,0px));border-radius:12px;gap:4px}.navButton{min-height:50px;padding:8px 4px;font-size:.72rem}.navIcon{width:20px;height:20px}.message{border-radius:8px;padding:16px}.profileSectionHeader{gap:10px;margin-bottom:14px}.profileSectionHeader h2{font-size:1.32rem}.profileInfoCard{padding:16px}.profileRecordItem{grid-template-columns:48px minmax(0,1fr);gap:10px;padding:12px}.profileRecordCoverWrap{width:48px;height:70px}.profileSettingsOverlay{place-items:end center;padding:8px}.profileSettingsModal{border-radius:16px 16px 12px 12px;width:100%;max-height:min(86vh,100dvh - 10px);padding:14px;overflow-y:auto}.isbnModalOverlay{place-items:end center;padding:10px}.isbnModalCard{border-radius:16px;width:100%;max-height:min(86vh,100dvh - 16px);padding:14px;overflow-y:auto}.cropModalOverlay{padding:10px}.cropModalCard{border-radius:16px;width:100%;max-height:min(92vh,100dvh - 16px);overflow-y:auto}.cropStage{width:100%;max-width:320px}}
