@import "https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@400;500;600;700&display=swap";.onboarding-app{background:var(--paper)}.onboarding-header{min-height:68px;padding:max(7px, env(safe-area-inset-top)) 12px 7px;flex:none;grid-template-columns:76px minmax(0,1fr) 76px;align-items:center;display:grid}.onboarding-header strong{text-align:center;font-size:16px}.onboarding-brand{white-space:nowrap;justify-content:center;align-items:center;gap:8px;display:flex}.onboarding-brand-mark{border:1.5px solid var(--comic-line);background:var(--mint-soft);width:27px;height:27px;color:var(--ink);border-radius:8px;flex:0 0 27px;place-items:center;font-size:13px;font-weight:800;display:grid;transform:rotate(-4deg)}.onboarding-icon-button{border-radius:50%;place-items:center;width:44px;height:44px;display:grid}.onboarding-icon-button:disabled{visibility:hidden}.onboarding-header-skip{min-height:44px;color:var(--accent-ink);white-space:nowrap;font-size:12px;font-weight:600}.onboarding-stepbar{flex:none;padding:9px 20px 5px}.onboarding-stepbar>div:first-child{color:var(--accent-ink);justify-content:space-between;gap:12px;font-size:11px;font-weight:700;display:flex}.onboarding-step-track{background:#e3e9e4;border-radius:9px;height:5px;margin-top:9px;overflow:hidden}.onboarding-step-track i{border-radius:inherit;background:var(--accent);height:100%;display:block}.onboarding-scroll{overscroll-behavior:contain;flex:1;min-height:0;overflow-y:auto}.onboarding-inner{padding:25px 20px 28px}.onboarding-eyebrow{color:#6a827b;align-items:center;gap:7px;margin-bottom:10px;font-size:11px;font-weight:700;display:flex}.onboarding-eyebrow:before{background:var(--accent);content:"";border-radius:50%;width:7px;height:7px;display:block}.onboarding-inner h1{letter-spacing:-.025em;font-size:28px;line-height:1.3}.onboarding-lead{color:#68736e;margin-top:8px;font-size:13px;line-height:1.7}.onboarding-name-hero{border:2px solid var(--comic-line);background:linear-gradient(130deg,#e7f2e8,#f0f7ed 55%,#fff4e5);border-radius:20px 18px 23px 19px;align-items:center;min-height:120px;margin:24px 0;padding:20px;display:flex;box-shadow:4px 4px #dce9db}.onboarding-name-hero>div{min-width:0}.onboarding-name-hero b{font-size:16px;line-height:1.45;display:block}.onboarding-name-hero small{color:#5d7068;white-space:nowrap;margin-top:8px;font-size:11px;line-height:1.55;display:block}.onboarding-inner label,.onboarding-profile-editor>label{margin-bottom:8px;font-size:14px;font-weight:600;display:block}.onboarding-inner input:not([type=file]),.onboarding-profile-editor input:not([type=file]),.onboarding-inner textarea{background:var(--surface);border:1px solid #cfd8d1;border-radius:12px;width:100%;min-height:50px;padding:12px 14px;font-size:16px;display:block}.onboarding-inner textarea{resize:vertical;min-height:96px;line-height:1.6}.onboarding-inner form>small{color:var(--muted);margin-top:7px;font-size:11px;line-height:1.55;display:block}.onboarding-dock{z-index:2;padding:12px 20px max(16px, env(safe-area-inset-bottom));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fbfaf6f4;flex:none;gap:7px;display:grid}.onboarding-dock>small{color:var(--muted);text-align:center;font-size:11px;line-height:1.5}.onboarding-primary{background:var(--accent);color:#173d38;border-radius:13px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:52px;padding:10px 15px;font-size:15px;font-weight:700;display:flex}.onboarding-primary:disabled{color:#8b958e;opacity:1;background:#e2e6e1}.onboarding-secondary{min-height:34px;color:var(--accent-ink);font-size:12px;font-weight:600}.onboarding-error{color:var(--danger);margin:0 20px 12px;font-size:12px;line-height:1.55}.onboarding-inline-error{background:var(--pink);color:var(--danger);border-radius:12px;justify-content:space-between;align-items:center;gap:10px;margin-top:16px;padding:12px;font-size:12px;display:flex}.onboarding-inline-error button{min-height:36px;color:var(--accent-ink);font-weight:600}.onboarding-app .sr-only,.onboarding-profile-editor .sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.onboarding-avatar-hero{justify-items:center;gap:10px;margin:22px 0 20px;display:grid}.onboarding-avatar-preview{border:3px solid var(--comic-line);background:var(--mint-soft);border-radius:50%;place-items:center;width:138px;height:138px;display:grid;overflow:hidden;box-shadow:4px 4px #dce8df}.onboarding-avatar-preview img{object-fit:cover;width:100%;height:100%;display:block}.onboarding-avatar-preview span{color:#678a80;text-align:center;max-width:80px;font-size:12px;line-height:1.5}.onboarding-avatar-hero>small{color:#6c7871;font-size:11px}.onboarding-avatar-adjust{min-height:40px;color:var(--accent-ink);margin-top:-5px;font-size:12px;font-weight:600}.onboarding-upload{text-align:left;background:#f8fbf7;border:1px dashed #a9bdb2;border-radius:14px;grid-template-columns:42px minmax(0,1fr);align-items:center;column-gap:12px;width:100%;min-height:68px;padding:10px 13px;display:grid}.onboarding-upload>span{color:#47786d;background:#e4efe7;border-radius:11px;grid-row:span 2;place-items:center;width:42px;height:42px;display:grid}.onboarding-upload b{font-size:13px}.onboarding-upload small{color:#78837c;font-size:11px}.onboarding-picker-heading{justify-content:space-between;align-items:center;gap:8px;margin:9px 0 8px;display:flex}.onboarding-picker-heading b{font-size:14px}.onboarding-avatar-picker{width:100%;min-width:0}.onboarding-avatar-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;width:100%;min-width:0;display:grid}.onboarding-avatar-grid button{aspect-ratio:1;border:2px solid #0000;border-radius:15px;min-width:0;padding:3px;position:relative;overflow:hidden}.onboarding-avatar-grid button[aria-pressed=true]{border-color:var(--accent-ink);background:var(--mint-soft)}.onboarding-avatar-grid img{object-fit:cover;border-radius:11px;width:100%;height:100%;display:block}.onboarding-avatar-check{border:2px solid var(--surface);background:var(--accent-ink);color:#fff;border-radius:50%;place-items:center;width:24px;height:24px;display:grid;position:absolute;bottom:0;right:0}.onboarding-avatar-note{color:#78827c;align-items:flex-start;gap:8px;margin-top:15px;font-size:11px;line-height:1.6;display:flex}.onboarding-avatar-note svg{margin-top:1px}.onboarding-text-button{min-height:36px;color:var(--accent-ink);align-items:center;gap:6px;padding:0;font-size:12px;font-weight:600;display:inline-flex}.onboarding-profile-editor{grid-template-columns:minmax(0,1fr);gap:4px;width:100%;min-width:0;padding-bottom:14px;display:grid}.onboarding-profile-editor>input{margin-bottom:14px}.onboarding-profile-editor .onboarding-avatar-hero{margin-top:10px}.onboarding-profile-editor .onboarding-text-button{justify-self:start}.onboarding-profile-editor .onboarding-error{margin:0 0 8px}.onboarding-profile-editor .primary{z-index:2;box-shadow:0 -10px 16px var(--paper);margin-top:13px;position:sticky;bottom:0}.account-profile-sheet{overflow-x:hidden}.account-profile-sheet .sheet-body{min-width:0}.account-profile-sheet input[type=file].sr-only{border:0;width:1px;height:1px;padding:0}.avatar-crop-dialog{border:1px solid var(--line);background:var(--paper);width:min(360px,100% - 32px);max-height:calc(100dvh - 32px);color:var(--ink);border-radius:18px;margin:auto;padding:20px;overflow-y:auto;box-shadow:0 20px 60px #263c3a3d}.avatar-crop-dialog::backdrop{background:#263c3a99}.avatar-crop-dialog h2{font-size:18px}.avatar-crop-dialog>p{color:var(--muted);margin-top:6px;font-size:12px;line-height:1.5}.avatar-crop-stage{aspect-ratio:1;border:3px solid var(--comic-line);background:var(--mint-soft);cursor:grab;touch-action:none;border-radius:50%;width:min(260px,100%);margin:18px auto;position:relative;overflow:hidden}.avatar-crop-stage:active{cursor:grabbing}.avatar-crop-stage img{pointer-events:none;-webkit-user-select:none;user-select:none;max-width:none;max-height:none;display:block;position:absolute}.avatar-crop-zoom{color:var(--ink);gap:8px;font-size:13px;font-weight:600;display:grid}.avatar-crop-zoom input{width:100%;accent-color:var(--accent-ink)}.onboarding-inner .avatar-crop-zoom input[type=range],.onboarding-profile-editor .avatar-crop-zoom input[type=range]{background:0 0;border:0;width:100%;min-height:24px;margin:0;padding:0;display:block}.avatar-crop-dialog .avatar-crop-error{color:var(--danger)}.avatar-crop-actions{grid-template-columns:1fr 1.5fr;gap:8px;margin-top:18px;display:grid}.avatar-crop-actions button{border-radius:11px;min-height:46px;font-size:13px;font-weight:600}.avatar-crop-actions .secondary{border:1px solid var(--line);background:var(--surface)}.avatar-crop-actions .primary{background:var(--accent);color:#173d38}@media (width<=360px){.onboarding-inner,.onboarding-stepbar,.onboarding-dock{padding-left:16px;padding-right:16px}.onboarding-inner h1{font-size:25px}.onboarding-name-hero{min-height:112px}.onboarding-name-hero small{white-space:normal}.onboarding-avatar-preview{width:116px;height:116px}.onboarding-avatar-grid{gap:6px}}@media (height<=740px){.onboarding-inner{padding-top:17px}.onboarding-avatar-hero{margin-top:12px;margin-bottom:14px}.onboarding-name-hero{margin-top:16px;margin-bottom:18px}}:root{--paper:#fbfaf6;--surface:#fffefd;--ink:#283033;--muted:#828785;--line:#e7e6df;--accent:#78b8b0;--accent-ink:#366f67;--mint-soft:#e2efe5;--pink-soft:#f9e4e0;--blue-soft:#e1eef1;--yellow-soft:#fcf1d9;--danger:#a85f52;--comic-line:#30393a;color:#283033;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;letter-spacing:0;background:#e7eeef;font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0}button,a,input,textarea,select{touch-action:manipulation}button:disabled{cursor:not-allowed;opacity:.5}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline-offset:3px;outline:2px solid #468e85}button:not(:disabled):active{transform:translateY(1px)}h1,h2,h3,p{margin:0}h1{font-size:23px;font-weight:700;line-height:1.4}h2{font-size:16px;font-weight:600;line-height:1.5}h3{font-size:15px;font-weight:600;line-height:1.5}svg{flex-shrink:0}button,h1,h2,h3,p,span{overflow-wrap:anywhere}.app[data-theme=B]{--paper:#fbfaf6;--surface:#fffefd;--ink:#283033;--muted:#828785;--line:#e7e6df;--accent:#78b8b0;--accent-ink:#366f67;--mint-soft:#e2efe5;--comic-line:#30393a;--danger:#a85f52;--user-bubble:#e0ecd7;--pink:#f9e4e0;--blue:#e1eef1;--yellow:#fcf1d9;--radius:17px;--bubble-radius:17px 16px 18px 7px}.app{background:var(--paper);max-width:440px;height:100dvh;min-height:420px;color:var(--ink);flex-direction:column;margin:0 auto;display:flex;position:relative;overflow:hidden;box-shadow:0 0 70px #29464c12}.mascot{object-fit:contain;-webkit-user-select:none;user-select:none;width:100%;height:auto;display:block}.illustration{object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:none;display:block}.icon-button{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:42px;display:inline-flex}.icon-button:hover{background:#e8eeea}.screen-scroll{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#cfdcd500 transparent;flex:1;min-height:0;overflow-y:auto}.screen-scroll:hover{scrollbar-color:#cfdcd5 transparent}.padded{padding:5px 21px 30px}.page-header{padding:max(20px, env(safe-area-inset-top)) 15px 14px;flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;min-height:82px;display:flex}.page-header h1{text-align:center;font-size:23px}.library-title-with-help{white-space:nowrap;justify-content:center;align-items:center;gap:2px;display:inline-flex}.library-title-with-help .icon-button{width:44px;height:44px;color:var(--accent-ink)}.library-title-with-help .icon-button svg{width:18px;height:18px}.people-help{gap:14px;padding:5px 0 18px;display:grid}.people-help p{font-size:14px;line-height:1.75}.people-help-rule{background:var(--mint-soft);color:var(--accent-ink);border:1px solid #bed7c9;border-radius:12px;align-items:flex-start;gap:9px;padding:13px 14px;font-weight:600;display:flex}.people-help-rule svg{margin-top:3px}.header-mark,.header-spacer{flex-shrink:0;width:40px}.header-mark{padding:7px 3px}.header-actions{justify-content:flex-end;align-items:center;min-width:40px;display:flex}.header-actions .icon-button{width:35px}.delete-trigger{color:#a85f52}.chat-header{padding:max(18px, env(safe-area-inset-top)) 13px 13px 8px;border-bottom:1px solid #efeee8;flex-shrink:0;align-items:center;gap:10px;min-height:88px;display:flex}.chat-header .header-avatar{background:var(--blue);border-radius:48% 53% 46% 51%;flex-shrink:0;align-items:center;width:49px;height:49px;padding:7px 3px;display:flex}.chat-header h1{margin-bottom:4px;font-size:25px}.chat-header>.icon-button:last-child{margin-left:auto}.chat-meta{justify-content:space-between;align-items:center;gap:10px;margin:0 0 6px;display:flex}.chat-meta>span{color:#929892;font-size:10px}.agent-row{align-items:flex-start;gap:10px;margin:0 0 14px;display:flex}.agent-avatar{background:#edf2f0;border:1px solid #bed5d8;border-radius:44% 49% 45% 50%;flex:0 0 36px;align-items:center;width:36px;height:36px;padding:5px 2px;display:flex}.agent-content{min-width:0;max-width:calc(100% - 46px)}.bubble{border-radius:var(--bubble-radius);white-space:pre-wrap;overflow-wrap:anywhere;background:#fffefd;border:1px solid #e8e5de;padding:12px 14px;font-size:14px;line-height:1.75;display:inline-block;box-shadow:0 2px 3px #535d4804}.agent-content time,.user-row time{color:#a0a5a0;align-items:center;gap:4px;margin:7px 3px 0;font-size:10px;line-height:1;display:flex}.agent-content time{justify-content:flex-end}.user-row{flex-direction:column;align-items:flex-end;margin:0 0 17px 38px;display:flex}.user-bubble{background:var(--user-bubble);border:0;border-radius:17px 18px 6px;padding:14px 16px}.card-row{margin-top:-6px}.card-row .agent-avatar{visibility:hidden}.saved-card{background:#fffefd;border:1px solid #e5e5db;border-radius:13px;padding:13px 12px 12px;box-shadow:0 3px 7px #4a675308}.saved-title{align-items:center;gap:7px;margin-bottom:10px;font-size:13px;display:flex}.saved-title svg:first-child{color:var(--accent-ink)}.saved-title svg:last-child{color:var(--accent-ink);margin-left:auto}.saved-copy{align-items:flex-start;gap:11px;display:flex}.saved-copy p{-webkit-line-clamp:4;-webkit-box-orient:vertical;flex:1;font-size:13px;line-height:1.85;display:-webkit-box;overflow:hidden}.entry-artwork{color:#8ba394;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.entry-artwork .illustration{width:100%;height:100%}.entry-artwork.has-story{background:#f1f4ec;padding:0}.entry-artwork.emotion-cover{box-shadow:none;background:0 0;border:none;padding:0;overflow:visible}.entry-artwork .mascot-cover{object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:none;width:100%;height:100%;transition:transform .2s cubic-bezier(.34,1.56,.64,1)}.diary-card:hover .entry-artwork .mascot-cover{transform:scale(1.08)}.saved-art{flex:0 0 77px;height:84px}.feeling-line{color:#8d7c78;align-items:flex-start;gap:5px;margin-top:10px;font-size:10px;line-height:1.7;display:flex}.feeling-line svg{margin-top:3px}.saved-actions{gap:5px;margin-top:13px;display:flex}.saved-actions button{white-space:normal;background:#fff;border:1px solid #deded7;border-radius:8px;flex:1;min-height:34px;padding:6px 4px;font-size:11px}.saved-actions button:first-child{color:#3b6c52;border-color:#96c5aa}.saved-actions button:hover{background:#f2f6ee}.composer{background:var(--paper);flex-shrink:0;padding:9px 16px 16px}.composer-box{background:#fffefd;border:1px solid #dedfd6;border-radius:18px;align-items:flex-end;gap:8px;padding:7px 7px 7px 14px;display:flex}.composer-box:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px #78b8b012}.composer textarea{resize:none;field-sizing:content;background:0 0;border:0;outline:none;flex:1;min-width:0;min-height:31px;max-height:115px;padding:5px 0;font-size:13px;line-height:1.65}textarea::placeholder,input::placeholder{color:#9c9f98}.send-button{background:var(--accent);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:33px;height:33px;display:flex}.send-button:disabled{opacity:1;color:#92a392;background:#e7eee6}.bottom-nav{isolation:isolate;padding:2px 10px max(8px, env(safe-area-inset-bottom));height:calc(71px + env(safe-area-inset-bottom));z-index:4;background:#fffefa;flex-shrink:0;grid-template-columns:repeat(5,minmax(0,1fr));display:grid;position:relative}.bottom-nav:before{background:var(--line);content:"";pointer-events:none;z-index:0;height:1px;position:absolute;inset:0 0 auto}.bottom-nav:after{border:1px solid var(--line);clip-path:inset(0 0 44px);content:"";pointer-events:none;z-index:1;background:#fffefa;border-radius:50%;width:60px;height:60px;position:absolute;top:-15px;left:50%;transform:translate(-50%)}.bottom-nav button{color:#737a78;z-index:2;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:0;padding:4px 0 2px;display:flex;position:relative}.bottom-nav button>span{justify-content:center;align-items:center;width:43px;height:40px;display:flex}.bottom-nav-icon{object-fit:contain;opacity:.84;filter:saturate(.88);width:40px;height:40px;transition:opacity .16s,filter .16s,transform .16s;display:block;transform:scale(.96)}.bottom-nav small{font-size:10px;line-height:1.4}.bottom-nav .active:not(.write-tab){color:#294d47}.bottom-nav .active:not(.write-tab) .bottom-nav-icon{opacity:1;filter:saturate();transform:scale(1.04)}.bottom-nav .write-tab>span{width:50px;height:46px;margin:0;position:relative;transform:translateY(-7px)}.bottom-nav .write-tab .bottom-nav-icon{opacity:1;filter:saturate(.96);width:48px;height:48px;position:relative}.bottom-nav .write-tab small{color:#4d5e59;font-weight:700}.bottom-nav .write-tab.active small{color:var(--accent-ink)}.character-page{background:var(--paper);flex-direction:column;flex:1;min-height:0;display:flex}.character-page-header{min-height:68px;padding:max(10px, env(safe-area-inset-top)) 12px 8px;flex:none;grid-template-columns:72px minmax(0,1fr) 72px;align-items:center;display:grid}.character-page-header button{border-radius:50%;place-items:center;width:44px;height:44px;display:grid}.character-page-header button:hover{background:#edf1ed}.character-page-header h1{text-align:center;min-width:0;font-size:23px}.character-page-header .character-exit-flow{width:72px;height:44px;color:var(--accent-ink);white-space:nowrap;border-radius:8px;font-size:12px}.character-steps{flex:none;grid-template-columns:repeat(3,minmax(0,1fr));padding:7px 20px 13px;display:grid;position:relative}.character-steps:before{content:"";background:#dfe4df;height:1px;position:absolute;top:21px;left:18%;right:18%}.character-steps>div{z-index:1;color:#9a9e9a;justify-items:center;gap:5px;display:grid}.character-steps span{background:#e9ece9;border-radius:50%;place-items:center;width:30px;height:30px;font-size:12px;font-weight:700;display:grid}.character-steps small{text-align:center;font-size:10px;line-height:1.4}.character-steps .active,.character-steps .done{color:var(--ink)}.character-steps .active span{background:var(--accent);color:#fff}.character-steps .done span{color:var(--accent-ink);background:#d7eeea}.character-scroll{overscroll-behavior:contain;flex:1;min-height:0;padding:16px 20px 120px;overflow-y:auto}.character-gallery-intro{color:var(--muted);margin:0 0 20px;font-size:14px;line-height:1.6}.character-gallery-section-title{margin:0 0 12px;font-size:18px;line-height:26px}.character-resume{border:1.5px solid var(--comic-line);background:var(--surface);box-shadow:3px 3px 0 var(--mint-soft);text-align:left;border-radius:14px;align-items:center;gap:12px;margin-bottom:20px;padding:12px 14px;display:flex}.character-resume-mark{border:1.5px solid var(--comic-line);background:var(--mint-soft);width:32px;height:32px;color:var(--accent-ink);border-radius:9px;flex:0 0 32px;place-items:center;display:grid}.character-resume-body{flex:1;min-width:0}.character-resume-body b{color:var(--ink);font-size:13px;font-weight:600;line-height:1.4;display:block}.character-resume-body p{color:var(--muted);margin-top:2px;font-size:11px;line-height:1.4}.character-resume-actions{flex:none;align-items:center;gap:10px;margin-left:auto;display:flex}.character-resume-discard{min-height:32px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:0 8px;font-size:12px;font-weight:500;transition:color .15s,background .15s;display:inline-flex}.character-resume-discard:hover{color:var(--danger);background:#fdf2f0}.character-resume-continue{border:1.5px solid var(--comic-line);background:var(--accent);color:#fff;min-width:58px;height:32px;box-shadow:1.5px 1.5px 0 var(--comic-line);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:0 12px;font-size:12px;font-weight:600;transition:transform .1s,box-shadow .1s;display:inline-flex}.character-resume-continue:hover{box-shadow:2px 2px 0 var(--comic-line);transform:translate(-.5px,-.5px)}.character-resume-continue:active{box-shadow:none;transform:translate(1px,1px)}.character-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.character-overview-grid button{border:2px solid var(--comic-line);background:var(--surface);min-width:0;box-shadow:3px 3px 0 var(--mint-soft);text-align:left;border-radius:16px;overflow:hidden}.character-overview-grid button:hover,.character-overview-grid button:focus-visible{border-color:var(--accent)}.character-overview-grid img{aspect-ratio:1;object-fit:cover;background:var(--mint-soft);width:100%;display:block}.character-overview-grid span{flex-direction:column;justify-content:space-between;align-items:flex-start;gap:4px;min-height:64px;padding:8px 10px;display:flex}.character-overview-grid b{min-width:0;font-size:13px;line-height:1.4}.character-overview-grid small{background:var(--mint-soft);color:var(--accent-ink);border-radius:6px;flex:none;padding:2px 6px;font-size:10px}.character-create-style{border:1px solid var(--line);background:var(--surface);width:100%;min-height:52px;color:var(--accent-ink);border-radius:12px;justify-content:center;align-items:center;gap:8px;margin-top:16px;font-size:14px;font-weight:600;display:flex}.character-gallery-link{min-height:40px;color:var(--accent-ink);margin:-8px auto 5px 0;font-size:12px;display:block}.character-form-step{align-content:start;gap:24px;display:grid}.character-form-step-content{align-content:start;gap:24px;min-width:0;display:grid}.character-form-step-content section{min-width:0}.character-avatar-reuse{border:1px solid var(--line);background:var(--surface);width:100%;min-height:68px;color:var(--accent-ink);text-align:left;border-radius:12px;align-items:center;gap:12px;margin-bottom:12px;padding:9px 12px;font-size:13px;font-weight:600;display:flex}.character-avatar-reuse img{object-fit:cover;border-radius:9px;flex:0 0 44px;width:44px;height:44px}.character-form-step section{min-width:0}.character-form-step h2,.character-field-label{margin-bottom:10px;font-size:16px;font-weight:650;line-height:1.5;display:block}.character-upload{color:#7c8787;background:#fffefd;border:1px dashed #cbd3d0;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:7px;width:100%;min-height:150px;display:flex}.character-upload svg{width:32px;height:32px}.character-upload b{color:var(--ink);font-size:15px}.character-upload span{font-size:11px}.character-upload.filled{border-style:solid;min-height:180px;padding:0;position:relative;overflow:hidden}.character-upload.filled>img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.character-upload.filled>div{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffefde8;border-radius:11px;justify-content:center;align-items:center;gap:8px;padding:7px;display:flex;position:absolute;bottom:10px;left:10px;right:10px}.character-upload.filled button{min-height:36px;padding:7px 12px;font-size:11px}.character-help{color:var(--muted);margin-top:8px;font-size:10px;line-height:1.65}.character-form-step-content textarea{border:1px solid var(--line);background:var(--surface);resize:vertical;border-radius:12px;width:100%;min-height:112px;padding:13px 14px;font-size:13px;line-height:1.7}.character-form-step-content textarea:focus{border-color:var(--accent)}.character-count{color:var(--muted);text-align:right;margin-top:5px;font-size:9px}.character-tags{border:1px solid var(--line);background:var(--surface);border-radius:16px;gap:12px;padding:16px;display:grid}.character-tags-heading h2{margin:0;font-size:18px;line-height:26px}.character-tags-heading p{color:var(--muted);margin-top:4px;font-size:12px;line-height:18px}.character-tag-categories{border-bottom:1px solid var(--line);scrollbar-width:none;gap:20px;margin:0 -16px;padding:0 16px;display:flex;overflow-x:auto}.character-tag-categories::-webkit-scrollbar{display:none}.character-tag-categories button{min-height:44px;color:var(--muted);white-space:nowrap;border-bottom:3px solid #0000;flex:none;padding:8px 0 6px;font-size:13px}.character-tag-categories button.active{border-color:var(--accent-ink);color:var(--ink);font-weight:600}.character-tag-panel{background:var(--paper);border-radius:12px;min-height:128px;padding:12px}.character-tag-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.character-tag-options button{border:1px solid var(--line);background:var(--surface);text-align:left;border-radius:8px;justify-content:space-between;align-items:center;gap:4px;min-width:0;min-height:44px;padding:8px 10px 8px 12px;font-size:13px;line-height:20px;display:flex}.character-tag-options button:focus-visible{border-color:var(--accent);background:var(--mint-soft)}@media (hover:hover){.character-tag-options button:hover{border-color:var(--accent);background:var(--mint-soft)}}.character-tag-options button span{background:var(--mint-soft);width:20px;height:20px;color:var(--accent-ink);border-radius:50%;flex:0 0 20px;place-items:center;font-size:15px;line-height:1;display:grid}.character-tag-help{color:var(--muted);font-size:12px;line-height:18px}.character-tag-feedback{min-height:18px;color:var(--accent-ink);font-size:12px;line-height:18px}.character-tag-feedback:empty{display:none}.character-bottom-action{z-index:5;padding:11px 20px max(15px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fbfaf6f4;border-top:1px solid #e8e6df;flex:none;gap:5px;display:grid}.character-bottom-action>p{color:var(--danger);text-align:center;font-size:10px}.character-bottom-buttons{grid-template-columns:minmax(88px,1fr) minmax(0,2fr);gap:8px;display:grid}.character-bottom-buttons .secondary{border:1px solid var(--line);background:var(--surface);border-radius:12px;min-height:52px;font-size:14px;font-weight:600}.character-bottom-action .primary{background:var(--accent);color:#173d38;border-radius:14px;justify-content:center;align-items:center;gap:7px;min-height:52px;font-size:15px;font-weight:700;display:flex}.character-bottom-action .primary:disabled{color:#969b98;opacity:1;background:#e1e3e1}.character-style-step>h2,.character-preview-step>h2{font-size:19px;line-height:1.4}.character-style-step>p{color:var(--muted);margin-top:4px;font-size:11px}.character-style-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:15px;display:grid}.character-style-grid>button{border:1px solid var(--line);background:var(--surface);text-align:left;border-radius:14px;min-width:0;overflow:hidden}.character-style-grid>button.selected{border:2px solid var(--accent);background:#eff8f5;box-shadow:0 0 0 2px #78b8b01a}.character-style-grid img{aspect-ratio:3/2;object-fit:contain;width:100%;display:block}.character-style-grid>button>span{align-items:center;gap:7px;min-width:0;padding:9px 10px 2px;display:flex}.character-style-grid i{color:#fff;border:2px solid #657174;border-radius:50%;flex:0 0 20px;place-items:center;width:20px;height:20px;font-style:normal;display:grid}.character-style-grid .selected i{background:#2c9a90;border-color:#2c8980}.character-style-grid b{min-width:0;font-size:13px;line-height:1.4}.character-style-grid small{min-height:36px;color:var(--muted);padding:3px 10px 9px 37px;font-size:9px;line-height:1.5;display:block}.character-batch-results>h2,.character-creator>h3{font-size:18px;line-height:26px}.character-batch-results>p{color:var(--muted);margin:4px 0 16px;font-size:12px;line-height:18px}.character-batch-list{gap:12px;display:grid}.character-batch-card{border:2px solid var(--comic-line);background:var(--surface);min-width:0;box-shadow:3px 3px 0 var(--mint-soft);border-radius:16px;grid-template-columns:92px minmax(0,1fr);align-items:center;gap:12px;padding:10px;display:grid}.character-batch-art{aspect-ratio:1;background:var(--mint-soft);width:92px;color:var(--accent-ink);border-radius:10px;place-items:center;display:grid;overflow:hidden}.character-batch-art img{object-fit:cover;width:100%;height:100%;display:block}.character-batch-card>div:last-child{min-width:0}.character-batch-card h3,.character-batch-card h4{font-size:15px;line-height:22px}.character-batch-card p{color:var(--muted);overflow-wrap:anywhere;margin:4px 0;font-size:12px;line-height:18px}.character-batch-card.failed .character-batch-art{background:var(--pink-soft);color:var(--danger)}.character-batch-retry{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.character-batch-retry button{border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:34px;padding:0 10px;font-size:12px;display:inline-flex}.character-batch-retry .secondary{border:1px solid var(--line);background:var(--surface);color:var(--ink);font-weight:500}.character-batch-retry .character-batch-edit{border:1.5px solid var(--comic-line);background:var(--surface);color:var(--accent-ink);box-shadow:1.5px 1.5px 0 var(--comic-line);cursor:pointer;font-weight:600;text-decoration:none}.character-batch-retry .character-batch-edit:hover{background:var(--mint-soft)}.character-generation-background{border:1.5px solid var(--comic-line);background:var(--surface);box-shadow:3px 3px 0 var(--blue-soft);color:var(--ink);border-radius:14px;margin:-8px 0 0;padding:12px 14px;font-size:13px;line-height:20px}.character-batch-card button{border:1px solid var(--line);border-radius:8px;min-height:36px;padding:6px 10px;font-size:12px}.character-batch-done{border:1px solid var(--line);background:var(--surface);border-radius:12px;width:100%;min-height:48px;margin-top:20px}.character-review-link{min-height:40px;color:var(--accent-ink);text-underline-offset:3px;margin:10px auto 0;padding:8px 12px;font-size:11px;text-decoration:underline;display:block}.character-error{border:1.5px solid var(--comic-line);background:var(--surface);min-height:42px;box-shadow:2px 2px 0 var(--pink-soft);color:var(--danger);border-radius:12px;align-items:center;gap:8px;margin:0 20px 8px;padding:8px 10px 8px 12px;font-size:12px;line-height:1.5;display:flex}.character-error>button{place-items:center;width:30px;height:30px;margin-left:auto;display:grid}.character-route-state,.character-generating{min-height:280px;color:var(--muted);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;padding:30px;display:flex}.character-route-state svg,.character-generating>span{color:var(--accent-ink)}.character-generating>span{background:var(--mint-soft);border-radius:50%;place-items:center;width:62px;height:62px;display:grid}.character-generating h2{color:var(--ink);font-size:18px}.character-generating p{max-width:280px;font-size:11px;line-height:1.7}.character-generating button{min-height:42px;padding:8px 14px}.character-preview-step{text-align:center}.character-result-card{border:2px solid var(--comic-line);background:var(--surface);border-radius:18px 18px 15px 20px;margin:15px 0 10px;position:relative;overflow:hidden;box-shadow:4px 4px #dce9e3}.character-result-card img{aspect-ratio:1;object-fit:cover;width:100%;display:block}.character-result-card>span{color:var(--accent-ink);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#d9eee9e8;border-radius:14px;padding:6px 10px;font-size:10px;font-weight:650;position:absolute;top:12px;left:12px}.character-result-state{font-size:12px;display:block}.character-preview-step>p{color:var(--muted);margin-top:5px;font-size:10px;line-height:1.7}.character-description-used{text-align:left;margin-top:24px}.character-description-used>p{border:1px solid var(--line);background:var(--surface);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:12px;margin-top:12px;padding:12px 14px;font-size:14px;line-height:21px}.character-preview-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:17px;display:grid}.character-preview-actions button{border:1px solid var(--line);background:var(--surface);border-radius:12px;min-height:46px;font-size:12px}.character-preview-actions .primary{background:var(--accent);color:#173d38;border-color:#0000;justify-content:center;align-items:center;gap:7px;font-weight:700;display:inline-flex}.character-preview-actions button:only-child{grid-column:1/-1}.character-create-note,.character-form-note{color:var(--muted);text-align:left;margin-top:10px;font-size:11px;line-height:1.6}.character-form-note{margin-top:-8px}.character-history{text-align:left;margin-top:26px}.character-history h3{margin-bottom:10px}.character-history>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.character-history-card{border:1px solid var(--line);background:var(--surface);border-radius:10px;min-width:0;position:relative;overflow:hidden}.character-history-card.active{background:var(--mint-soft)}.character-history-card.previewing{border:2px solid var(--accent);box-shadow:0 0 0 2px #78b8b01a}.character-history-select{text-align:center;background:0 0;width:100%;display:block}.character-history-select:focus-visible{outline:2px solid var(--accent-ink);outline-offset:-2px}.character-history img{aspect-ratio:1;object-fit:cover;width:100%;display:block}.character-history-select span{text-overflow:ellipsis;white-space:nowrap;padding:5px;font-size:9px;display:block;overflow:hidden}.character-history-select>svg{color:#fff;background:#278f85;border-radius:50%;padding:2px;position:absolute;top:5px;right:5px}.character-history-delete{width:44px;height:44px;color:var(--danger);border-radius:8px;place-items:center;margin:0 3px 3px auto;display:grid}.character-history-delete:hover,.character-history-delete:focus-visible{background:#f9e4e0}.character-version-dialog[open]{align-self:center;height:auto;min-height:250px;max-height:calc(100dvh - 38px);display:block;overflow-y:auto}@media (width<=360px){.character-overview-grid{gap:9px}.character-page-header h1{font-size:20px}.character-steps,.character-scroll,.character-bottom-action{padding-left:16px;padding-right:16px}.character-style-grid{gap:9px}.character-style-grid>button>span{padding-left:7px;padding-right:7px}.character-style-grid b{font-size:12px}.character-style-grid small{padding-left:34px}.character-tags{padding:12px}.character-tag-categories{margin-left:-12px;margin-right:-12px;padding-left:12px;padding-right:12px}}.home-top{padding:max(10px, env(safe-area-inset-top)) 18px 0 23px;flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.home-top .icon-button{height:36px}.home-top>span{font-size:14px;font-weight:600}.home-top>div{display:flex}.home-scroll{padding:0 23px 26px}.greeting{padding:9px 0 6px}.greeting h1{font-size:26px;line-height:1.5}.greeting p:last-child{color:#767d73;margin-top:3px;font-size:12px}.welcome-art{object-position:center bottom;width:100%;height:120px;margin-top:5px}.section-title{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.section-title button{color:#8c918c;align-items:center;gap:3px;padding:4px 0;font-size:11px;display:inline-flex}.section-title>span{color:var(--muted);font-size:10px}.diary-card{text-align:left;background:#fffefd;border:1px solid #e9e6df;border-radius:15px;align-items:center;gap:13px;width:100%;padding:13px;display:flex;box-shadow:0 2px 5px #62635505}.diary-card:hover{border-color:#b8cec2}.diary-copy{flex:1;min-width:0}.date-line{align-items:baseline;gap:6px;margin-bottom:7px;display:flex}.date-line b{font-size:12px}.date-line>span{color:#7e8580;font-size:10px}.date-line small{color:#9ba09a;margin-left:auto;font-size:9px}.diary-card p{color:#7c827c;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11px;line-height:1.85;display:-webkit-box;overflow:hidden}.diary-card h3{margin-bottom:5px;font-size:13px}.diary-art{flex:0 0 74px;height:78px}.entry-meta{color:#91988f;align-items:center;gap:10px;margin-top:10px;font-size:9px;display:flex}.entry-meta>span{align-items:center;gap:3px;display:flex}.library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0;display:grid}.library-tile{text-align:left;border:1px solid #666b5910;border-radius:12px;align-items:center;gap:7px;min-height:80px;padding:12px 9px;display:flex}.library-tile:hover{border-color:#8caa9980}.library-tile>span{min-width:0}.library-tile.people{background:#fbefd9}.library-tile.places{background:#e8f0e7}.library-tile.media{background:#f0e8ef}.library-tile.thoughtsBook{background:#fce9df}.library-tile.experiences{background:#e7eff2}.library-tile.album{background:#edf3f6}.library-tile b{font-size:14px;font-weight:600}.library-tile small{color:#737b72;margin-top:4px;font-size:10px;line-height:1.6;display:block}.library-tile>svg{display:none}.library-icon{flex:0 0 47px;width:47px;height:47px}.album-gallery{padding:4px 0 32px}.album-month{margin-bottom:24px}.album-month-heading{justify-content:space-between;align-items:baseline;gap:12px;padding:8px 20px 12px;display:flex}.album-month-heading h2{font-size:18px;line-height:26px}.album-month-heading span{color:var(--muted);white-space:nowrap;font-size:12px}.album-day{margin-bottom:16px}.album-day h3{color:var(--muted);padding:0 20px 8px;font-size:12px;font-weight:500;line-height:18px}.album-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;display:grid}.album-grid button{aspect-ratio:1;background:var(--line);min-width:0;padding:0;position:relative;overflow:hidden}.album-grid img{object-fit:cover;width:100%;height:100%;display:block}.album-grid button:focus-visible{z-index:1;outline-offset:-3px}.album-load-state,.album-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:55%;padding:32px 20px;display:flex}.album-load-state{color:var(--muted);flex-direction:row;font-size:14px}.album-empty img{object-fit:contain;width:96px;height:96px}.album-empty p{max-width:280px;color:var(--muted);font-size:14px;line-height:21px}.album-empty button{margin-top:8px}.album-more{width:calc(100% - 40px);min-height:44px;color:var(--accent-ink);justify-content:center;align-items:center;gap:8px;margin:0 20px;font-size:14px;font-weight:600;display:flex}.album-more-error{color:var(--danger);text-align:center;padding:0 20px;font-size:12px}.album-more-error button{min-height:44px;color:var(--accent-ink);text-decoration:underline}.album-viewer{--viewer-bg:#1c2526;width:min(440px,100vw);max-width:none;height:100dvh;max-height:none;padding:max(12px, env(safe-area-inset-top)) 0 max(12px, env(safe-area-inset-bottom));background:var(--viewer-bg);color:#fff;border:0;margin:auto;overflow:hidden}.album-viewer[open]{grid-template-rows:52px minmax(0,1fr) auto;display:grid}.album-viewer::backdrop{background:#111819dd}.album-viewer-header{justify-content:space-between;align-items:center;padding:0 12px 0 20px;display:flex}.album-viewer-header>div{flex-direction:column;gap:2px;display:flex}.album-viewer-header strong{font-size:14px;line-height:20px}.album-viewer-header span{color:#b9c4c1;font-size:11px}.album-viewer-header button{color:#fff;place-items:center;width:44px;height:44px;display:grid}.album-viewer-stage{touch-action:pan-y;min-width:0;min-height:0;position:relative;overflow:hidden}.album-viewer-stage>img{object-fit:contain;width:100%;height:100%;display:block;position:absolute;inset:0}.album-viewer-stage>button{color:#fff;background:#172021a8;place-items:center;width:44px;height:48px;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.album-viewer-stage>button:disabled{opacity:0;pointer-events:none}.album-viewer-prev{border-radius:0 12px 12px 0;left:0}.album-viewer-next{border-radius:12px 0 0 12px;right:0}.album-viewer-story{background:var(--surface);color:var(--ink);border-radius:16px 16px 0 0;padding:8px 20px;overflow:hidden}.album-viewer-story.expanded{max-height:52dvh;overflow-y:auto}.album-story-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.album-story-heading h2{font-size:16px;line-height:24px}.album-story-heading button{width:44px;height:44px;color:var(--muted);flex:0 0 44px;place-items:center;display:grid}.album-viewer-story.expanded .album-story-heading button svg{transform:rotate(180deg)}.album-story-text{color:var(--ink);white-space:pre-wrap;margin-top:12px;font-size:14px;line-height:21px}.album-story-text p+p{margin-top:12px}.album-story-state{color:var(--muted);align-items:center;gap:8px;margin-top:12px;font-size:13px;line-height:20px;display:flex}.album-story-state button{color:var(--accent-ink);text-decoration:underline}.album-story-link{border-top:1px solid var(--line);width:100%;min-height:48px;color:var(--accent-ink);text-align:left;justify-content:space-between;align-items:center;gap:8px;margin-top:10px;padding:0;font-size:13px;font-weight:600;text-decoration:none;display:flex}.album-story-link:focus-visible{outline:2px solid var(--accent-ink);outline-offset:2px}@media (width<=360px){.album-month-heading,.album-day h3,.album-viewer-story{padding-left:16px;padding-right:16px}}.membership-page{padding:4px 18px 30px}.membership-hero{background:linear-gradient(135deg,#e5f6fd,#dceff8);border:1px solid #c6e2ed;border-radius:20px;grid-template-columns:41% minmax(0,1fr);align-items:center;gap:10px;min-height:178px;padding:18px 14px;display:grid;box-shadow:0 3px #cbe1e828}.membership-hero-art{justify-content:center;align-self:stretch;align-items:center;display:flex;position:relative}.membership-hero-art .illustration{width:112px;height:112px}.membership-hero-art>span{color:#fff;background:#f47d8c;border-radius:14px 15px 13px 12px;align-items:center;gap:4px;padding:6px 9px;font-size:10px;font-weight:700;display:inline-flex;position:absolute;bottom:2px;left:0;transform:rotate(-3deg);box-shadow:2px 3px #d55a6b24}.membership-hero h1{white-space:pre-line;font-size:23px;line-height:1.55}.membership-hero p{color:#687c87;margin-top:9px;font-size:11px;line-height:1.8}.membership-benefits{margin-top:22px}.membership-benefits>h2{align-items:center;gap:8px;margin:0 5px 12px;font-size:17px;display:flex}.membership-benefits>h2 span{color:#f4c846;font-size:23px;transform:rotate(-12deg)}.membership-benefits>div{gap:10px;display:grid}.membership-benefit{border:1px solid #eadfc7;border-radius:17px;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:11px;min-height:90px;padding:13px 15px;display:grid;position:relative;overflow:hidden}.membership-benefit>span{color:#33494d;background:#fffdf7;border:2px solid #263437;border-radius:13px;justify-content:center;align-items:center;width:51px;height:51px;display:flex;transform:rotate(-4deg);box-shadow:2px 2px #26343710}.membership-benefit h3{font-size:15px;line-height:1.45}.membership-benefit p{color:#78817e;margin-top:4px;font-size:10px;line-height:1.65}.membership-benefit>i{color:#e5b43e;opacity:.72;font-size:20px;font-style:normal;position:absolute;top:12px;right:12px;transform:rotate(-25deg)}.membership-benefit.benefit-1{background:#fff7e5}.membership-benefit.benefit-2{background:#edf7ef;border-color:#d6e8d9}.membership-benefit.benefit-2>i{color:#79c879}.membership-benefit.benefit-3{background:#f7edf7;border-color:#e6d7e7}.membership-benefit.benefit-3>i{color:#bc89d0}.membership-promise{background:linear-gradient(135deg,#f9f1fb,#f3e9f8);border:1px solid #e3d8eb;border-radius:18px;align-items:center;min-height:104px;margin-top:14px;padding:13px 12px 9px 18px;display:flex;overflow:hidden}.membership-promise>div{flex:1;align-items:center;gap:11px;min-width:0;display:flex}.membership-promise>div>svg{color:#e9bd4d;fill:#ffe084;stroke:#263437}.membership-promise b{font-size:16px;display:block}.membership-promise p{color:#8b8191;margin-top:5px;font-size:10px}.membership-promise .mascot{align-self:flex-end;width:91px;margin:0 -5px -13px 5px}.membership-actions{text-align:center;padding:18px 10px 5px}.membership-cta{color:#233035;background:linear-gradient(90deg,#ffd969,#ffe58e);border:2px solid #263437;border-radius:28px;width:100%;min-height:52px;font-size:17px;font-weight:700;box-shadow:0 3px #2634371f}.membership-later{color:#909592;text-underline-offset:3px;margin-top:10px;padding:6px 12px;font-size:11px;text-decoration:underline}.daily-note{background:#fcf3de;border-radius:12px;align-items:center;gap:7px;padding:14px;display:flex}.daily-note>div{flex:1;min-width:0}.daily-note h2{margin-bottom:8px;font-size:13px}.daily-note p{white-space:pre-line;color:#8b8167;font-size:12px;line-height:1.9}.daily-note-art{flex-shrink:0;width:102px;height:70px}.home-journal-section{margin-top:23px}.segmented{background:#eeeee9;border-radius:25px;gap:3px;padding:4px;display:flex}.segmented button{color:#90928d;border-radius:22px;flex:1;min-width:0;padding:8px 6px;font-size:12px}.segmented .active{color:var(--ink);background:#fffefb;box-shadow:0 2px 6px #6c776810}.calendar{padding:11px 0 3px}.month-bar{justify-content:space-between;align-items:center;margin-bottom:3px;display:flex}.month-bar h2{font-size:15px}.month-bar .icon-button{width:31px}.calendar-grid{text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:41px;display:grid}.calendar-grid .weekday{color:#929892;align-self:center;font-size:10px}.calendar-grid button{flex-direction:column;justify-content:center;align-items:center;padding:0;font-size:12px;display:flex;position:relative}.calendar-grid button>span{border-radius:50%;justify-content:center;align-items:center;width:31px;height:30px;display:flex}.calendar-grid .is-today>span{outline:1px solid #99beb0}.calendar-grid .selected>span{color:#284c39;background:#bad5b0;outline:none}.calendar-grid button:hover>span{background:#e6eddf}.calendar-grid i{background:#8ab798;border-radius:50%;width:3px;height:3px;position:absolute;bottom:1px}.calendar-grid i.photo-dot{background:#d59b73;border-radius:1px;width:5px;height:4px;transform:translate(5px)}.calendar-grid i.comic-mark{color:#d5a93b;background:0 0;width:auto;height:auto;font-size:9px;font-style:normal;line-height:1;bottom:-3px;left:calc(50% - 10px)}.calendar-legend{color:var(--muted);justify-content:center;align-items:center;gap:16px;margin:12px 0 3px;font-size:11px;display:flex}.calendar-legend span{align-items:center;gap:6px;display:inline-flex}.calendar-legend i{flex:none;display:inline-block}.calendar-legend .journal-mark{background:#8ab798;border-radius:50%;width:7px;height:7px}.calendar-legend .photo-mark{background:#d59b73;border-radius:2px;width:8px;height:7px}.calendar-legend .comic-mark{color:#d5a93b;font-size:12px;line-height:1}.journal-toolbar{margin-top:22px}.journal-toolbar select{color:#7f877d;background:0 0;border:0;max-width:125px;padding:5px 3px;font-size:11px}.app[data-route=journal] .page-header{min-height:68px;padding:max(11px, env(safe-area-inset-top)) 16px 9px}.app[data-route=journal] .page-header .header-mark{width:48px;padding:0}.app[data-route=journal] .page-header .header-mark .mascot{width:42px}.app[data-route=journal] .page-header h1{z-index:0;letter-spacing:.08em;font-size:24px;position:relative}.app[data-route=journal] .page-header h1:after{z-index:-1;content:"";background:#dceee3;border-radius:50%;height:8px;position:absolute;bottom:1px;left:-8px;right:-8px;transform:rotate(-2deg)}.app[data-route=journal] .page-header .icon-button{width:48px}.journal-page{padding:2px 20px 30px}.journal-page .journal-switch{background:#fffdf9;border:2px solid #30393a;border-radius:18px;padding:3px;box-shadow:4px 5px #efe8de}.journal-page .journal-switch button{color:#626a69;border-radius:14px;min-height:34px;font-size:13px}.journal-page .journal-switch .active{color:#263133;box-shadow:none;background:#e2f0e7;font-weight:700}.journal-page .calendar{background:#fffefa;border:2px solid #30393a;border-radius:22px 26px 19px 25px;margin-top:14px;padding:13px 10px;position:relative;overflow:visible;box-shadow:5px 6px #efe6db}.journal-page .calendar:before{content:"";background:#fffefa;border-top:2px solid #30393a;border-radius:50%;width:34px;height:8px;position:absolute;top:-2px;right:38px;transform:rotate(5deg)}.journal-page .calendar-mascot{z-index:2;pointer-events:none;position:absolute}.journal-page .calendar-mascot-bottom{width:59px;bottom:-8px;right:18px}.journal-page .calendar-sprout{background:#83bd89;border-radius:100% 0;width:7px;height:17px;position:absolute;bottom:13px;right:75px;transform:rotate(-38deg)}.journal-page .calendar-sprout:after{content:"";background:#a6d49c;border-radius:0 100%;width:7px;height:15px;position:absolute;top:6px;left:8px;transform:rotate(34deg)}.journal-page .month-bar{margin-bottom:2px}.journal-page .month-bar h2{letter-spacing:.05em;background:#f9e3df;border:2px solid #37413f;border-radius:16px 14px 17px 15px;align-items:center;min-height:33px;padding:4px 18px;font-size:15px;display:inline-flex;position:relative;box-shadow:2px 2px #f1d4cd}.journal-page .month-bar h2:after{content:"";border-bottom:1.5px dashed #30393a;position:absolute;bottom:-5px;left:12px;right:12px}.journal-page .month-bar .icon-button{background:#e8f2e8;border:2px solid #30393a;border-radius:50%;width:38px;height:38px;box-shadow:2px 2px #e3e8df}.journal-page .month-bar .icon-button svg{stroke-width:2.6px;width:19px;height:19px}.journal-page .calendar-grid{grid-template-rows:42px;grid-auto-rows:34px}.journal-page .calendar-grid .weekday{color:#34413e;background:#e8f2e8;border-radius:12px;place-self:center;width:31px;height:20px;padding-top:2px;font-size:11px;font-weight:700}.journal-page .calendar-grid button{font-size:12px}.journal-page .calendar-grid button>span{border-radius:48% 52% 47% 53%;width:31px;height:30px}.journal-page .calendar-grid .is-today>span{outline-offset:-1px;background:#f7dcd8;outline:2px solid #30393a;font-weight:700;transform:rotate(-3deg);box-shadow:2px 2px #ead6d0}.journal-page .calendar-grid .selected>span{color:#273532;background:#f7dcd8;outline:2px solid #30393a;font-weight:700;box-shadow:2px 2px #dce9df}.journal-page .calendar-grid i{background:#72b69f;width:5px;height:5px;bottom:-1px}.journal-page .calendar-grid i.comic-mark{color:#d5a93b;background:0 0;width:auto;height:auto;font-size:9px;bottom:-3px;left:calc(50% - 10px)}.journal-page .journal-toolbar{align-items:center;margin-top:18px;margin-bottom:11px}.journal-toolbar-controls{flex:none;align-items:center;gap:7px;display:flex}.journal-page .journal-toolbar h2{color:#283432;letter-spacing:.03em;background:#fff0c9;border:2px solid #35403d;border-radius:12px 10px 13px 11px;align-items:center;min-height:34px;padding:5px 13px;font-size:15px;display:inline-flex;position:relative;transform:rotate(-.6deg);box-shadow:3px 3px #eadfd0}.journal-page .journal-toolbar h2:after{content:"";border-bottom:1.5px dashed #35403d;position:absolute;bottom:-6px;left:10px;right:10px}.journal-page .journal-toolbar select{color:#5f6e68;background-color:#fffefa;border:1.5px solid #bfc6c1;border-radius:12px;min-width:78px;min-height:34px;padding:5px 24px 5px 10px;font-size:12px}.journal-page .journal-toolbar .journal-photo-switch{padding:4px 6px}.journal-page .journal-toolbar .journal-photo-switch:focus-visible{outline-offset:2px}@media (width<=360px){.journal-page .journal-toolbar{gap:7px}.journal-page .journal-toolbar h2{padding-left:8px;padding-right:8px;font-size:13px}.journal-page .journal-toolbar-controls{gap:5px}.journal-page .journal-toolbar .journal-photo-switch{gap:4px;padding-left:5px;padding-right:5px}.journal-page .journal-toolbar .journal-photo-switch span{display:none}.journal-page .journal-toolbar select{min-width:72px;padding-left:7px;padding-right:19px}}.journal-card-list{gap:11px}.journal-card-list .diary-card,.journal-day-content .diary-card{background:#fffefa;border:2px solid #394341;border-radius:13px 11px 14px 12px;align-items:stretch;gap:9px;min-height:91px;padding:9px 11px;box-shadow:4px 4px #e7ddd4}.journal-card-list .diary-card:nth-child(2n){box-shadow:4px 4px #dfeae1}.journal-card-list .diary-card .date-line,.journal-day-content .diary-card .date-line{margin-bottom:4px}.journal-card-list .diary-card .date-line b,.journal-day-content .diary-card .date-line b{color:#2f403b;background:#e2efe5;border-radius:9px;align-items:center;min-height:21px;padding:1px 7px;font-size:12px;display:inline-flex}.journal-card-list .diary-card h3,.journal-day-content .diary-card h3{margin-bottom:2px;font-size:13px;line-height:1.4}.journal-card-list .diary-card p,.journal-day-content .diary-card p{-webkit-line-clamp:1;font-size:10px;line-height:1.55}.journal-card-list .diary-card .entry-meta,.journal-day-content .diary-card .entry-meta{gap:8px;margin-top:5px;font-size:9px}.journal-card-list .diary-art,.journal-day-content .diary-art{border:none;flex-basis:68px;align-self:center;width:68px;height:68px}.journal-list-rows{border-top:1.5px solid #394341;flex-direction:column;display:flex}.journal-toolbar .journal-photo-switch{border:1px solid var(--line);background:var(--surface);color:#5f6e68;white-space:nowrap;border-radius:10px;align-items:center;gap:5px;min-height:34px;padding:4px 7px;font-size:10px;display:inline-flex}.journal-toolbar .journal-photo-switch>svg{color:#68877a}.journal-toolbar .journal-photo-switch>i{background:#d5dcd3;border-radius:12px;width:30px;height:18px;padding:2px;transition:background .16s;display:block}.journal-toolbar .journal-photo-switch>i>b{background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .16s;display:block;box-shadow:0 1px 2px #314a2c20}.journal-toolbar .journal-photo-switch.on>i{background:#85b59c}.journal-toolbar .journal-photo-switch.on>i>b{transform:translate(12px)}.journal-photo-card-group{border:2px solid var(--comic-line);background:#fffefa;border-radius:13px 11px 14px 12px;display:grid;overflow:hidden;box-shadow:4px 4px #e7ddd4}.journal-photo-card-group .journal-card-photos{border:0;border-top:1px solid var(--line);background:#fffefa;border-radius:0;margin:0;padding:9px 11px 11px}.journal-photo-card-group .journal-card-photos .photo-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.journal-photo-card-group .journal-card-photos .photo-strip button{aspect-ratio:4/3;border-radius:8px;width:100%;height:auto}.journal-photo-card-group .diary-card{box-shadow:none;border:0;border-radius:0;margin:0}.journal-list-row{text-align:left;color:#2e3b37;border-bottom:1px solid #e0e5de;grid-template-columns:72px minmax(0,1fr) 17px;align-items:center;gap:10px;width:100%;min-height:53px;padding:9px 3px;display:grid}.journal-list-row:hover{background:#f2f6ef}.journal-list-row time{color:#5b786b;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}.journal-list-row span{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;font-weight:600;overflow:hidden}.journal-list-row svg{color:#81968b}.journal-list-loading{text-align:center;color:#8c958d;padding:17px 0 8px;font-size:11px}.diary-list{flex-direction:column;gap:13px;display:flex}.empty{text-align:center;padding:44px 12px}.empty>.mascot{width:115px;max-height:100px;margin:0 auto 22px}.empty h3{margin-bottom:11px;font-size:15px}.empty p{color:#92978e;max-width:280px;margin:0 auto 20px;font-size:12px;line-height:1.9}.empty .primary,.empty .secondary{margin-top:7px;display:inline-flex}.primary,.secondary,.danger{border-radius:11px;justify-content:center;align-items:center;gap:7px;min-height:42px;padding:10px 17px;font-size:12px;line-height:1.5;display:flex}.primary{color:#fff;background:#6eaaa0;border:1px solid #6eaaa0}.primary:hover:not(:disabled){background:#598f85}.secondary{color:#517d68;background:#fffefb;border:1px solid #d6dfd3}.secondary:hover{background:#f0f5ee}.danger{color:#b16b59;border:1px solid #e7c6be;margin-top:13px}.full{width:100%;margin-top:16px}.comics-page{padding:8px 20px 32px}.comics-lead{padding:4px 0 16px}.comics-lead>span{background:var(--mint-soft);min-height:27px;color:var(--accent-ink);border-radius:8px;align-items:center;padding:4px 9px;font-size:12px;font-weight:600;line-height:18px;display:inline-flex}.comics-lead h2{color:var(--ink);margin:8px 0;font-size:28px;font-weight:700;line-height:36px}.comics-lead p{max-width:310px;color:var(--muted);margin:0;font-size:14px;line-height:21px}.comics-create{border:1px solid var(--line);background:var(--surface);border-radius:16px;padding:16px}.comics-locked{border:1.5px solid var(--comic-line);background:var(--surface);box-shadow:3px 3px 0 var(--mint-soft);border-radius:16px;padding:16px}.comics-locked-heading{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.comics-locked-heading b{color:var(--ink);font-size:15px;font-weight:650;line-height:22px}.comics-locked-heading span{color:var(--accent-ink);font-variant-numeric:tabular-nums;font-size:12px;font-weight:600;line-height:18px}.comics-progress{background:var(--mint-soft);border-radius:8px;height:8px;margin-top:12px;overflow:hidden}.comics-progress span{border-radius:inherit;background:var(--accent);height:100%;display:block}.comics-locked p{color:var(--muted);margin:8px 0 0;font-size:12px;line-height:18px}.comics-stats{background:var(--mint-soft);border-radius:12px;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.comics-stats>div{text-align:center;flex-direction:column;align-items:center;min-width:0;padding:12px 4px;display:flex}.comics-stats>div+div{border-left:1px solid var(--surface)}.comics-stats strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:28px;font-weight:700;line-height:36px}.comics-stats span{color:var(--accent-ink);font-size:12px;line-height:18px}.comics-service-note{color:var(--muted);align-items:flex-start;gap:7px;margin:8px 0 0;font-size:12px;line-height:18px;display:flex}.comics-service-note svg{flex:0 0 16px;margin-top:1px}.comics-create-action{width:100%;min-height:48px;margin-top:12px;font-size:14px;font-weight:600}.comics-create-action:disabled{border-color:var(--line);background:var(--line);color:var(--muted);cursor:not-allowed}.comics-status-loading,.comics-library-loading{color:var(--muted);margin:16px 0;font-size:13px;line-height:20px}.comics-status-error{border:1.5px solid var(--comic-line);background:var(--surface);box-shadow:2px 2px 0 var(--pink-soft);color:var(--danger);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;padding:10px 14px;font-size:12px;line-height:18px;display:flex}.comics-status-error button{border:1px solid var(--line);background:var(--surface);min-height:32px;color:var(--ink);cursor:pointer;border-radius:6px;flex:none;padding:0 10px;font-size:12px;font-weight:600}.comics-status-error button:hover{border-color:var(--accent);color:var(--accent-ink)}.comics-library{margin-top:24px}.comics-library-heading{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.comics-library-heading h3{color:var(--ink);margin:0;font-size:18px;font-weight:600;line-height:26px}.comics-library-heading span{color:var(--muted);font-size:12px;line-height:18px}.comics-empty{border:1px solid var(--line);background:var(--surface);text-align:center;border-radius:16px;padding:16px 16px 22px}.comics-empty-art{background:#f0f5ef;border-radius:12px;place-items:center;height:128px;display:grid;overflow:hidden}.comics-empty-art .illustration{object-fit:contain;width:min(240px,94%);height:auto}.comics-empty h4{color:var(--ink);margin:16px 0 4px;font-size:16px;font-weight:600;line-height:24px}.comics-empty p{color:var(--muted);margin:0;font-size:12px;line-height:18px}.comics-browse{margin-bottom:12px}.comics-style-filter{padding:0 0 12px}.comics-cover-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;display:grid}.comic-story-card-frame{border:2px solid var(--comic-line);background:#fffefa;border-radius:13px 11px 14px 12px;box-shadow:4px 4px #e7ddd4}.comic-story-card-frame:nth-child(2n){box-shadow:4px 4px #dfeae1}.comics-cover-card{text-align:left;width:100%;min-width:0;padding:6px;display:grid}.comics-cover-card:hover{border-color:var(--comic-line)}.comics-cover-card:focus-visible{outline:2px solid var(--accent-ink);outline-offset:2px}.comics-cover-image{background:var(--mint-soft);width:100%;min-height:96px;color:var(--accent-ink);border-radius:12px;place-items:center;display:grid;position:relative;overflow:hidden}.comics-cover-image>img{width:100%;min-width:0;height:auto;display:block;position:relative}.comics-cover-image>img[hidden]{display:none}.comics-cover-image>svg{position:absolute}.comics-cover-count{background:var(--surface);color:var(--ink);border-radius:7px;padding:3px 6px;font-size:10px;font-weight:600;line-height:16px;position:absolute;bottom:6px;right:6px}.comics-cover-copy{gap:2px;min-width:0;padding:8px 4px 6px;display:grid}.comics-cover-copy time,.comics-cover-copy small{color:var(--muted);font-size:12px;line-height:18px}.comics-cover-copy strong{min-width:0;color:var(--ink);overflow-wrap:anywhere;font-size:15px;font-weight:600;line-height:22px}.comics-cover-loading>span{background:var(--mint-soft);border-radius:16px;height:192px;display:block}.comics-load-more{justify-content:center;width:100%;margin-top:8px}.comics-work-list{flex-direction:column;gap:12px;display:flex}.comics-work{border:1px solid var(--line);background:var(--surface);border-radius:12px;align-items:center;gap:12px;min-width:0;padding:14px;display:flex}.comics-work[role=button]{cursor:pointer}.comics-work[role=button]:focus-visible{outline:2px solid var(--accent-ink);outline-offset:2px}.comics-work-icon{background:var(--mint-soft);width:48px;height:56px;color:var(--accent-ink);border-radius:8px;flex:0 0 48px;place-items:center;display:grid}.comics-work>div{flex:1;min-width:0}.comics-work h4{overflow-wrap:anywhere;color:var(--ink);margin:0;font-size:14px;line-height:21px}.comics-work p{overflow-wrap:anywhere;color:var(--muted);margin:4px 0 0;font-size:12px;line-height:18px}.comics-work-status{color:var(--accent-ink);flex:none;font-size:12px}.comic-page-header .comic-header-action{justify-content:flex-end;min-width:44px;display:flex}.app[data-route^="comics/books/"] .comic-page-header .comic-header-action .comic-book-delete-top-action{color:var(--danger)}.app[data-route^="comics/books/"] .comic-page-header .comic-header-action .comic-book-delete-top-action:hover:not(:disabled){background:var(--pink-soft)}.comic-studio{padding:8px 20px calc(36px + env(safe-area-inset-bottom));color:var(--ink)}.comic-studio>h2,.comic-studio section>h2{margin:22px 0 12px;font-size:18px;line-height:26px}.comic-studio button{min-height:44px}.comic-studio .comic-create-lead{border:1px solid var(--line);background:var(--surface);border-radius:16px;padding:16px}.comic-create-lead h2{margin:0 0 6px;font-size:20px;line-height:28px}.comic-create-lead p{color:var(--muted);margin:0 0 14px;font-size:13px;line-height:20px}.comic-create-lead .primary{justify-content:center;width:100%}.comic-library-actions{gap:8px;margin:16px 0 20px;display:flex}.comic-library-actions>button{flex:1;min-width:0;padding-inline:8px;font-size:13px}.comics-create-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.comics-create-actions .comics-create-action{justify-content:center;align-items:center;gap:6px;min-width:0;padding-inline:8px;font-size:13px;display:flex}.comics-page .comics-create-actions .secondary{min-height:48px}.comics-library-tabs{background:var(--mint-soft);border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin:18px 0 14px;padding:4px;display:grid}.comics-library-tabs button{min-height:44px;color:var(--muted);border-radius:9px;justify-content:center;align-items:center;gap:7px;padding:8px;font-size:14px;font-weight:600;display:flex}.comics-library-tabs button.active{background:var(--surface);color:var(--ink);box-shadow:0 2px 6px #6c776810}.comics-library-tabs button span{background:var(--paper);min-width:20px;height:20px;color:var(--accent-ink);border-radius:10px;place-items:center;font-size:11px;display:inline-grid}.comic-book-list{gap:10px;display:grid}.comic-book-list-card{text-align:left;gap:0;width:100%;min-width:0;padding:0;display:grid;overflow:hidden}.comic-book-list-cover{aspect-ratio:16/9;object-fit:cover;background:#252b2d;width:100%;display:block}.comic-book-list-copy{grid-template-columns:minmax(0,1fr) 20px;align-items:center;gap:4px 8px;min-width:0;padding:12px 16px 14px;display:grid}.comic-book-list-copy strong{overflow-wrap:anywhere;min-width:0;font-size:15px;line-height:22px}.comic-book-list-copy small{color:var(--muted);grid-column:1;font-size:12px;line-height:18px}.comic-book-list-copy>svg{color:var(--muted);grid-area:1/2/3}.comic-book-list-card small,.comics-books-status{color:var(--muted);font-size:12px}.comic-browse-controls{margin-bottom:14px}.comic-empty{border:1px solid var(--line);background:var(--surface);color:var(--muted);text-align:center;border-radius:16px;justify-items:center;gap:8px;padding:28px 16px;display:grid}.comic-empty h3,.comic-empty p{margin:0}.comic-work-list{gap:10px;display:grid}.comic-work-card{border:1px solid var(--line);background:var(--surface);text-align:left;border-radius:12px;align-items:center;gap:12px;width:100%;min-width:0;padding:10px 12px;display:flex}.comic-work-card.current{border-color:var(--accent);background:var(--mint-soft)}.comic-work-current{font-weight:600;color:var(--accent-ink)!important}.comic-work-card>img,.comic-work-placeholder{object-fit:cover;background:var(--mint-soft);border-radius:8px;flex:0 0 62px;width:62px;height:76px}.comic-work-placeholder{color:var(--accent-ink);place-items:center;display:grid}.comic-work-copy{flex:1;gap:3px;min-width:0;display:grid}.comic-work-copy time,.comic-work-copy small{color:var(--muted);font-size:12px;line-height:18px}.comic-work-copy b{overflow-wrap:anywhere;font-size:15px;line-height:22px}.comic-matrix{touch-action:pan-y;gap:12px;display:grid}.comic-axis{background:var(--surface);border-radius:12px;justify-content:space-between;align-items:center;gap:8px;min-height:44px;padding:0 6px;display:flex}.comic-axis button{flex-shrink:0;place-items:center;width:44px;height:44px;display:grid}.comic-axis time,.comic-axis b{text-align:center;font-size:14px}.comic-style-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.comic-style-grid button{border:1px solid var(--line);background:var(--surface);text-align:left;border-radius:12px;min-width:0;padding:6px;display:grid}.comic-style-grid button.selected{border:2px solid var(--accent);background:var(--mint-soft)}.comic-style-grid img{aspect-ratio:3/2;object-fit:contain;border-radius:8px;width:100%}.comic-style-grid b{padding:8px 4px 3px;font-size:13px}.comic-date-options{gap:8px;display:grid}.comic-date-option{border:1px solid var(--line);background:var(--surface);border-radius:12px;align-items:center;gap:10px;min-width:0;padding:12px;display:flex}.comic-date-option input{accent-color:var(--accent);flex-shrink:0}.comic-date-option span{flex:1;gap:3px;min-width:0;display:grid}.comic-date-option time,.comic-date-option small{color:var(--muted);font-size:12px;line-height:18px}.comic-date-option b{overflow-wrap:anywhere;font-size:14px;line-height:21px}.comic-date-option>small{max-width:80px}.comic-date-option span small{max-width:100%;color:var(--danger)}.comic-sticky-action{justify-content:center;width:100%;margin-top:20px}.comic-created-plans{gap:8px;margin-top:16px;display:grid}.comic-created-plans button{justify-content:space-between}.comic-error,.comic-notice{border:1.5px solid var(--comic-line);background:var(--surface);box-shadow:3px 3px 0 var(--pink-soft);color:var(--danger);border-radius:14px;align-items:flex-start;gap:10px;margin:12px 0;padding:12px 14px;font-size:13px;line-height:20px;display:flex}.comic-notice{box-shadow:3px 3px 0 var(--blue-soft);color:var(--ink)}.comic-error p,.comic-notice p{margin:0}.comic-meta{color:var(--muted);margin:0 0 12px;font-size:12px;line-height:18px}.comic-story-list{gap:10px;display:grid}.comic-story-list article{border:1px solid var(--line);background:var(--surface);border-radius:12px;gap:12px;padding:12px;display:flex}.comic-story-list article>strong{background:var(--mint-soft);width:28px;height:28px;color:var(--accent-ink);border-radius:8px;flex:0 0 28px;place-items:center;display:grid}.comic-story-list article>div{min-width:0}.comic-story-list article p{margin:5px 0;font-size:13px;line-height:20px}.comic-story-list article small{color:var(--muted)}.comic-reading-page{border:2px solid var(--comic-line);background:var(--surface);border-radius:16px;margin:0;padding:8px}.comic-reading-page img{aspect-ratio:2/3;object-fit:contain;border-radius:8px;width:100%;max-height:60dvh;display:block}.comic-reading-page figcaption{padding:10px 4px 4px;font-size:13px;line-height:20px}.comic-book-reading-pages{gap:16px;display:grid}.comic-book-reading-page{margin-bottom:0}.comic-book-reading-page img{aspect-ratio:auto;object-fit:contain;max-height:none}.comic-book-reading-page figcaption{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 10px;display:flex}.comic-book-reading-page figcaption b{overflow-wrap:anywhere;min-width:0;font-weight:500}.comic-book-reading-page figcaption span{color:var(--muted);flex:none}.comic-book-delete-action{margin-top:16px}.comic-day-reader{padding-bottom:calc(44px + env(safe-area-inset-bottom))}.comic-day-heading{padding:8px 0 4px}.comic-day-heading h2{color:var(--ink);overflow-wrap:anywhere;margin:0;font-size:22px;line-height:30px}.comic-day-styles{padding:8px 0 4px}.comic-day-single-style{color:var(--muted);margin-top:8px;font-size:12px;line-height:18px}.comic-day-versions{margin:16px 0}.comic-day-versions h3{color:var(--ink);margin:0 0 8px;font-size:14px;font-weight:600;line-height:21px}.comic-day-toolbar{min-height:44px;color:var(--muted);justify-content:space-between;align-items:center;gap:8px;margin:8px 0 12px;font-size:12px;line-height:18px;display:flex}.comic-day-toolbar button{color:var(--accent-ink);border-radius:8px;flex:none;padding:8px 12px;font-size:13px;font-weight:600;line-height:20px}.comic-day-toolbar button:hover{background:var(--mint-soft)}.comic-cover-picker{border:1px solid var(--line);background:var(--surface);border-radius:12px;margin:0 0 16px;padding:12px}.comic-cover-picker>p{color:var(--muted);margin:0 0 12px;font-size:12px;line-height:18px}.comic-cover-picker>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.comic-cover-picker button{border:1px solid var(--line);background:var(--paper);border-radius:8px;align-content:start;justify-items:center;min-width:0;padding:4px;display:grid}.comic-cover-picker button[aria-pressed=true]{border:2px solid var(--accent-ink);background:var(--mint-soft)}.comic-cover-picker img{border-radius:4px;width:100%;height:auto;display:block}.comic-cover-picker button span{text-align:center;align-items:center;gap:4px;padding:4px 0;font-size:12px;line-height:18px;display:inline-flex}.comic-cover-message{color:var(--accent-ink);margin:0 0 12px;font-size:12px;line-height:18px}.comic-day-pages{touch-action:pan-y;gap:16px;display:grid}.comic-day-page{border:2px solid var(--comic-line);background:var(--surface);border-radius:12px;margin:0;overflow:hidden}.comic-day-page>img{width:100%;height:auto;display:block}.comic-day-page-actions{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:8px;padding:4px 8px 4px 12px;font-size:12px;line-height:18px;display:flex}.comic-day-page-actions button{min-height:44px;color:var(--danger);justify-content:center;align-items:center;gap:6px;padding:8px;font-size:12px;line-height:18px;display:inline-flex}.comic-day-page-actions button:disabled{opacity:.5}.comic-day-page-missing{min-height:180px;color:var(--muted);text-align:center;align-content:center;justify-items:center;gap:8px;padding:20px;display:grid}.comic-day-page-missing p{font-size:13px;line-height:20px}.comic-day-actions,.comic-day-date-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:20px;display:grid}.comic-day-actions button,.comic-day-date-nav button{justify-content:center;gap:8px;min-width:0;padding-inline:8px;font-size:13px;line-height:20px}.comic-day-date-nav{margin-top:12px}.comic-page-controls{justify-content:space-between;align-items:center;gap:8px;margin:12px 0;display:flex}.comic-page-controls button{align-items:center;gap:3px;padding:0 8px;display:flex}.comic-page-controls span{color:var(--muted);white-space:nowrap;font-size:12px}.comic-thumb-row{gap:8px;padding:4px 0 12px;display:flex;overflow-x:auto}.comic-thumb-row button{border:1px solid var(--line);border-radius:8px;flex:0 0 54px;width:54px;height:60px;min-height:60px;padding:2px}.comic-thumb-row button.active{border:2px solid var(--accent)}.comic-thumb-row img{object-fit:contain;width:100%;height:100%}.comic-secondary-actions{gap:8px;margin-top:20px;display:grid}.comic-book-title{gap:6px;margin:18px 0;font-size:14px;display:grid}.comic-book-title input{border:1px solid var(--line);background:var(--surface);border-radius:8px;min-height:48px;padding:10px}.comic-book-editor{padding-bottom:calc(42px + env(safe-area-inset-bottom))}.comic-book-intro{color:var(--muted);margin:4px 0 14px;font-size:13px;line-height:20px}.comic-book-title{margin:0 0 20px;font-weight:600}.comic-book-title input{width:100%;font:inherit;margin-top:6px;font-weight:400}.comic-book-title small{color:var(--muted);font-size:12px;font-weight:400}.comic-book-style-mode h2,.comic-book-dates-heading h2{margin:20px 0 10px;font-size:17px;line-height:24px}.comic-book-mode-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.comic-book-mode-options button,.comic-book-day-style-options button{border:1px solid var(--line);background:var(--surface);border-radius:9px;padding:8px;font-size:13px;font-weight:600}.comic-book-mode-options button.selected,.comic-book-day-style-options button.selected{border-color:var(--accent);background:var(--mint-soft);color:var(--accent-ink)}.comic-book-style-mode>p{color:var(--muted);margin:8px 0 10px;font-size:12px;line-height:18px}.comic-book-style-choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.comic-book-style-choices button{border:1px solid var(--line);background:var(--surface);border-radius:9px;min-width:0;padding:4px;display:grid}.comic-book-style-choices button.selected{border:2px solid var(--accent);background:var(--mint-soft)}.comic-book-style-choices img{aspect-ratio:3/2;object-fit:contain;width:100%}.comic-book-style-choices span{overflow-wrap:anywhere;text-align:center;padding:4px 2px;font-size:11px}.comic-book-dates-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 8px;display:flex}.comic-book-month-switcher{border:1px solid var(--line);background:var(--surface);border-radius:10px;align-items:center;gap:2px;min-height:44px;padding:0 3px;display:flex}.comic-book-month-switcher button{width:38px;min-height:40px;color:var(--ink);border-radius:7px;flex:0 0 38px;place-items:center;display:grid}.comic-book-month-switcher button:hover:not(:disabled){background:var(--mint-soft)}.comic-book-month-switcher button:disabled{color:var(--muted);opacity:.45}.comic-book-month-switcher>span{min-width:78px;color:var(--ink);text-align:center;font-variant-numeric:tabular-nums;font-size:14px;font-weight:600}.comic-book-month-empty{margin-top:4px}.comic-book-date-list{gap:9px;display:grid}.comic-book-date-card{border:1px solid var(--line);background:var(--surface);border-radius:12px;min-width:0;overflow:hidden}.comic-book-date-card.selected{border-color:var(--accent);box-shadow:2px 3px 0 var(--mint-soft)}.comic-book-date-head{flex-wrap:wrap;align-items:center;gap:6px 9px;min-width:0;min-height:62px;padding:9px 10px;display:flex}.comic-book-date-copy{flex:1;gap:2px;min-width:0;display:grid}.comic-book-date-copy time,.comic-book-date-copy small{color:var(--muted);font-size:11px;line-height:16px}.comic-book-date-title{align-items:center;gap:7px;min-width:0;display:flex}.comic-book-date-title b{flex:1;min-width:0}.comic-book-date-select{width:18px;height:18px;accent-color:var(--accent-ink);flex:0 0 18px;margin:0}.comic-book-date-copy b{text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:19px;overflow:hidden}.comic-book-date-copy small{min-height:16px}.comic-book-date-actions{flex-wrap:wrap;flex:0 auto;justify-content:flex-end;align-items:center;gap:4px;max-width:100%;display:flex}.comic-book-date-actions select{border:1px solid var(--line);background:var(--surface);max-width:126px;min-height:36px;color:var(--ink);font:inherit;border-radius:8px;padding:5px 22px 5px 8px;font-size:11px}.comic-book-uniform-style{justify-content:flex-start;align-items:center;gap:12px;margin:10px 0 14px;display:flex}.comic-book-uniform-style select{border:1px solid var(--line);background:var(--surface);width:min(100%,240px);min-height:40px;color:var(--ink);font:inherit;border-radius:9px;padding:6px 28px 6px 10px;font-size:13px}.comic-book-images-loading{color:var(--muted);margin:0;padding:4px 10px 12px;font-size:12px}.comic-book-image-picker{overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:thin;gap:7px;padding:0 9px 10px;display:flex;overflow-x:auto}.comic-book-image-picker label{background:var(--paper);cursor:pointer;scroll-snap-align:start;border:2px solid #0000;border-radius:8px;flex:0 0 108px;min-width:0;position:relative;overflow:hidden}.comic-book-image-picker label.selected{border-color:var(--accent-ink)}.comic-book-image-picker input{z-index:2;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.comic-book-image-picker img{aspect-ratio:3/4;object-fit:contain;width:100%;display:block}.comic-book-image-version{color:#fff;text-overflow:ellipsis;white-space:nowrap;background:#283033b8;border-radius:6px;max-width:calc(100% - 40px);padding:3px 5px;font-size:10px;line-height:14px;position:absolute;top:6px;left:6px;overflow:hidden}.comic-book-image-check{color:#0000;background:#28303359;border:1.5px solid #fff;border-radius:50%;place-items:center;width:21px;height:21px;display:grid;position:absolute;top:6px;right:6px}.comic-book-image-picker label.selected .comic-book-image-check{background:var(--accent-ink);color:#fff}.comic-book-image-picker label:focus-within{outline:2px solid var(--accent-ink);outline-offset:2px}.comic-book-cover-editor{border-top:1px solid var(--line);margin:22px 0 18px;padding-top:4px}.comic-book-cover-heading{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.comic-book-cover-heading h2,.comic-book-cover-editor>h3{margin:12px 0 6px;font-size:16px;line-height:22px}.comic-book-cover-heading p{color:var(--muted);margin:0;font-size:12px;line-height:18px}.comic-book-cover-toggle{flex:none;align-items:center;gap:6px;min-height:44px;font-size:12px;font-weight:600;display:flex}.comic-book-cover-toggle input{width:18px;height:18px;accent-color:var(--accent-ink)}.comic-book-cover-preview{aspect-ratio:16/9;border:1px solid var(--line);background:#fffefd;border-radius:12px;width:100%;display:block}.comic-book-cover-templates{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.comic-book-cover-templates button{border:1px solid var(--line);background:var(--surface);border-radius:10px;justify-items:center;gap:6px;min-width:0;min-height:78px;padding:7px 4px;font-size:11px;line-height:15px;display:grid}.comic-book-cover-templates button.selected{border-color:var(--accent-ink);background:var(--mint-soft);color:var(--accent-ink)}.comic-book-template-icon{aspect-ratio:16/9;background:#fffefd;border-radius:5px;width:100%;display:block}.comic-book-cover-candidates{grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:7px;display:grid}.comic-book-cover-candidates button{background:var(--surface);border:2px solid #0000;border-radius:9px;min-width:0;padding:0;position:relative;overflow:hidden}.comic-book-cover-candidates button.selected{border-color:var(--accent-ink)}.comic-book-cover-candidates img{aspect-ratio:1;object-fit:cover;width:100%;display:block}.comic-book-cover-candidates button>span{background:var(--accent-ink);color:#fff;border-radius:10px;align-items:center;gap:2px;padding:2px 5px;font-size:10px;display:flex;position:absolute;bottom:3px;right:3px}.comic-book-cover-candidate-hint{color:var(--muted);margin:-2px 0 8px;font-size:11px;line-height:16px}.comic-book-cover-candidates button.active{outline:2px solid var(--ink);outline-offset:2px}.comic-book-cover-crop-heading{margin-top:12px}.comic-book-cover-crop-heading h3{margin:0;font-size:13px;line-height:20px}.comic-book-cover-crop-heading p{color:var(--muted);margin:3px 0 7px;font-size:11px;line-height:16px}.comic-book-cover-empty{color:var(--muted);font-size:12px;line-height:18px}.comic-book-review{border:1px solid var(--line);background:var(--mint-soft);border-radius:12px;margin-top:16px;padding:12px}.comic-book-review-heading>b{overflow-wrap:anywhere;font-size:16px}.comic-book-review-heading p{margin:5px 0;font-size:12px}.comic-book-review-heading small{color:var(--muted);font-size:11px;line-height:17px}.comic-book-selection{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px;padding-bottom:10px;display:grid}.comic-book-selection>div{min-width:0}.comic-book-selection img{object-fit:contain;background:var(--surface);border-radius:8px;width:100%;height:106px}.comic-book-selection time{color:var(--muted);font-size:11px;display:block}.comic-book-selection label{align-items:center;gap:4px;min-height:44px;font-size:12px;display:flex}.comic-image-choices{margin-top:18px}.comic-image-choices h3{font-size:14px}.comic-image-choices p{color:var(--muted);font-size:12px}.comic-image-choices>div>div{grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:8px;display:grid}.comic-image-choices label{min-width:0;display:grid}.comic-image-choices img{object-fit:contain;background:var(--surface);border-radius:8px;width:100%;height:96px}@media (width<=360px){.comic-studio{padding-inline:16px}.comic-library-actions{flex-wrap:wrap}.comic-library-actions>button{flex-basis:100%}}.chip-scroll{scrollbar-width:none;gap:7px;padding:15px 0 0;display:flex;overflow:auto}.chip-scroll button{white-space:nowrap;background:#efefea;border-radius:17px;flex-shrink:0;padding:7px 10px;font-size:11px}.chip-scroll button.active{color:#517a5c;background:#deece2}:is(.comics-page,.comic-day-reader) .primary{border:1px solid var(--accent-ink);background:var(--accent-ink);min-height:48px;color:var(--surface);border-radius:12px;font-size:14px;font-weight:600;line-height:21px}:is(.comics-page,.comic-day-reader) .primary:hover:not(:disabled){border-color:var(--ink);background:var(--ink)}:is(.comics-page,.comic-day-reader) .secondary{border:1px solid var(--line);background:var(--surface);min-height:44px;color:var(--ink);border-radius:10px;font-size:13px;font-weight:600;line-height:20px}:is(.comics-page,.comic-day-reader) .secondary:hover:not(:disabled){border-color:var(--accent);background:var(--mint-soft)}.comics-page .comics-create-action:disabled{border-color:var(--line);background:var(--line);color:var(--muted)}:is(.comics-style-filter,.comic-day-styles){gap:8px;padding:8px 0 16px}:is(.comics-style-filter,.comic-day-styles) button{border:1px solid var(--line);background:var(--surface);min-height:36px;color:var(--ink);border-radius:8px;padding:8px 12px;font-size:12px;font-weight:500;line-height:18px}:is(.comics-style-filter,.comic-day-styles) button:hover:not(:disabled){border-color:var(--accent)}:is(.comics-style-filter,.comic-day-styles) button[aria-pressed=true]{border-color:var(--accent);background:var(--mint-soft);color:var(--accent-ink);font-weight:600}.app[data-route^="comics/works/"] .comic-page-header .icon-button{width:44px;height:44px;color:var(--ink)}.app[data-route^="comics/works/"] .comic-page-header .comic-header-action .icon-button{color:var(--danger)}.app[data-route^="comics/works/"] .comic-page-header .comic-header-action .icon-button:hover:not(:disabled){background:var(--pink-soft)}@media (width<=360px){.comics-page{padding-left:16px;padding-right:16px}}.profile-page{padding:4px 22px 36px}.profile-intro{background:#fffefa;border:1px solid #e3e5df;border-radius:17px;align-items:center;gap:15px;margin:2px 0 14px;padding:15px;display:flex}.profile-avatar{color:#7c9187;background:#e7eee9;border-radius:50%;flex-shrink:0;place-items:center;width:76px;height:76px;display:grid;overflow:hidden}.profile-avatar>img{object-fit:cover;width:100%;height:100%;display:block}.profile-intro h1{margin-bottom:5px;font-size:21px}.profile-intro p{color:#8b918a;font-size:10px;line-height:1.6}.account-label{color:#6f9881;margin-top:5px;font-size:9px;display:inline-block}.member-banner{text-align:left;background:#fcebc3;border-radius:15px;align-items:center;gap:10px;width:100%;margin-bottom:18px;padding:14px 15px;display:flex}.member-banner>svg:first-child{color:#b99146}.member-banner>span{flex:1}.member-banner b{margin-bottom:6px;font-size:14px;display:block}.member-banner small{color:#a4966f;font-size:10px}.settings-group{margin-top:14px}.settings-group>h2{color:#8b928d;letter-spacing:.08em;margin:0 3px 8px;font-size:10px;font-weight:700}.settings-list{background:#fffefa;border:1px solid #e3e5df;border-radius:14px;padding:0;overflow:hidden}.settings-row{text-align:left;border-bottom:1px solid #ebe9e1;align-items:center;gap:11px;width:100%;min-height:54px;padding:12px 13px;display:flex}.settings-row:last-child{border-bottom:0}.settings-row>span{flex:1;font-size:13px}.settings-row small{color:#959a94;font-size:10px}.settings-row>svg:last-child{color:#9ca398}.settings-row:hover{background:#f6f6ee}.switch{background:#d5dcd3;border-radius:14px;flex-shrink:0;width:36px;height:22px;padding:3px}.switch>span{background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .18s;display:block;box-shadow:0 1px 2px #314a2c20}.switch.on{background:#85b59c}.switch.on>span{transform:translate(14px)}.profile-signout{color:#a46054;justify-content:center;align-items:center;gap:7px;width:100%;min-height:44px;margin-top:15px;font-size:12px;display:flex}.profile-signout:hover{background:#fff5f2;border-radius:10px}.app[data-route^=entry\/] .page-header{min-height:68px;padding:max(11px, env(safe-area-inset-top)) 14px 9px}.app[data-route^=entry\/] .page-header h1{font-size:22px}.entry-page{flex-direction:column;gap:16px;padding:4px 20px 32px;display:flex}.entry-detail-hero{border:2px solid var(--comic-line);background:#fffdf8;border-radius:18px 16px 20px 17px;grid-template-columns:minmax(0,1fr) 88px;align-items:center;gap:12px;min-height:148px;margin:0;padding:17px 14px 16px 17px;display:grid;overflow:hidden;box-shadow:4px 5px #e4ece4}.entry-detail-heading{min-width:0}.entry-detail-heading>span:first-child{color:#79827f;font-size:11px;line-height:1.6}.entry-detail-heading h1{margin-top:8px;font-size:21px;line-height:1.48}.entry-detail-art{align-self:end;width:88px;height:88px}.entry-detail-art.has-story{background:#f1f4ec;border:1px solid #d6dfd5;border-radius:16px 18px 14px 17px;transform:rotate(1.5deg)}.entry-detail-art .mascot-cover{transform:scale(1.08)}.entry-detail-section,.entry-detail-photos{border:1px solid var(--line);background:var(--surface);border-radius:16px;margin:0;padding:16px}.entry-detail-section>.comic-section-label{margin-bottom:12px;transform:rotate(-.35deg)}.entry-detail-section .markdown-text{color:#3b4442;line-height:1.85}.entry-detail-section>.muted{font-size:13px;line-height:1.85}.entry-thoughts>.comic-section-label{background:var(--pink);border-color:#4c4545}.entry-thoughts>.comic-section-label>svg{color:#9b5d57}.entry-thoughts .markdown-text,.entry-thoughts>.muted{color:#766e6c}.original-text{color:#7f847a;font-size:13px}.status-label{color:#aa945f;margin-left:auto;font-size:10px}.related-links{flex-wrap:wrap;gap:8px;display:flex}.related-links button{text-align:left;background:#edf3ed;border:1px solid #dfe8df;border-radius:10px;align-items:center;gap:6px;min-width:0;min-height:38px;padding:8px 10px;font-size:12px;display:flex}.related-links button svg:last-child{color:#687873}.entry-related .section-title{align-items:center;margin-bottom:14px}.entry-related .comic-section-label{background:var(--yellow);margin:0;transform:rotate(.3deg)}.entry-manage-related{color:#65716e;white-space:nowrap;align-items:center;gap:4px;min-height:38px;padding:6px 3px;font-size:11px;display:inline-flex}.entry-comic{border:1px solid var(--line);background:var(--surface);color:#7f8784;border-radius:14px;align-items:center;gap:10px;min-height:58px;padding:12px 14px;font-size:12px;display:flex}.entry-comic>svg{color:#526862}.entry-comic button{min-height:44px;color:var(--accent-ink);white-space:nowrap;justify-content:center;align-items:center;gap:4px;margin-left:auto;padding:0 4px;font-size:12px;font-weight:600;display:inline-flex}.entry-comic button:focus-visible{outline:2px solid var(--accent-ink);outline-offset:2px;border-radius:8px}.entry-actions{align-items:center;gap:12px;margin-top:2px;display:flex}.entry-direct-edit{color:#a85f52;background:#fff8f6;border:1px solid #e1b8b0;border-radius:10px;flex:none;min-height:42px;padding:9px 11px;font-size:11px}.entry-direct-edit:hover{background:#fbeae6}.entry-chat-edit{flex:1;min-height:46px;font-size:13px;font-weight:600}.manual-edit-warning{color:#98584d;background:#fff7f4;border:1px solid #e5c3bc;border-radius:9px;align-items:flex-start;gap:9px;margin-bottom:16px;padding:11px 12px;font-size:12px;line-height:1.7;display:flex}.manual-edit-warning svg{flex:none;margin-top:1px}.date-photos{border-top:1px solid var(--line);padding-top:17px}.date-photos .section-title{margin-bottom:10px}.date-photos .section-title h2{margin:0}.photo-shortcut{color:#527565;border-top:1px dashed #d7dfd7;justify-content:space-between;align-items:center;gap:10px;width:100%;min-height:42px;padding:8px 2px;font-size:12px;display:flex}.photo-shortcut span{align-items:center;gap:7px;font-weight:600;display:inline-flex}.photo-shortcut small{color:#8b938e;font-size:10px}.photo-shortcut.compact{border:0;gap:7px;width:auto;min-height:34px;padding:4px 0}.entry-detail-photos{border-top:1px solid var(--line);padding-top:16px}.entry-detail-photos .section-title{align-items:center;margin-bottom:14px}.entry-detail-photos .comic-section-label{background:var(--mint-soft);margin:0;transform:rotate(-.25deg)}.entry-detail-photos .photo-shortcut.compact{color:#4c6860;background:#fff;border:1px solid #d5ddd7;border-radius:10px;min-height:36px;padding:6px 9px}.entry-photo-action{justify-content:flex-end;margin-top:-8px;display:flex}.entry-photo-action .photo-shortcut.compact{border:1px solid var(--line);background:var(--surface);width:auto;min-height:44px;color:var(--accent-ink);border-radius:8px;padding:8px 12px}.entry-detail-photos .photo-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.entry-detail-photos .photo-strip button{aspect-ratio:1;border-radius:10px;width:100%;height:auto}@media (width<=360px){.entry-page{padding-left:16px;padding-right:16px}.entry-detail-hero{grid-template-columns:minmax(0,1fr) 72px;gap:8px;min-height:164px;padding:15px 12px 14px 15px}.entry-detail-heading h1{font-size:19px;line-height:1.45}.entry-detail-art{width:72px;height:72px}.entry-detail-section,.entry-detail-photos{padding:14px}.entry-related .section-title{gap:8px}.entry-manage-related{font-size:10px}.entry-actions{gap:8px}.entry-direct-edit{padding-left:9px;padding-right:9px}.entry-chat-edit{padding-left:11px;padding-right:11px;font-size:12px}}.photo-strip{grid-template-columns:repeat(3,58px);gap:7px;display:grid}.photo-strip button{background:#f4f4ef;border:1px solid #dce2da;border-radius:7px;width:58px;height:58px;overflow:hidden}.photo-strip img{object-fit:cover;width:100%;height:100%}.photo-viewer{--viewer-bg:#1c2526;width:min(440px,100vw);max-width:none;height:100dvh;max-height:none;padding:max(12px, env(safe-area-inset-top)) 16px max(16px, env(safe-area-inset-bottom));background:var(--viewer-bg);color:#fff;border:0;margin:auto;overflow:hidden}.photo-viewer[open]{grid-template-rows:48px minmax(0,1fr) 56px;display:grid}.photo-viewer::backdrop{background:#111819d9}.photo-viewer-header{justify-content:center;align-items:center;font-size:13px;font-weight:600;display:flex;position:relative}.photo-viewer-header button{width:48px;height:48px;color:inherit;place-items:center;display:grid;position:absolute;top:0}.photo-viewer-header .photo-viewer-delete{color:#e9b8ae;left:0}.photo-viewer-header .photo-viewer-close{right:0}.photo-viewer-stage{touch-action:pan-y;place-items:center;min-width:0;min-height:0;display:grid}.photo-viewer-stage img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:100%;display:block}.photo-viewer-controls{justify-content:space-between;align-items:center;display:flex}.photo-viewer-controls button{width:48px;height:48px;color:inherit;place-items:center;display:grid}.journal-day-content{gap:0;margin-top:2px;display:grid}.journal-day-content .journal-date-photos{border:2px solid var(--comic-line);background:var(--surface);border-radius:14px;padding:13px 12px 12px}.journal-day-content.has-diary .journal-date-photos{border-bottom:0;border-radius:14px 14px 0 0}.journal-day-content .journal-date-photos .section-title{margin-bottom:8px}.journal-day-content .journal-date-photos .photo-shortcut.compact{border:1px solid var(--line);min-height:40px;color:var(--accent-ink);border-radius:8px;padding:4px 7px}.journal-day-content .journal-date-photos .photo-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.journal-day-content .journal-date-photos .photo-strip button{aspect-ratio:4/3;border-radius:8px;width:100%;height:auto}.journal-day-content .journal-date-photos .muted{margin:2px 0 0;font-size:12px}.journal-day-content>.diary-card{border-top-left-radius:0;border-top-right-radius:0}.journal-day-content>.diary-card,.journal-day-content>.journal-date-photos{box-shadow:4px 4px #e7ddd4}.photo-panel{gap:14px;display:grid}.photo-quota{background:#fff;border:1px solid #dce1d8;border-radius:7px;justify-content:space-between;align-items:center;padding:9px 11px;display:flex}.photo-quota span{color:#778079;font-size:11px}.photo-quota b{font-size:13px}.photo-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.photo-gallery figure,.photo-selection figure{aspect-ratio:1;background:#f0f2ed;border:1px solid #dce2da;border-radius:7px;min-width:0;position:relative;overflow:hidden}.photo-gallery img,.photo-selection img{object-fit:cover;width:100%;height:100%}.photo-gallery figure>button,.photo-selection figure>button{color:#8e5049;background:#fffdf9e8;border-radius:50%;place-items:center;width:29px;height:29px;display:grid;position:absolute;top:4px;right:4px;box-shadow:0 1px 5px #28352d30}.photo-selection{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding-top:3px;display:grid}.photo-selection figure{border-style:dashed;border-color:#80ad99}.photo-picker{color:#466c59;cursor:pointer;background:#f4f8f2;border:1.4px dashed #759d88;border-radius:7px;justify-content:center;align-items:center;gap:8px;min-height:46px;font-size:12px;font-weight:600;display:flex}.photo-picker input{opacity:0;pointer-events:none;height:1px;position:absolute;width:1px!important}.photo-picker.disabled{opacity:.45;cursor:default}.photo-notice{color:#477058;background:#eaf4e9;border-radius:7px;padding:9px 11px;font-size:11px}.search-field{color:#919b8c;background:#fffefa;border:1px solid #e2e4dc;border-radius:12px;align-items:center;gap:9px;margin:19px 0;padding:4px 11px;display:flex}.search-field input{background:0 0;border:0;outline:0;width:100%;min-width:0;padding:11px 0;font-size:13px}.search-field .icon-button{width:25px;height:34px}.library-subtitle{color:#91978d;margin-bottom:21px;font-size:12px}.library-item{text-align:left;background:#fffefa;border:1px solid #e7e7dc;border-radius:14px;align-items:center;gap:12px;width:100%;margin-bottom:12px;padding:16px 12px;display:flex}.library-item>span:nth-child(2){flex:1;min-width:0}.item-icon{color:#799177;background:#e3eddb;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.library-item b{font-size:14px;font-weight:600}.library-item p{color:#8a9186;margin:5px 0;font-size:11px;line-height:1.8}.library-item small{color:#a5aa9d;font-size:9px}.library-page.media .item-icon{color:#b59656;background:#f4e4c5;border-radius:8px}.library-page.thoughtsBook .item-icon{color:#c28e82;background:#f8e4e0}.page-header:has(.library-page-title){min-height:68px;padding:max(11px, env(safe-area-inset-top)) 14px 9px}.page-header h1:has(.library-page-title){flex:auto;justify-content:center;min-width:0;display:flex}.library-page-title{justify-content:center;align-items:center;gap:7px;min-width:0;display:inline-flex}.library-page-title>.library-art{flex:0 0 36px;width:36px;height:36px}.library-page-title .library-title-with-help{gap:0}.library-page-title .icon-button{width:40px;height:40px}.thoughts-book-page{padding:12px 20px 38px}.thoughts-search{border:1px solid var(--line);background:var(--surface);color:#8b9792;border-radius:12px;align-items:center;gap:9px;min-height:46px;margin:0 0 12px;padding:0 12px;display:flex}.thoughts-search:focus-within{outline:2px solid var(--accent);outline-offset:1px}.thoughts-search input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;padding:10px 0;font-size:13px}.thoughts-search button{width:44px;height:44px;color:var(--muted);border-radius:8px;flex:0 0 44px;place-items:center;display:grid}.thoughts-search button:hover{background:#f1f3ee}.thoughts-feed-summary{color:var(--muted);justify-content:space-between;align-items:center;gap:10px;margin:0 0 8px;font-size:11px;display:flex}.thoughts-feed-summary strong{color:var(--ink);font-size:12px;font-weight:600}.thoughts-month{margin-top:15px}.thoughts-month-heading{align-items:center;gap:8px;margin-bottom:10px;display:flex}.thoughts-month-heading>span{border:2px solid var(--comic-line);background:var(--mint-soft);border-radius:7px;align-items:center;min-height:28px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.thoughts-month-heading>small{color:var(--muted);white-space:nowrap;font-size:11px}.thoughts-month-heading:after{background:var(--line);content:"";flex:1;height:1px}.thoughts-month-entries{border-left:2px solid #c9dcd3;margin-left:24px;padding:1px 0 2px 16px;position:relative}.thoughts-entry{margin-bottom:15px;position:relative}.thoughts-entry:before{border:3px solid var(--paper);background:var(--accent);width:11px;height:11px;box-shadow:0 0 0 1.5px var(--accent-ink);content:"";border-radius:50%;position:absolute;top:18px;left:-23px}.thoughts-entry:last-child{margin-bottom:3px}.thoughts-post{border:2px solid var(--comic-line);background:#fffdf9;border-radius:15px;min-width:0;padding:12px 13px 10px;box-shadow:3px 4px #eee5df}.thoughts-post-head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.thoughts-post-day{white-space:nowrap;align-items:baseline;gap:5px;display:flex}.thoughts-post-day b{font-size:17px;line-height:24px}.thoughts-post-day span,.thoughts-post-head time{color:var(--muted);font-size:11px}.thoughts-post-head time{white-space:nowrap;font-size:10px;line-height:24px}.thoughts-post h3{color:var(--accent-ink);overflow-wrap:anywhere;margin:4px 0 8px;font-size:13px;font-weight:600;line-height:19px}.thoughts-post-copy{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.7}.thoughts-post-copy.is-collapsed{-webkit-line-clamp:3;white-space:normal;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.thoughts-post-loading{color:var(--muted);margin:0;font-size:13px;line-height:1.7}.thoughts-post-loading button{min-height:44px;color:var(--accent-ink);margin-left:5px;text-decoration:underline}.thoughts-post-actions{border-top:1px dashed #e4e1d9;justify-content:space-between;align-items:center;gap:8px;min-height:44px;margin-top:9px;padding-top:3px;display:flex}.thoughts-expand,.thoughts-open-day{min-height:44px;color:var(--accent-ink);justify-content:center;align-items:center;gap:3px;padding:0 2px;font-size:11px;font-weight:700;display:inline-flex}.thoughts-open-day{margin-left:auto}.thoughts-empty{text-align:center;justify-items:center;gap:9px;padding:54px 20px;display:grid}.thoughts-empty .library-art{width:76px;height:76px}.thoughts-empty h2{font-size:17px}.thoughts-empty p{max-width:280px;color:var(--muted);font-size:12px;line-height:1.8}.thoughts-load-status,.thoughts-feed-end{color:var(--muted);text-align:center;padding:17px 0 0;font-size:11px}.thoughts-load-more{min-height:44px;color:var(--accent-ink);margin:12px auto 0;padding:0 14px;font-size:12px;font-weight:600;display:block}.thoughts-load-error{color:var(--danger);justify-content:center;align-items:center;gap:10px;padding-top:14px;font-size:12px;display:flex}.thoughts-load-error button{min-height:40px;color:var(--accent-ink);padding:0 8px;text-decoration:underline}@media (width<=360px){.thoughts-book-page{padding-left:16px;padding-right:16px}.thoughts-month-entries{margin-left:20px;padding-left:13px}.thoughts-entry:before{left:-20px}.thoughts-post{padding:10px 11px}.thoughts-post-head time{font-size:9px}.library-page-title>.library-art{flex-basis:32px;width:32px;height:32px}.page-header:has(.library-page-title){padding-left:10px;padding-right:10px}}.sheet{--ink:#283033;--muted:#828785;--paper:#fbfaf6;--accent:#78b8b0;color:#283033;padding:9px 22px max(25px, env(safe-area-inset-bottom));overscroll-behavior:contain;background:#fbfaf6;border:1px solid #e3e5da;border-radius:23px 23px 0 0;width:min(440px,100%);max-width:440px;max-height:88dvh;margin:auto auto 0;box-shadow:0 -12px 50px #293a391a}.sheet::backdrop{background:#263c3a45}.sheet-handle{background:#dcded4;border-radius:3px;width:34px;height:4px;margin:0 auto 9px}.sheet>header{z-index:1;background:#fbfaf6;justify-content:space-between;align-items:center;gap:10px;padding:4px 0 7px;display:flex;position:sticky;top:-9px}.sheet h2{font-size:19px}.sheet-body{padding-top:10px;font-size:13px;line-height:1.9}.confirm-dialog{color:#283330;background:#fffdf7;border:2px solid #303a37;border-radius:12px;width:min(358px,100% - 34px);margin:auto;padding:24px 21px 20px;overflow:visible;box-shadow:6px 7px #cadbd1}.confirm-dialog::backdrop{-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px);background:#263c3a66}.confirm-dialog-badge{color:#884f45;background:#f7dcd5;border:2px solid #303a37;border-radius:7px;align-items:center;gap:6px;min-height:31px;padding:5px 10px;font-size:11px;font-weight:700;display:inline-flex;position:absolute;top:-15px;left:19px;transform:rotate(-1.5deg)}.confirm-dialog-heading{align-items:center;gap:12px;margin:10px 0 16px;display:flex}.confirm-dialog-heading>span{color:#a65e50;background:#f9e6e1;border:1.5px solid #d8a99d;border-radius:50%;flex:0 0 44px;place-items:center;width:44px;height:44px;display:grid}.confirm-dialog-heading small{color:#8b928b;margin-bottom:2px;font-size:10px;display:block}.confirm-dialog-heading h2{font-size:19px}.confirm-dialog-copy{font-size:14px;font-weight:600;line-height:1.75}.confirm-dialog-note{color:#777f78;margin-top:9px;font-size:11px;line-height:1.85}.journal-delete-heading{align-items:flex-start}.journal-delete-heading>span{margin-top:2px}.journal-delete-heading>div{min-width:0}.journal-delete-heading h2{font-size:20px;line-height:1.45}.journal-delete-heading strong{color:#26322f;margin-top:6px;font-size:17px;font-weight:700;line-height:1.5;display:block}.journal-delete-dialog .confirm-dialog-note{margin-top:18px}.confirm-dialog-error{margin:12px 0 0}.confirm-dialog-actions{grid-template-columns:1fr 1.25fr;gap:9px;margin-top:20px;display:grid}.confirm-dialog-actions button{border-radius:8px;min-height:45px}button.destructive{color:#fffdf9;background:#b96f60;border:1.5px solid #9f5d50;justify-content:center;align-items:center;gap:7px;padding:10px 14px;font-size:12px;font-weight:600;display:flex;box-shadow:2px 2px #e5c4bb}button.destructive:hover:not(:disabled){background:#a45f53}.sheet form>label,.generation-form>label:not(.check-label){color:#73846f;flex-direction:column;gap:8px;margin:15px 0;font-size:12px;display:flex}.sheet input:not([type=checkbox]),.sheet textarea,.sheet select{outline-color:var(--accent);background:#fffefa;border:1px solid #dce0d4;border-radius:9px;width:100%;min-width:0;padding:11px;font-size:13px}.sheet textarea{resize:vertical}.sheet details{color:#79816f;margin:13px 0;font-size:12px}.sheet details p{white-space:pre-wrap;background:#f1f2e9;padding:12px}.sheet summary{cursor:pointer}.muted{color:#939789;font-size:12px;line-height:1.85}.notice{color:#74866e;background:#edf2e8;border-radius:9px;gap:10px;margin-bottom:20px;padding:14px;font-size:12px;line-height:1.9;display:flex}.notice svg{margin-top:2px}.choice-list button{border-bottom:1px solid #e5e7dc;justify-content:space-between;align-items:center;width:100%;padding:16px 8px;font-size:14px;display:flex}.choice-list svg{color:#70a58b}.theme-list>div{border-bottom:1px solid #e6e9dd;align-items:center;gap:12px;padding:14px 3px;display:flex}.theme-list b{font-size:13px;font-weight:500}.theme-list small{color:#959f8c;font-size:10px;display:block}.theme-list>div>span:nth-child(2){flex:1}.theme-swatch{border:1px solid #dadfd4;border-radius:8px;flex-shrink:0;width:46px;height:40px}.swatch-B{background:#f9e4e0;padding:7px 4px}.theme-list .chosen{color:#538a6d}.theme-list+.muted{margin-top:16px}.history-finder{padding:3px 0 16px}.history-mode-switch{background:#eef1eb;border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin-bottom:18px;padding:4px;display:grid}.history-mode-switch button{color:#7b827d;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:38px;font-size:12px;display:flex}.history-mode-switch button.active{color:#4f7f72;background:#fffefa;font-weight:600;box-shadow:0 1px 5px #34473f14}.history-finder h3{font-size:15px;font-weight:650}.history-search,.history-date-picker{color:#7b9388;background:#fffefa;border:1px solid #dce0d4;border-radius:12px;align-items:center;gap:10px;min-height:48px;padding:0 8px 0 13px;display:flex}.history-search:focus-within,.history-date-picker:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #78b8b01a}.sheet .history-search input,.sheet .history-date-picker input{background:0 0;border:0;outline:none;flex:1;padding:10px 0}.history-search button{color:#fff;background:#699e91;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;display:grid}.history-search button:disabled,.history-date-picker button:disabled{color:#fff;background:#d9ded7}.history-date-picker input{color:#59635f}.history-date-picker button{color:#fff;background:#699e91;border-radius:9px;flex:none;min-width:48px;height:32px;padding:0 10px;font-size:12px}.history-finder .history-error{color:#a86558;margin:8px 2px 0}.history-results{border-top:1px solid #e4e7dc;margin-top:20px;padding-top:18px}.history-results>div{justify-content:space-between;align-items:center;margin-bottom:3px;display:flex}.history-results>div span{color:#8a9187;font-size:11px}.history-results>button{text-align:left;border-bottom:1px solid #e7e9df;align-items:center;gap:12px;width:100%;padding:13px 2px;display:flex}.history-results>button>span{flex:1;min-width:0}.history-results>button b{color:#69877a;font-size:11px;font-weight:600}.history-results>button p{color:#4e5754;white-space:nowrap;text-overflow:ellipsis;margin:3px 0 0;font-size:12px;overflow:hidden}.history-results>button svg{color:#8ca096;flex:none}.history-results .history-no-results{text-align:center;padding:18px 0 2px}.anchored-message{border-radius:12px;animation:2.4s ease-out history-anchor}@keyframes history-anchor{0%,24%{background:#e8f2ec;box-shadow:0 0 0 8px #e8f2ec}to{background:0 0;box-shadow:0 0 #0000}}.about{text-align:center;padding:15px 0 30px}.about>.mascot{width:115px;margin:0 auto 20px}.about p{color:#7e8d75;margin:9px 0 14px;font-size:12px}.about small{color:#afb4a7}.generation-sheet{max-height:92dvh}.generation-sheet .sheet-body{padding-top:4px;line-height:1.5}.generation-form{flex-direction:column;gap:20px;padding-bottom:2px;display:flex}.generation-intro{color:var(--muted);margin:0;font-size:14px;line-height:21px}.generation-form .sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.generation-steps{grid-template-columns:1fr 1fr;gap:8px;margin:0;padding:0;list-style:none;display:grid}.generation-steps li{border:1px solid var(--line);color:var(--muted);background:var(--surface);text-align:center;border-radius:8px;padding:10px 8px;font-size:12px;font-weight:600}.generation-steps li.active{border-color:var(--accent);background:var(--mint-soft);color:var(--accent-ink)}.generation-steps li.done{color:var(--accent-ink)}.generation-next{min-height:48px}.generation-section{min-width:0}.generation-section-heading{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.generation-section-heading>div{min-width:0}.generation-section-heading h3{color:var(--ink);margin:0;font-size:18px;font-weight:600;line-height:26px}.generation-section-heading p{color:var(--muted);margin:4px 0 0;font-size:12px;line-height:18px}.generation-day-count{background:var(--mint-soft);color:var(--accent-ink);border-radius:8px;flex:none;padding:4px 8px;font-size:12px;font-weight:600;line-height:18px}.generation-filters{grid-template-columns:minmax(0,1fr) 140px;gap:8px;margin-bottom:8px;display:grid}.generation-filters label{border:1px solid var(--line);background:var(--surface);min-width:0;min-height:44px;color:var(--muted);border-radius:8px;align-items:center;gap:6px;padding:0 9px;display:flex}.generation-filters label:focus-within{border-color:var(--accent)}.generation-filters svg{flex:0 0 17px}.generation-sheet .generation-filters input:not([type=checkbox]){width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;padding:0;font-size:12px}.generation-clear{min-height:32px;color:var(--accent-ink);align-self:flex-start;margin:0 0 8px;font-size:12px}.generation-form .date-options{border:1px solid var(--line);background:var(--surface);border-radius:12px;max-height:340px;overflow:hidden auto}.generation-date-row{padding:10px 12px;display:block}.generation-date-row+.generation-date-row{border-top:1px solid var(--line)}.generation-date-row:has(input:checked){background:#f1f8f5}.generation-date-row:focus-within{outline:2px solid var(--accent);outline-offset:-2px}.generation-date-main{cursor:pointer;align-items:flex-start;gap:12px;display:flex}.generation-date-row input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent-ink);flex:0 0 18px;margin:0}.generation-date-copy{flex-direction:column;gap:2px;min-width:0;display:flex}.generation-date-copy time{color:var(--muted);white-space:nowrap;font-size:12px;line-height:18px}.generation-date-copy>span{overflow-wrap:anywhere;min-width:0;color:var(--ink);font-size:14px;font-weight:500;line-height:21px}.generation-date-meta{color:var(--muted);flex-direction:column;gap:6px;margin:6px 0 0 30px;font-size:12px;line-height:18px;display:flex}.generation-comic-exists{color:var(--accent-ink);font-weight:600}.generation-people{flex-wrap:wrap;gap:6px;display:flex}.generation-people>span{background:var(--mint-soft);color:var(--accent-ink);border-radius:8px;flex-wrap:wrap;align-items:center;gap:4px;padding:4px 7px;display:inline-flex}.generation-people>span.missing{background:var(--yellow-soft);color:var(--ink)}.generation-people button,.generation-blockers button{min-height:28px;color:var(--accent-ink);align-items:center;gap:2px;font-weight:600;display:inline-flex}.generation-empty{color:var(--muted);margin:0;padding:16px 12px;font-size:14px}.generation-empty button{color:var(--accent-ink);margin-left:8px}.generation-day-status{color:var(--accent-ink);margin:8px 0 0;font-size:12px;line-height:18px}.generation-blockers{border:1px solid var(--line);background:var(--yellow-soft);border-radius:12px;padding:12px}.generation-blockers h3{margin:0 0 6px;font-size:14px}.generation-blockers>div{justify-content:space-between;align-items:center;gap:8px;min-height:36px;font-size:12px;display:flex}.generation-blockers>div+div{border-top:1px solid var(--line)}.generation-style-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.generation-style-grid>button{cursor:pointer;border-radius:12px;position:relative}.generation-style-grid>button:focus-visible{outline:2px solid var(--accent-ink);outline-offset:2px}.generation-style-grid img{aspect-ratio:3/2;object-fit:cover}.generation-style-grid>button>span{justify-content:space-between;align-items:flex-start;gap:2px;min-height:38px;padding:5px 6px 6px}.generation-style-grid b{overflow-wrap:anywhere;font-size:11px;line-height:16px}.generation-style-grid svg{color:var(--accent-ink);flex:0 0 15px;margin-top:1px}.generation-style-preview{z-index:1;border:1px solid var(--line);background:var(--surface);border-radius:12px;margin:0;position:sticky;top:47px;overflow:hidden;box-shadow:0 8px 18px #28303318}.generation-style-preview img{aspect-ratio:3/2;object-fit:contain;width:100%;display:block}.generation-style-preview figcaption{color:var(--ink);padding:6px 12px;font-size:12px;font-weight:600;line-height:18px}.generation-expansion{border-top:1px solid var(--line);padding-top:16px}.generation-expansion .check-label{min-height:44px;color:var(--ink);margin:0}.generation-expansion p{color:var(--muted);margin:0 0 0 24px;font-size:12px;line-height:18px}.generation-action{flex-direction:column;gap:12px;display:flex}.generation-buttons{grid-template-columns:1fr 1fr;gap:8px;display:grid}.generation-buttons button{min-height:44px}.generation-notice{background:var(--blue-soft);color:#59726f;border-radius:12px;align-items:flex-start;gap:8px;margin:0;padding:12px;font-size:12px;line-height:18px;display:flex}.generation-notice svg{flex:0 0 18px;margin-top:1px}@media (width<=360px){.generation-sheet{padding-left:16px;padding-right:16px}.generation-form{gap:16px}.generation-date-row{padding-left:10px;padding-right:10px}.generation-filters{grid-template-columns:minmax(0,1fr) 126px}}input[type=checkbox]{accent-color:#78a890;width:16px;height:16px}.check-label{align-items:center;gap:8px;margin:22px 0 5px;font-size:13px;display:flex}.check-label small{color:#b69c62}.item-detail p{color:#7f8d77;white-space:pre-wrap;margin-top:12px;line-height:2}.saved-link-action{color:var(--accent-ink);align-items:center;gap:6px;width:100%;padding:12px 0 0;font-size:11px;display:flex}.saved-link-action svg:last-child{margin-left:auto}.saved-related{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.saved-related button{text-align:left;color:#658472;background:#f0f5ee;border-radius:5px;align-items:center;gap:4px;max-width:100%;min-height:28px;padding:4px 6px;font-size:10px;display:inline-flex}.saving-status{align-items:center;gap:8px;display:flex}.save-failure{background:var(--surface);border:1.5px solid var(--comic-line);box-shadow:3px 3px 0 var(--pink-soft);border-radius:14px;flex-shrink:0;align-items:center;gap:12px;margin:0 16px 8px;padding:12px 14px;font-size:12px;display:flex}.save-failure div{flex:1;min-width:0}.save-failure b{color:var(--danger);font-size:13px;font-weight:600;display:block}.save-failure p{color:var(--muted);margin-top:2px;font-size:11px;line-height:1.5}.save-failure button{border:1.5px solid var(--comic-line);background:var(--surface);height:32px;color:var(--danger);box-shadow:1.5px 1.5px 0 var(--comic-line);cursor:pointer;border-radius:8px;flex:none;margin-left:auto;padding:0 12px;font-size:12px;font-weight:600}.save-failure button:hover{background:#fdf2f0}.form-error{color:#a25547;background:#fff0eb;border-left:2px solid #c68777;margin-top:15px;padding:10px;font-size:12px}.confirmation-row .agent-content{width:calc(100% - 46px)}.pending-group>h2{color:var(--muted);margin:10px 0;font-size:12px;font-weight:600}.pending-card{border:1.5px solid var(--comic-line);background:var(--surface);box-shadow:3px 3px 0 var(--mint-soft);border-radius:14px;margin-top:12px;padding:14px}.pending-heading{align-items:center;gap:10px;display:flex}.pending-heading>div{flex:1;min-width:0}.pending-heading .library-art{flex:0 0 40px;width:40px;height:40px}.pending-heading small{color:var(--muted);font-size:11px;font-weight:500}.pending-heading h3{color:var(--ink);font-size:15px;font-weight:650}.pending-heading>svg{color:var(--muted)}.pending-card>p{color:var(--muted);margin:10px 0 12px;font-size:12px;line-height:1.6}.pending-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.pending-actions>button{border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:36px;padding:6px 10px;font-size:12px;font-weight:600;display:inline-flex}.pending-actions>.primary{border:1.5px solid var(--comic-line);background:var(--accent);color:#fff;box-shadow:1.5px 1.5px 0 var(--comic-line)}.pending-actions>.secondary{border:1px solid var(--line);background:var(--surface);color:var(--ink)}.pending-footer{justify-content:flex-end;gap:16px;margin-top:10px;display:flex}.pending-footer>button{min-height:32px;color:var(--muted);cursor:pointer;background:0 0;border:none;padding:4px 6px;font-size:11px}.pending-footer>button:hover{color:var(--ink)}.library-art{object-fit:contain;-webkit-user-select:none;user-select:none;flex:0 0 48px;width:48px;height:48px;display:block}.library-heading{align-items:center;gap:13px;padding:8px 0;display:flex}.library-heading .library-art{flex-basis:61px;width:61px;height:61px}.library-heading h2{font-size:19px}.library-heading p{color:#858c7e;margin-top:6px;font-size:11px}.library-page .search-field{margin:12px 0}.library-filters{scrollbar-width:none;gap:7px;padding:0 0 14px;display:flex;overflow-x:auto}.library-filters button{color:#81857b;background:#efeee8;border-radius:18px;flex-shrink:0;min-height:34px;padding:7px 13px;font-size:11px}.library-filters button.active{color:#396649;background:#dfece0}.library-empty{text-align:center;padding:35px 15px}.library-empty .library-art{width:80px;height:80px;margin:0 auto 18px}.library-empty h3{margin:0 0 20px;font-size:14px}.library-empty>button{margin:0 auto}.library-item{border-radius:8px}.library-item small{color:#7e8979;line-height:1.7;display:block}.library-item p{white-space:pre-wrap;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.library-page.people{padding-top:3px}.library-page.people .search-field{background:#fffefa;border:1.5px solid #394341;border-radius:8px;margin:5px 0 13px;box-shadow:3px 3px #e4eee6}.library-page.people .library-filters{gap:6px;padding:0 0 16px}.library-page.people .library-filters button{color:#6c7671;background:#fffefa;border:1px solid #d7ddd7;border-radius:6px;min-height:31px;padding:5px 11px}.library-page.people .library-filters button.active{color:#283532;background:#f8e5df;border:1.5px solid #34403d;font-weight:600;box-shadow:2px 2px #e7eee7}.library-page.people .library-records{gap:14px;display:grid}.library-page.people .person-list-item{background:#fffefa;border:1.5px solid #394341;border-radius:8px;align-items:stretch;min-height:136px;margin:0;padding:10px;position:relative;box-shadow:3px 3px #eadfd6}.library-page.people .person-list-item:nth-child(2n){box-shadow:3px 3px #dfeae1}.person-list-portrait{aspect-ratio:1;color:#c99168;background:#eff5ed;border:1px solid #bacbc0;border-radius:6px;flex:0 0 47%;align-self:center;width:47%;max-width:176px;min-height:0;display:block;position:relative;overflow:hidden}.person-list-portrait:after{content:"";pointer-events:none;border:1px dashed #bfd0c5;border-radius:3px;position:absolute;inset:5px}.person-list-portrait.has-image:after{display:none}.person-list-portrait img{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.person-list-portrait.no-image img{object-fit:contain;padding:7px}.person-list-portrait .person-style-count{z-index:1;color:#426f61;white-space:nowrap;background:#fffef4ed;border:1px solid #d9e8e1;border-radius:5px;padding:2px 5px;font-size:9px;font-weight:650;line-height:1.4;position:absolute;bottom:3px;right:3px}.person-list-item .library-item-copy{flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:8px;padding:3px 0;display:flex}.person-list-item .library-item-copy>b{color:#273330;overflow-wrap:anywhere;font-size:16px;line-height:1.4}.person-list-item .library-item-copy>p{width:100%;margin:0;line-height:1.55}.person-list-item .library-item-copy>small{margin-top:auto}.person-list-tags{gap:4px;max-width:100%;display:flex;overflow:hidden}.person-list-tags i{color:#765f59;background:#fae8e3;border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:9px;font-style:normal;line-height:1.6}.person-list-item>svg{color:#53645f;align-self:center}.record-page{padding:0 23px 28px}.record-page.people{padding-top:3px}.record-page.people:before{content:"";opacity:.62;background:#79b7aa;height:4px;margin:0 -23px 17px;display:block}.record-intro{border-bottom:1px solid var(--line);grid-template-columns:88px minmax(0,1fr);align-items:center;gap:16px;margin-bottom:19px;padding:8px 0 21px;display:grid}.record-intro .library-art{object-fit:contain;width:88px;height:88px;margin:0}.record-intro-copy{min-width:0}.record-intro-copy>span{color:#789083;font-size:10px}.record-intro h1{overflow-wrap:anywhere;margin:5px 0 8px;font-size:24px;line-height:1.3}.record-intro small{color:#8a9182;font-size:10px;display:block}.record-category{color:#517668;background:#e8f2ed;border-radius:999px;margin-top:9px;padding:4px 8px;font-size:10px;font-style:normal;display:inline-flex}.record-section{margin:0 0 19px}.record-section h2{color:#67816e;align-items:center;gap:8px;margin-bottom:10px;font-size:13px;display:flex}.record-section>p{white-space:pre-wrap;font-size:14px;line-height:1.95}.record-section>small{color:#959688;margin-top:9px;font-size:11px;line-height:1.8;display:block}.comic-section-label{border:2px solid var(--comic-line);background:var(--mint-soft);color:#283533;border-radius:7px;align-items:center;gap:7px;width:fit-content;min-height:32px;padding:5px 11px;font-size:13px;font-weight:600;line-height:1.5;display:inline-flex}.comic-section-label>svg{color:#314b43}.app[data-route^="record/media/"] .page-header{min-height:68px;padding:max(11px, env(safe-area-inset-top)) 14px 9px}.app[data-route^="record/media/"] .page-header h1{font-size:22px}.record-page.media,.record-page.places,.record-page.thoughtsBook,.record-page.experiences{padding:5px 20px 32px}.record-detail-hero{border:2px solid var(--comic-line);background:#fffdf8;border-radius:18px 16px 20px 17px;grid-template-columns:92px minmax(0,1fr);align-items:center;gap:16px;min-height:132px;padding:17px;display:grid;box-shadow:4px 5px #eadfe8}.record-detail-art{background:#f4eaf2;border:1px solid #dccedc;border-radius:17px 19px 15px 18px;place-items:center;width:92px;height:96px;display:grid;transform:rotate(-1.5deg)}.record-detail-art .library-art{object-fit:contain;width:84px;height:84px;margin:0}.record-detail-hero[data-kind=places] .record-detail-art{background:#edf5eb;border-color:#c8d9cd}.record-detail-hero[data-kind=thoughtsBook] .record-detail-art{background:#faeae6;border-color:#e4cbc5}.record-detail-hero[data-kind=experiences] .record-detail-art{background:#fbf2d7;border-color:#e2d3a8}.record-detail-copy{min-width:0}.record-detail-eyebrow{background:var(--mint-soft);color:#456b5c;border-radius:999px;align-items:center;min-height:27px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.record-detail-copy h1{color:var(--ink);overflow-wrap:anywhere;margin:8px 0 7px;font-size:22px;line-height:1.35}.record-detail-updated{color:var(--muted);align-items:center;gap:5px;font-size:10px;line-height:1.6;display:flex}.record-detail-updated time{white-space:nowrap}.record-detail-copy-section,.record-detail-map-section{border-bottom:1px solid var(--line);margin:24px 2px 25px;padding:0 0 22px}.record-detail-copy-section>h2,.record-detail-map-section>h2{margin-bottom:12px;transform:rotate(-.35deg)}.record-detail-copy-section>p{font-size:14px;line-height:1.65}.record-detail-copy-section.is-empty>p{color:var(--muted)}.record-detail-map-section .place-detail-map,.record-detail-map-section .place-detail-unmarked{margin:12px 0 0}.record-detail-related{margin-bottom:0}.record-detail-related>h2{margin-bottom:13px;transform:rotate(.3deg)}.record-detail-related .diary-list{gap:12px}.record-detail-related .diary-card{background:#fffefa;border:1.5px solid #394341;border-radius:14px 12px 15px 13px;align-items:stretch;min-height:112px;padding:13px 14px;box-shadow:3px 3px #eee3db}.record-detail-related .diary-card:nth-child(2n){box-shadow:3px 3px #e2ebe3}.record-detail-related .date-line{margin-bottom:6px}.record-detail-related .date-line b{background:var(--mint-soft);color:#31453d;border-radius:8px;align-items:center;min-height:23px;padding:2px 8px;display:inline-flex}.record-detail-related .diary-card h3{margin-bottom:5px;font-size:14px;line-height:1.5}.record-detail-related .diary-card p{font-size:11px;line-height:1.65}.record-detail-related .entry-meta{margin-top:8px}@media (width<=360px){.record-page.media,.record-page.places,.record-page.thoughtsBook,.record-page.experiences{padding-left:16px;padding-right:16px}.record-detail-hero{grid-template-columns:76px minmax(0,1fr);gap:12px;padding:14px}.record-detail-art{width:76px;height:82px}.record-detail-art .library-art{width:72px;height:72px}.record-detail-copy h1{font-size:19px}}.person-hero{margin-bottom:10px;padding:12px 0 16px;position:relative}.person-style-help{color:var(--muted);padding:34px 2px 10px;font-size:12px;line-height:1.6}.person-style-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.person-style-card{border:2px solid var(--comic-line);background:var(--surface);min-width:0;box-shadow:3px 3px 0 var(--mint-soft);border-radius:16px;overflow:hidden}.person-style-open{text-align:left;width:100%;display:block}.person-style-pending{border:2px solid var(--comic-line);background:var(--surface);min-width:0;box-shadow:3px 3px 0 var(--mint-soft);border-radius:16px;overflow:hidden}.person-style-pending-art{aspect-ratio:1;width:100%;color:var(--accent-ink);background:linear-gradient(145deg,#edf5ef,#f9f4e8);place-items:center;display:grid;position:relative;overflow:hidden}.person-style-pending-art:before{aspect-ratio:1;content:"";border:2px dashed #9bc3b5;border-radius:50%;width:54%;position:absolute}.person-style-pending-art>svg{z-index:1}.person-style-pending-art i{background:#efc8a8;border-radius:50%;width:8px;height:8px;position:absolute}.person-style-pending-art i:first-of-type{top:25%;right:23%}.person-style-pending-art i:nth-of-type(2){background:#8bbdb3;width:5px;height:5px;bottom:22%;left:23%}.person-style-card:focus-within,.person-style-card:hover{border-color:var(--accent)}.person-style-open:hover,.person-style-open:focus-visible{background:var(--mint-soft)}.person-style-grid img{aspect-ratio:1;object-fit:cover;width:100%;display:block}.person-style-open span{justify-content:space-between;gap:4px;min-height:44px;padding:7px 8px;display:flex}.person-cover-choice,.person-cover-current{border-top:1px solid var(--line);width:100%;min-height:44px;color:var(--accent-ink);text-align:center;justify-content:center;align-items:center;padding:8px;font-size:11px;font-weight:600;display:flex}.person-cover-choice:hover,.person-cover-choice:focus-visible,.person-cover-current{background:var(--mint-soft)}.person-cover-choice:disabled{opacity:.55}.person-style-pending span{justify-content:space-between;gap:4px;min-height:44px;padding:7px 8px;display:flex}.person-style-pending b{min-width:0;font-size:11px;line-height:1.4}.person-style-pending small{color:var(--accent-ink);flex:none;font-size:9px}.person-style-grid b{min-width:0;font-size:11px;line-height:1.4}.person-style-grid small{color:var(--accent-ink);flex:none;font-size:9px}.person-create-character{border:1px solid var(--line);background:var(--surface);width:100%;min-height:52px;color:var(--accent-ink);border-radius:12px;justify-content:center;align-items:center;gap:8px;margin-top:12px;font-size:14px;font-weight:600;display:flex}.person-style-choice h3{font-size:16px}.person-style-choice>p{color:var(--muted);margin-top:4px;font-size:12px;line-height:1.6}.person-style-picker{margin-top:14px}.person-style-picker>button>span{align-items:center;min-height:44px;padding:8px 10px}.person-style-picker img{aspect-ratio:3/2;object-fit:contain}.person-character-current-note{color:var(--muted);text-align:center;margin-top:-7px;font-size:11px}.person-character-history{margin-top:12px}.person-character-history h4{margin-bottom:8px;font-size:13px}.person-character-history>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.person-character-history button{border:1px solid var(--line);background:var(--surface);border-radius:10px;min-width:0;overflow:hidden}.person-character-history button.active{border:2px solid var(--accent)}.person-character-history img{aspect-ratio:1;object-fit:cover;width:100%;display:block}.person-character-history span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;padding:5px;font-size:9px;display:block;overflow:hidden}.person-panel-title{z-index:2;padding-left:13px;padding-right:13px;font-weight:700;position:absolute;top:0;left:10px;transform:rotate(-1deg)}.person-portrait{aspect-ratio:1.38;background:#fffefa;border:2px solid #2f3937;border-radius:8px;width:100%;margin:0 auto;display:block;position:relative;overflow:hidden;box-shadow:4px 4px #dfe9df}.person-portrait:after{content:"";pointer-events:none;border:1px dashed #b9cbc0;border-radius:5px;position:absolute;inset:12px}.person-portrait.has-image:after{border-color:#ffffffa8}.person-portrait>img{object-fit:cover;width:100%;height:100%;display:block}.person-portrait>span{color:#56786a;flex-direction:column;justify-content:center;align-items:center;gap:8px;height:100%;padding:28px;display:flex}.person-portrait>span svg{color:#ce9c72}.person-portrait>span b{font-size:15px}.person-portrait>i{z-index:1;color:#517465;background:#fffef4eb;border:1px solid #c8d9cd;border-radius:6px;align-items:center;gap:4px;padding:6px 8px;font-size:10px;font-style:normal;display:inline-flex;position:absolute;bottom:13px;right:13px}.person-meta{color:#90978e;justify-content:center;margin-top:11px;display:flex}.person-meta small{font-size:10px}.person-facts{border-top:1px solid #dfe3da;border-bottom:1px solid #dfe3da;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 22px;padding:13px 30px 12px 0;display:grid;position:relative}.person-facts>div{border-right:1px dashed #d8ddd5;min-width:0;padding:0 10px}.person-facts>div:first-of-type{padding-left:0}.person-facts>div:last-of-type{border-right:0}.person-facts b{color:#657a6d;font-size:10px;font-weight:600;line-height:1.45;display:block}.person-facts p{color:#414947;white-space:nowrap;text-overflow:ellipsis;margin-top:5px;font-size:11px;line-height:1.5;overflow:hidden}.person-facts-edit{color:#557568;place-items:center;width:30px;height:30px;display:grid;position:absolute;top:8px;right:0}.tag-editor{gap:9px;margin:15px 0;display:grid}.tag-editor>span{color:#73846f;font-size:12px}.editable-tags,.relationship-options{flex-wrap:wrap;gap:7px;display:flex}.editable-tags:empty{display:none}.editable-tags button,.relationship-options button{color:#657268;background:#fffefa;border:1px solid #d8ddd3;border-radius:7px;align-items:center;gap:4px;min-height:32px;padding:6px 9px;font-size:11px;display:inline-flex}.relationship-options button[aria-pressed=true]{color:#3f6c52;background:#e6f1e5;border-color:#7dad91}.tag-entry{grid-template-columns:minmax(0,1fr) auto;gap:7px;display:grid}.tag-entry button{color:#4f7561;border:1px solid #b8cfc0;border-radius:7px;justify-content:center;align-items:center;gap:4px;min-width:68px;font-size:11px;display:inline-flex}.character-creator{gap:20px;padding-bottom:8px;display:grid}.character-creator>.character-steps{margin:-8px -12px 0}.character-creator .character-form-step-content{gap:20px}.person-character-new{border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:10px 14px;display:flex}.person-character-style-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.person-character-style-heading h3{font-size:18px;line-height:26px}.person-character-style-heading .character-gallery-link{min-height:36px;margin:0}.person-character-current{border:2px solid var(--comic-line);background:var(--surface);box-shadow:3px 3px 0 var(--mint-soft);border-radius:12px;align-items:center;gap:12px;padding:10px;display:flex}.person-character-current img{object-fit:cover;border-radius:8px;flex:0 0 76px;width:76px;height:76px}.person-character-current>div{min-width:0}.person-character-current b{font-size:14px;line-height:21px}.person-character-current p{color:var(--muted);margin-top:4px;font-size:12px;line-height:18px}.person-character-photo h3,.person-character-description .character-field-label{color:var(--ink);margin-bottom:10px;font-size:16px;font-weight:600;line-height:24px;display:block}.person-character-photo .character-upload{min-height:148px}.person-character-photo .character-upload.filled{min-height:180px}.person-character-description textarea{border:1px solid var(--line);background:var(--surface);resize:vertical;border-radius:12px;min-height:112px;padding:13px 14px;font-size:13px;line-height:1.7}.person-character-generation-note{color:var(--muted);font-size:12px;line-height:18px}.person-character-job-status{color:var(--accent-ink);align-items:center;gap:8px;font-size:13px;display:flex}.person-character-actions{z-index:2;padding:12px 0 max(12px, env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--paper);grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:8px;display:grid;position:sticky;bottom:-25px}.person-character-actions>button{border-radius:12px;justify-content:center;align-items:center;gap:7px;min-height:48px;font-size:14px;font-weight:600;display:inline-flex}.person-character-actions>button:only-child{grid-column:1/-1}.person-character-actions .secondary{border:1px solid var(--line);background:var(--surface)}.person-character-actions .primary{background:var(--accent);color:#173d38}.person-character-actions .primary:disabled{color:#969b98;opacity:1;background:#e1e3e1}@media (width<=360px){.person-style-grid{gap:9px}.person-style-grid span{display:block}.person-style-grid small{margin-top:2px;display:block}}.related-timeline{border-top:0;margin-top:0;padding-top:0}.related-timeline>h2 small{color:#557467;background:#edf3ef;border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:10px;display:inline-flex}.record-page.people .related-timeline>h2{transform:rotate(.4deg)}.record-page.people .related-timeline .diary-list{margin-top:12px}.record-page.people .diary-card{border:2px solid #3b4341;box-shadow:3px 3px #e9ddd1}.sample-notice{color:#8c9181;padding:15px 0;font-size:11px;line-height:1.8}.journal-state{background:#e4f0e4;border-radius:5px;margin-top:12px;padding:4px 8px;display:inline-block;color:#5c8062!important;font-size:10px!important}.journal-state.raw{background:#fff0d6;color:#977943!important}.entry-meta{flex-wrap:wrap}.entry-page .section-title h2{margin-bottom:0}.related-links>button{text-align:left;max-width:100%}.back-conversation{color:#658f7c;justify-content:center;align-items:center;gap:7px;width:100%;min-height:44px;margin-top:15px;font-size:12px;display:flex}.relation-editor>label,.new-candidate label{color:#73846f;flex-direction:column;gap:8px;margin:8px 0 15px;font-size:12px;display:flex}.relation-editor fieldset{border:0;max-height:220px;margin:17px 0;padding:0;overflow:auto}.relation-editor legend{color:#7b8676;margin-bottom:8px;font-size:12px}.record-choice{border-bottom:1px solid #e6e8df;align-items:flex-start;gap:10px;padding:10px 0;display:flex}.record-choice input{flex-shrink:0;margin-top:5px}.record-choice span{min-width:0}.record-choice b{font-size:13px;font-weight:500}.record-choice small{color:#8c9584;font-size:11px;line-height:1.7;display:block}.new-candidate{border-top:1px solid #e1e4d9;margin-top:24px;padding-top:16px}.match-list>button{text-align:left;border-bottom:1px solid #e1e4d9;align-items:center;gap:12px;width:100%;padding:15px 0;display:flex}.match-list>button>span{flex:1;min-width:0}.match-list b{font-size:14px}.match-list small{color:#87917f;font-size:11px;line-height:1.8;display:block}.app-toast{top:max(92px, calc(env(safe-area-inset-top) + 72px));z-index:60;border:1.5px solid var(--comic-line);background:var(--surface);min-width:0;color:var(--ink);box-shadow:3px 4px 0 var(--mint-soft), 0 9px 24px #283f431c;pointer-events:none;border-radius:14px 16px 15px 12px;align-items:center;gap:11px;padding:11px 35px 11px 11px;display:flex;position:absolute;left:20px;right:20px}.app-toast-mark{border:1.5px solid var(--comic-line);background:var(--mint-soft);width:30px;height:30px;color:var(--accent-ink);border-radius:10px 9px 11px 8px;flex:0 0 30px;place-items:center;display:grid;transform:rotate(-5deg)}.app-toast-error .app-toast-mark{background:var(--pink);color:var(--danger)}.app-toast-info .app-toast-mark{background:var(--blue);color:var(--accent-ink)}.app-toast-error{box-shadow:3px 4px 0 var(--pink), 0 9px 24px #283f431c}.app-toast-info{box-shadow:3px 4px 0 var(--blue), 0 9px 24px #283f431c}.app-toast-message{overflow-wrap:anywhere;min-width:0;font-size:13px;font-weight:600;line-height:1.5}.app-toast-accent{border-top:2px solid var(--accent);border-right:2px solid var(--accent);width:12px;height:12px;position:absolute;top:9px;right:12px;transform:rotate(15deg)}.app-toast-error .app-toast-accent{border-color:var(--danger)}dialog.sheet>.app-toast{top:max(20px, env(safe-area-inset-top));position:fixed;left:max(20px,50vw - 200px);right:max(20px,50vw - 200px)}@media (width<=360px){.app-toast{padding-right:28px;left:16px;right:16px}dialog.sheet>.app-toast{left:16px;right:16px}}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=360px){.chat-header{gap:7px;padding-left:3px}.chat-header .header-avatar{width:40px;height:40px}.chat-header h1{font-size:21px}.chat-header p{font-size:10px}.chat-scroll{padding-left:12px;padding-right:12px}.agent-row{gap:8px}.agent-avatar{flex-basis:31px;width:31px;height:31px}.agent-content{max-width:calc(100% - 39px)}.saved-card{padding:10px}.saved-art{flex-basis:52px;height:65px}.saved-actions{gap:3px}.greeting h1{font-size:23px}.welcome-art{height:115px}.home-scroll{padding-left:17px;padding-right:17px}.library-grid{gap:9px}.library-tile{gap:5px;padding:11px 7px}.library-icon{flex-basis:40px;width:40px;height:40px}.library-tile b{font-size:13px}.library-tile small{font-size:10px}.daily-note-art{width:82px;height:62px}.comics-lead h2{font-size:24px;line-height:32px}.comics-create{padding:16px}.comics-lead>span{display:none}.comics-empty-art{height:104px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.account-gate{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:18px;padding:28px;display:flex;overflow-y:auto}.account-gate>img{object-fit:contain;width:100px;height:100px}.account-gate h1{font-size:25px}.account-gate .account-form{text-align:left;width:100%;max-width:340px}.account-form input{background:var(--surface);border:1px solid #cbd8cf;border-radius:8px;width:100%;min-width:0;min-height:46px;padding:10px 12px;font-size:16px}.account-form .primary{min-height:46px}.account-gate>img{flex-shrink:0}@media (height<=620px){.account-gate{justify-content:flex-start}}.account-gate p{align-items:center;gap:8px;font-size:14px;line-height:1.8;display:flex}.account-security{gap:12px;padding-bottom:8px;display:grid}.account-security>p{color:#66716c;font-size:13px;line-height:1.65}.account-security h3{margin:8px 0 0;font-size:14px}.account-security ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.account-security li{border:1px solid #dce5df;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;display:flex}.account-security li>span{gap:3px;min-width:0;display:grid}.account-security li small{color:#76817b}.account-security label{gap:7px;font-size:13px;display:grid}.account-security input{background:var(--surface);min-height:44px;font:inherit;border:1px solid #cbd8cf;border-radius:8px;padding:9px 11px}.account-security .text-button{color:#527360;font:inherit;background:0 0;border:0;align-items:center;gap:5px;display:inline-flex}.account-security .danger{color:#9d5749;border-color:#d9a69b}.auth-page{min-height:0;padding:max(20px, env(safe-area-inset-top)) 28px max(20px, env(safe-area-inset-bottom));background:#fffefd;flex:1;overflow-y:auto}.auth-brand{justify-content:space-between;align-items:center;gap:14px;display:flex}.auth-brand>div{align-items:center;gap:8px;display:flex}.auth-brand img{object-fit:contain;width:38px;height:38px}.auth-brand h1{font-size:24px}.auth-language{justify-content:center;align-items:center;gap:6px;min-width:44px;min-height:44px;font-size:12px;display:flex}.auth-welcome{flex-direction:column;align-items:center;margin:22px 0 18px;display:flex}.auth-speech{background:#e7f1e9;border:1.6px solid #343b39;border-radius:17px 15px 17px 5px;max-width:100%;padding:9px 15px;font-size:13px;line-height:1.6;transform:rotate(-2deg);box-shadow:2px 3px #343b39}.auth-illustration{object-fit:contain;width:280px;max-width:100%;height:139px;margin-top:18px}.auth-heading>span{color:#816271;font-size:11px;font-weight:600}.auth-heading h2{margin:5px 0;font-size:26px;font-weight:700}.auth-heading>p{color:#737d78;overflow-wrap:anywhere;font-size:13px;line-height:1.7}.auth-form{margin-top:21px}.auth-form fieldset{border:0;min-width:0;margin:0;padding:0}.auth-form label{margin-bottom:8px;font-size:12px;font-weight:500;display:block}.auth-phone-field{background:#fff;border:1.5px solid #39423d;border-radius:8px;align-items:center;gap:8px;min-height:52px;padding:0 12px;display:flex}.auth-phone-field>svg{color:#737d78;flex-shrink:0}.auth-phone-field select{background:0 0;border:0;flex-shrink:0;width:66px;min-height:46px;font-size:13px}.auth-phone-field input{background:0 0;border:0;width:100%;min-width:0;min-height:48px;padding:0;font-size:16px}.auth-phone-field:focus-within{outline-offset:3px;outline:2px solid #88b7a9}.auth-phone-field input:focus-visible,.auth-phone-field select:focus-visible{outline:none}.auth-phone-field.has-error{border-color:#b44747}.auth-primary{color:#28322b;background:#dceb84;border:1.5px solid #303934;border-radius:8px;justify-content:center;align-items:center;gap:12px;width:100%;min-height:52px;margin-top:16px;padding:11px;font-size:15px;font-weight:600;display:flex;box-shadow:3px 4px #303934}.auth-primary:not(:disabled):hover{background:#e5f49b}.auth-primary:not(:disabled):active{transform:translate(2px,2px);box-shadow:1px 2px #303934}.auth-primary:disabled{opacity:.58}.auth-auto-account{color:#7b837e;text-align:center;margin-top:12px;font-size:10px;line-height:1.6}.auth-divider{color:#89918c;align-items:center;gap:12px;margin:18px 0 14px;font-size:11px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:#e5e9e5;flex:1;height:1px}.auth-google{background:#fff;border:1px solid #abb4ae;border-radius:8px;justify-content:center;align-items:center;gap:12px;width:100%;min-height:48px;padding:10px;font-size:14px;display:flex}.auth-google:hover{background:#f5f8f5}.auth-google img{width:19px;height:19px}.auth-provider-button{justify-content:center;width:100%;min-height:44px;display:flex;overflow:hidden}.auth-provider-button iframe{max-width:100%}.auth-provider-button.is-busy{pointer-events:none;opacity:.65}.auth-apple{color:#fff;background:#111;border:1px solid #111;border-radius:8px;justify-content:center;align-items:center;gap:10px;width:100%;min-height:48px;margin-top:10px;padding:10px;font-size:14px;display:flex}.auth-apple>span{font-size:20px;line-height:1}.auth-apple:disabled{opacity:.6}.auth-provider-note{color:#7b837e;text-align:center;margin-top:12px;font-size:11px;line-height:1.6}.auth-dev-note{color:#7d736e;align-items:baseline;gap:7px;margin-top:18px;line-height:1.6;display:flex}.auth-dev-note>span{flex-shrink:0;font-size:10px;font-weight:600}.auth-dev-note>p{font-size:10px}.auth-footer{color:#7c8981;justify-content:center;align-items:center;gap:6px;margin-top:22px;font-size:11px;display:flex}.auth-error{color:#a23d3d;margin-top:10px;font-size:12px;line-height:1.6}.auth-code-input{font-variant-numeric:tabular-nums;background:#fff;border:1.5px solid #39423d;border-radius:8px;width:100%;height:56px;padding:10px 16px;font-size:26px}.auth-code-actions{justify-content:space-between;align-items:center;gap:8px;display:flex}.auth-code-actions button{color:#4f7768;align-items:center;gap:5px;min-height:44px;font-size:12px;display:flex}@media (width<=360px){.auth-page{padding-left:20px;padding-right:20px}.auth-phone-field{gap:5px}}@media (height<=740px){.auth-welcome{margin-top:12px;margin-bottom:12px}.auth-illustration{height:110px;margin-top:12px}.auth-heading h2{font-size:24px}.auth-form{margin-top:16px}}.account-actions{text-align:center;margin:0 0 22px}.text-action{color:#4d7b68;min-height:36px;padding:8px 0;font-size:12px}.profile-intro>div:last-child{min-width:0}.profile-intro h1,.profile-intro p{overflow-wrap:anywhere}.profile-intro h1{font-size:25px}.plain-fields,.account-form fieldset{border:0;min-width:0;margin:0;padding:0}.plain-fields>label,.account-form label,.ask-panel form>label{flex-direction:column;gap:8px;margin:16px 0;font-size:13px;display:flex}.account-alert-dialog{color:#283330;background:#fffaf5;border:1.5px solid #9f5d50;border-radius:12px;align-items:flex-start;gap:13px;width:min(370px,100% - 34px);margin:auto;padding:21px;box-shadow:6px 7px #dfc8bf}.account-alert-dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#263c3a73}.account-alert-dialog[open]{display:flex}.account-alert-icon{color:#9d5749;background:#f7dcd5;border-radius:50%;flex:0 0 42px;place-items:center;width:42px;height:42px;display:grid}.account-alert-content{flex:1;min-width:0}.account-alert-content h2{margin:1px 0 7px;font-size:18px}.account-alert-content p{color:#6f716b;font-size:12px;line-height:1.75}.account-alert-content button{width:100%;min-height:43px;margin-top:17px}.service-status{text-align:center;color:#7d8273;margin:-9px 0 20px;font-size:11px;line-height:1.6}.ai-answer p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.source-links{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.source-links button{color:#547c69;text-align:left;overflow-wrap:anywhere;align-items:center;gap:5px;min-height:32px;font-size:12px;display:inline-flex}.source-links svg{flex-shrink:0}.ai-proposals{background:#f8fbf7;border:1px solid #ccd9c9;border-radius:8px;padding:13px;font-size:13px}.ai-proposals h3{margin-bottom:12px;font-size:14px}.ai-proposals details{border-top:1px solid #dde5d9;padding:10px 0}.ai-proposals summary{cursor:pointer;line-height:1.6}.ai-proposals p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.ai-decisions{margin-top:12px}.ask-messages>.bubble,.ask-messages .user-row{margin:16px 0}.ask-panel form{margin:22px 0}.ask-panel textarea{width:100%;min-height:90px;color:inherit;resize:vertical;background:#fff;border:1px solid #cbd8c8;border-radius:8px;padding:12px}.source-text pre{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.9}.message-failure{color:#945247;text-align:left;max-width:90%;margin:5px 0;font-size:12px;line-height:1.7}.markdown-text{overflow-wrap:anywhere;min-width:0;font-size:14px;line-height:1.9}.markdown-text p{white-space:normal;margin:0 0 9px}.markdown-text>:last-child{margin-bottom:0}.markdown-text ul,.markdown-text ol{margin:7px 0;padding-left:21px}.markdown-text h1,.markdown-text h2,.markdown-text h3,.markdown-text h4{margin:12px 0 6px;font-size:15px;line-height:1.7}.markdown-text pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#ecf0ed;border-radius:6px;padding:10px}.markdown-text code{font-size:12px}.markdown-text blockquote{border-left:3px solid #b4c6bc;margin:8px 0;padding-left:12px}.inline-source,.markdown-text a{color:#397961;font:inherit;text-align:inherit;padding:0;text-decoration:underline;display:inline}.proposal-before{border-bottom:1px solid #dbe1d9;margin-bottom:12px;padding:4px 0 12px}.ai-proposals h4{color:#667c6d;margin:8px 0;font-size:12px}.ai-answer>.markdown-text:not(:first-child){margin-top:8px}.library-item .media-art{object-fit:contain;border-radius:14px;flex:none;width:62px;height:62px}.record-intro .media-art{object-fit:contain;width:88px;height:88px}.app[data-route^=media-candidate\/] .page-header{min-height:64px;padding:max(10px, env(safe-area-inset-top)) 12px 8px;border-bottom:1px solid #e4e1d8}.app[data-route^=media-candidate\/] .page-header h1{font-size:18px;font-weight:600}.media-candidate-page{background:#f8f5ee;padding:20px 20px 28px}.media-candidate-form{max-width:560px;margin:auto}.media-candidate-fields{border:0;gap:24px;min-width:0;margin:0;padding:0;display:grid}.media-candidate-summary{background:#fffdf8;border:2px solid #293230;border-radius:19px;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:16px;min-height:112px;padding:17px;display:grid;position:relative;box-shadow:5px 5px #f2ca61}.media-candidate-summary:after{content:"";background:#b9dcd4a8;border:1px solid #78b8b070;width:42px;height:18px;position:absolute;bottom:-9px;right:14px;transform:rotate(-4deg)}.media-candidate-summary-art{background:#e6f1ed;border-radius:18px 18px 22px 14px;place-items:center;width:72px;height:72px;display:grid;transform:rotate(-2deg)}.media-candidate-summary-art .media-art{object-fit:contain;width:68px;height:68px}.media-candidate-summary>div{min-width:0}.media-candidate-source{color:#32796f;align-items:center;gap:5px;margin-bottom:5px;font-size:11px;font-weight:600;line-height:1.5;display:flex}.media-candidate-summary h2{text-overflow:ellipsis;white-space:nowrap;margin-bottom:4px;font-size:22px;line-height:1.35;overflow:hidden}.media-candidate-summary p{color:#7c7b74;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11px;line-height:1.55;display:-webkit-box;overflow:hidden}.media-candidate-field{color:#303936;gap:9px;margin:0;font-size:13px;font-weight:600;display:grid}.media-candidate-field>input,.media-candidate-field>textarea{width:100%;color:var(--ink);background:#fffdf8;border:1px solid #d7d3ca;border-radius:13px;font-size:14px;font-weight:400;line-height:1.55}.media-candidate-field>input{min-height:48px;padding:11px 13px}.media-candidate-field>textarea{resize:vertical;min-height:88px;padding:12px 13px}.media-candidate-field>input:focus,.media-candidate-field>textarea:focus{border-color:#78b8b0}.media-note-field>span{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.media-note-field b{font-size:13px}.media-note-field small{color:var(--muted);font-size:10px;font-weight:400}.media-candidate-error{margin:-8px 0 0}.media-candidate-actions{padding:13px 20px max(15px, env(safe-area-inset-bottom));background:#fffdf8;border-top:1px solid #dfdcd4;flex:none;gap:8px;display:grid}.media-candidate-save{color:#fffdf8;background:#293230;border:2px solid #293230;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:52px;font-size:14px;font-weight:700;display:flex;box-shadow:4px 4px #78b8b0}.media-candidate-save:hover:not(:disabled){background:#1f2725}.media-candidate-reject{color:#a45d51;text-underline-offset:4px;justify-self:center;min-height:38px;padding:7px 12px;font-size:11px;-webkit-text-decoration:underline #a45d5166;text-decoration:underline #a45d5166}.place-map-shell{background:#edf2eb;border:1px solid #d8d8d1;border-radius:16px;width:100%;height:222px;position:relative;overflow:hidden}.place-map-canvas{width:100%;height:100%}.place-map-controls{z-index:4;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffefaf2;border:1px solid #cbd3cd;border-radius:12px;display:grid;position:absolute;top:14px;right:13px;overflow:hidden;box-shadow:0 4px 14px #263b3424}.place-map-controls button{color:#354640;border-bottom:1px solid #dfe3de;place-items:center;width:42px;height:42px;display:grid}.place-map-controls button:last-child{border-bottom:0}.place-map-controls button:hover{background:#edf4ef}.place-map-state{color:#617569;text-align:center;background:#f1f5ef;flex-direction:column;justify-content:center;align-items:center;gap:9px;padding:22px;font-size:12px;display:flex;position:absolute;inset:0}.place-map-state button{color:#456b58;background:#fffefa;border:1px solid #a9c0b1;border-radius:8px;align-items:center;gap:5px;min-height:36px;padding:7px 12px;display:inline-flex}.place-map-empty{z-index:2;color:#557064;pointer-events:none;background:#fffef4e8;border:1px solid #b7c9bd;border-radius:7px;align-items:center;gap:5px;padding:7px 10px;font-size:10px;display:inline-flex;position:absolute;bottom:11px;left:12px;box-shadow:2px 2px #34413b17}.amap-place-marker{color:#34413d;cursor:pointer;background:#fffefbef;border:1px solid #cbd4ce;border-radius:999px;align-items:center;gap:6px;max-width:150px;min-height:30px;padding:5px 9px;display:flex;box-shadow:0 3px 10px #263b3424}.amap-place-marker>span{color:#5f9586;font-size:11px}.amap-place-marker>b{text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:600;overflow:hidden}.amap-place-marker.selected{background:#e5f1ed;border-color:#5f9586;box-shadow:0 0 0 2px #78b8b033,0 3px 10px #263b3424}.amap-place-cluster{color:#fff;background:#4f887b;border:2px solid #fffefb;border-radius:50%;place-items:center;font-size:12px;font-weight:700;display:grid;box-shadow:0 0 0 5px #78b8b047,0 5px 14px #263b3440}.library-page.places{overflow:hidden}.places-explorer{background:#edf2eb;width:100%;height:100%;position:relative;overflow:hidden}.places-explorer.is-fullscreen{z-index:30;width:100vw;height:100dvh;position:fixed;inset:0}.place-library-map{border:0;border-radius:0;width:100%;height:100%}.place-list-toggle{z-index:4;color:#354640;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffefaf2;border:1px solid #cbd3cd;border-radius:12px;align-items:center;gap:7px;min-height:42px;padding:8px 11px;font-size:12px;font-weight:650;display:inline-flex;position:absolute;top:14px;left:13px;box-shadow:0 4px 14px #263b3424}.place-list-toggle small{color:#467365;background:#e2eee8;border-radius:10px;place-items:center;min-width:19px;height:19px;padding:0 5px;font-size:9px;display:grid}.place-list-panel{z-index:5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fbfaf6f7;border-top:1px solid #d8ddd7;border-radius:22px 22px 0 0;flex-direction:column;max-height:min(58%,500px);display:flex;position:absolute;bottom:0;left:0;right:0;overflow:hidden;box-shadow:0 -10px 35px #263b3429}.places-explorer.is-fullscreen .place-list-panel{max-height:min(68%,620px);padding-bottom:env(safe-area-inset-bottom)}.places-explorer.is-fullscreen .place-map-controls,.places-explorer.is-fullscreen .place-list-toggle{top:max(14px, env(safe-area-inset-top))}.place-list-handle{background:#cfd5d0;border-radius:4px;flex:none;width:36px;height:4px;margin:8px auto 5px}.place-list-panel>header{justify-content:space-between;align-items:center;gap:12px;padding:5px 18px 7px;display:flex}.place-list-panel>header h2{font-size:17px}.place-list-panel>header p{color:#7d8781;margin-top:1px;font-size:9px}.place-list-panel>header button{color:#56645f;border-radius:50%;flex:none;place-items:center;width:38px;height:38px;display:grid}.place-list-panel>header button:hover{background:#e8eeea}.place-list-scroll{overscroll-behavior:contain;min-height:0;padding:0 17px 22px;overflow-y:auto}.place-list-scroll .search-field{z-index:2;margin:4px 0 11px;position:sticky;top:0;box-shadow:0 4px 10px #fbfaf6}.place-list-scroll .library-item{min-height:70px;margin-bottom:9px;padding:10px}.place-list-scroll .library-item .library-art{flex-basis:42px;width:42px;height:42px}.place-list-scroll .library-empty{padding:24px 15px}.place-map-status{color:#9a694c;background:#f7e8d8;border-radius:5px;align-items:center;gap:4px;width:fit-content;margin:7px 0 2px;padding:3px 6px;font-size:9px;font-style:normal;display:inline-flex}.place-detail-map{margin:3px 0 20px}.place-detail-unmarked{color:#587164;background:#f3f6ef;border:1px dashed #a9bdb0;border-radius:9px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin:3px 0 20px;padding:13px;display:grid}.place-detail-unmarked b{font-size:12px;display:block}.place-detail-unmarked p{color:#7c887f;margin-top:3px;font-size:10px;line-height:1.5}.place-detail-unmarked button{white-space:nowrap;min-height:36px;padding:7px 10px;font-size:11px}.place-editor-page{background:#f6f3ec;padding:16px 16px 30px}.place-editor-form{max-width:560px;margin:auto}.app[data-route^=place\/] .page-header{min-height:64px;padding:max(10px, env(safe-area-inset-top)) 12px 8px;background:#fbfaf6;border-bottom:1px solid #e4e1d8}.app[data-route^=place\/] .page-header h1{font-size:19px;font-weight:650}.place-editor-page .plain-fields{gap:14px;display:grid}.place-editor-card{background:#fffdf8;border:1px solid #e0ddd4;border-radius:18px;padding:16px;box-shadow:0 4px 16px #4d5d5510}.place-editor-section-heading{align-items:center;gap:10px;margin-bottom:16px;display:flex}.place-editor-section-heading>span,.place-section-icon{color:#47796e;background:#e7f1ed;border-radius:11px;flex:0 0 34px;place-items:center;width:34px;height:34px;display:grid}.place-editor-section-heading h2{font-size:14px}.place-editor-section-heading p{color:#8a8b84;margin-top:2px;font-size:10px;line-height:1.45}.place-editor-field{color:#404744;gap:7px;margin:0;font-size:12px;font-weight:600;display:grid}.place-editor-field+.place-editor-field{margin-top:14px}.place-editor-field>input,.place-editor-field>textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #d8d5cd;border-radius:12px;font-size:13px;font-weight:400;line-height:1.55;transition:border-color .15s,box-shadow .15s}.place-editor-field>input{min-height:47px;padding:10px 12px}.place-editor-field>textarea{resize:vertical;min-height:86px;padding:11px 12px}.place-editor-field>input:focus,.place-editor-field>textarea:focus{border-color:#78a99d;outline:none;box-shadow:0 0 0 3px #78b8b019}.place-address-field{margin-top:3px}.place-address-field>textarea{min-height:68px}.place-editor-actions{z-index:3;padding:14px 16px max(16px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fbfaf6f2;border-top:1px solid #e1ded5;margin:0 -16px -30px;position:sticky;bottom:-30px}.place-editor-actions .primary.full{width:100%;min-height:50px;box-shadow:none;color:#fffdf8;background:#293633;border-radius:14px;font-size:13px;font-weight:650}.route-state-page{justify-content:center;align-items:center;display:flex}.route-state-page .empty{width:100%;padding-top:24px;padding-bottom:90px}.route-state-page .empty h3{font-size:17px}.place-location-editor{gap:12px;margin:0;display:grid}.place-location-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.place-location-heading>span{color:#394642;align-items:center;gap:10px;min-width:0;display:inline-flex}.place-location-heading>span>span:last-child{min-width:0}.place-location-heading b,.place-location-heading small{display:block}.place-location-heading b{font-size:14px}.place-location-heading small{color:#8a8b84;margin-top:2px;font-size:10px;font-weight:400;line-height:1.45}.place-location-heading>button{color:#9b6657;white-space:nowrap;padding:6px 0;font-size:10px}.place-map-search{color:#71837a;background:#f9faf7;border:1px solid #d5d8d1;border-radius:13px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:6px;min-height:48px;padding:5px 5px 5px 12px;display:grid}.place-map-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #78b8b01a}.plain-fields .place-map-search input{background:0 0;border:0;outline:0;min-width:0;padding:7px 0}.place-map-search>button:not(.place-search-submit){place-items:center;width:30px;height:30px;display:grid}.place-map-search .place-search-submit{color:#fff;background:#5f9589;border-radius:10px;justify-content:center;align-items:center;gap:4px;min-height:38px;padding:7px 11px;font-size:11px;display:inline-flex}.place-editor-map{height:176px}.place-editor-map:has(.place-map-state){height:104px}.place-search-status{color:#65766d;background:#f0f5f1;border-radius:9px;padding:9px 10px;font-size:10px;line-height:1.6}.place-search-results{background:#fff;border:1px solid #dfddd5;border-radius:14px;gap:0;display:grid;overflow:hidden}.place-search-results label{cursor:pointer;background:0 0;border-bottom:1px solid #eeece6;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-height:62px;padding:10px 12px;display:grid}.place-search-results label:last-child{border-bottom:0}.place-search-results label.selected{background:#edf5f1}.place-search-results input{appearance:none;border:1.5px solid #909993;border-radius:50%;place-items:center;width:18px;height:18px;margin:0;display:grid}.place-search-results input:after{content:"";background:#5f9586;border-radius:50%;width:8px;height:8px;transition:transform .12s;transform:scale(0)}.place-search-results input:checked{border-color:#5f9586}.place-search-results input:checked:after{transform:scale(1)}.place-search-results span{min-width:0}.place-search-results b,.place-search-results small{display:block}.place-search-results b{font-size:12px;line-height:1.45}.place-search-results small{color:#858a87;margin-top:3px;font-size:10px;line-height:1.45}.place-search-results>label>svg{color:#71907d}.place-unmarked-note{color:#846d54;background:#f8f3e9;border-radius:10px;align-items:flex-start;gap:7px;padding:10px 11px;font-size:10px;line-height:1.55;display:flex}.place-unmarked-note svg{margin-top:1px}@media (width<=360px){.place-editor-page{padding-left:12px;padding-right:12px}.place-editor-card{padding:14px}.place-map-search{gap:4px;padding-left:9px}.place-map-search .place-search-submit{padding-left:8px;padding-right:8px}.place-detail-unmarked{grid-template-columns:auto minmax(0,1fr)}.place-detail-unmarked button{grid-column:1/-1;width:100%}}.media-category-field{border:0;min-width:0;margin:0;padding:0}.media-category-field legend{color:#303936;justify-content:space-between;align-items:baseline;gap:12px;width:100%;margin-bottom:11px;font-size:13px;font-weight:600;display:flex}.media-category-field legend small{color:var(--muted);font-size:10px;font-weight:400}.media-category-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.media-category-grid label{color:#777972;cursor:pointer;background:#fffdf8;border:1px solid #ddd9d0;border-radius:15px;place-items:center;gap:3px;min-width:0;min-height:86px;padding:8px 4px;display:grid;position:relative}.media-category-grid label.selected{color:#293230;background:#e7f1ed;border:2px solid #293230;font-weight:600;transform:translate(-1px,-1px);box-shadow:4px 4px #78b8b0}.media-category-grid input,.media-category-compact input{opacity:0;width:1px;height:1px;position:absolute}.media-category-grid .media-art{object-fit:contain;width:49px;height:49px}.media-category-grid span{font-size:12px}.media-category-check{color:#fffdf8;background:#293230;border-radius:50%;place-items:center;width:18px;height:18px;display:none;position:absolute;top:6px;right:6px}.media-category-grid label.selected .media-category-check{display:grid}:is(.media-category-grid label:has(input:focus-visible),.media-category-compact label:has(input:focus-visible)){outline-offset:3px;outline:2px solid #468e85}.media-category-compact{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.media-category-compact label{color:#777972;cursor:pointer;border:1px solid #d7d3ca;border-radius:999px;align-items:center;gap:7px;min-height:40px;padding:8px 13px;display:inline-flex;position:relative}.media-category-compact label.selected{color:#293230;background:#e7f1ed;border-color:#293230;font-weight:600;box-shadow:inset 0 0 0 1px #293230}.media-category-compact span{font-size:12px}.media-matches{background:#efeee8;border:1px solid #d9d6cd;border-radius:15px;padding:13px}.media-matches h2{margin:0 0 4px;font-size:16px}.media-matches>p{color:var(--muted);margin:0 0 10px;font-size:13px}.media-matches>button{border:1px solid var(--line);text-align:left;background:#fffdf8;border-radius:12px;align-items:center;gap:10px;width:100%;padding:9px;display:flex}.media-matches>button.selected{border-color:#293230;box-shadow:inset 0 0 0 1px #293230}.media-match-check{color:#fff;border:1.5px solid #7a827d;border-radius:50%;flex:0 0 21px;place-items:center;width:21px;height:21px;display:grid}.media-matches>button.selected .media-match-check{background:#4b8270;border-color:#4b8270}.media-matches .media-art{object-fit:contain;width:44px;height:44px}.media-matches span{display:grid}.media-matches small{color:var(--muted)}@media (width<=360px){.media-candidate-page{padding-left:16px;padding-right:16px}.media-candidate-summary{grid-template-columns:60px minmax(0,1fr);gap:13px;padding:14px}.media-candidate-summary-art{width:60px;height:60px}.media-candidate-summary-art .media-art{width:58px;height:58px}.media-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.media-candidate-actions{padding-left:16px;padding-right:16px}}.app:has(.chat-header){background:#fff}.chat-header{border-bottom:0;min-height:86px;padding-bottom:12px}.chat-header .header-avatar{background:0 0;border:0;border-radius:0;width:48px;height:48px;padding:0}.chat-header h1{font-size:26px}.chat-header p{color:#7a8490;font-size:12px}.chat-scroll{padding:18px 16px 26px}.chat-scroll:focus-visible{outline-offset:-3px}.chat-scroll .agent-row{gap:10px;margin-bottom:14px}.chat-scroll .agent-avatar{background:0 0;border:0;border-radius:0;flex-basis:44px;width:44px;height:44px;padding:0}.chat-scroll .agent-content{flex:1;max-width:calc(100% - 54px)}.chat-scroll .mascot,.chat-header .mascot{object-fit:contain;width:100%;height:100%}.chat-scroll .agent-avatar .mascot{animation:.22s ease-out chat-face-in}.chat-scroll .bubble{box-shadow:none;background:#eef7fc;border:1.7px solid #242b33;border-radius:23px 25px 23px 9px;max-width:100%;padding:12px 15px;font-size:15px;line-height:1.8}.chat-scroll .user-row{margin:8px 0 14px 24px}.chat-scroll .user-message{justify-content:flex-end;align-items:flex-start;gap:10px;width:100%;display:flex}.chat-user-avatar{color:#476454;flex:0 0 38px;justify-content:center;align-items:center;width:38px;height:44px;display:flex}.chat-scroll .user-bubble{background:#edf5e9;border-color:#577e65;border-radius:25px 25px 9px;min-width:0}.app[data-theme=B]{--chat-agent-balloon:url(/assets/chat-balloon-agent.png);--chat-user-balloon:url(/assets/chat-balloon-user.png)}.app[data-theme=B] .chat-scroll .bubble{border:14px solid #0000;border-width:14px 22px;border-image:var(--chat-agent-balloon) 30% 12% fill / 20px 26px / 0 stretch;background:0 0;border-radius:0;padding:0}.app[data-theme=B] .chat-scroll .user-bubble{border-image-source:var(--chat-user-balloon)}.chat-scroll .user-row time{flex-wrap:wrap;margin-right:48px;line-height:1.5}.chat-scroll .reply-row{border-top:1px solid #d8e2e8;padding-top:16px}.chat-scroll .has-journal-receipt .chat-receipt{box-sizing:border-box;width:calc(100% + 54px);margin-left:-54px}.chat-receipt{border:2px solid var(--comic-line);background:#fffdf9;border-radius:20px 20px 20px 9px;margin-top:16px;padding:14px;position:relative;box-shadow:4px 4px #e9e4d8}.chat-receipt:before{content:"";background:#f1c75b;border-radius:999px;width:7px;height:7px;position:absolute;top:-7px;right:18px;box-shadow:10px 5px #78b8b0,-5px -4px #ef9ba8}.receipt-content{gap:10px;display:grid}.receipt-line{overflow-wrap:anywhere;background:#f1f8ef;border:1.5px solid #acd1bb;border-radius:15px 15px 15px 8px;margin:0;padding:12px;font-size:14px;line-height:1.75;display:flow-root}.receipt-line.feelings{background:#fff1f1;border-color:#efbfc5;border-radius:18px 18px 10px}.receipt-label{float:left;color:var(--accent-ink);white-space:nowrap;margin:0 8px 0 0;font-size:14px;font-weight:700;line-height:1.9;display:inline}.feelings .receipt-label{color:#a45367}.receipt-line .markdown-text{min-width:0}.receipt-line .markdown-text>:first-child{margin-top:0}.receipt-line .markdown-text>:last-child{margin-bottom:0}.receipt-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.receipt-link{text-align:left;background:#fff9ed;border:1.5px solid #dfcda9;border-radius:15px;justify-content:space-between;align-items:center;gap:6px;width:100%;min-height:58px;padding:10px 11px;font-size:13px;font-weight:700;display:flex}.receipt-link>span{white-space:nowrap;gap:1px;min-width:0;display:grid}.receipt-link small{color:#78828a;font-size:11px;font-weight:400}.chat-receipt .photo-shortcut{background:#eef8f2;border:1.5px solid #91c2b3;border-radius:15px;min-height:58px;margin:0;padding:10px 11px}.chat-receipt .confirmation-results{border-top:1px dashed #cfd7d1;border-left:0;margin-top:14px;padding:12px 0 0}.chat-receipt .confirmation-results>header,.chat-receipt .confirmation-results>summary{background:#f8f8f5;border:1px solid #d8d9d3;border-radius:14px;min-height:46px;padding:7px 12px}.chat-receipt .confirmation-results ul{padding:7px 5px 0}.chat-scroll .confirmation-row{border-top:1px solid #d8e2e8;padding-top:16px}.chat-scroll .confirmation-result-row{padding-top:8px}.confirmation-results{color:#526159;border-left:3px solid #9fc8ad;margin-top:10px;padding:3px 0 3px 10px}.confirmation-results>header,.confirmation-results>summary{color:#486353;justify-content:space-between;align-items:center;gap:8px;min-height:30px;font-size:11px;font-weight:700;display:flex}.confirmation-results>header{justify-content:flex-start}.confirmation-results>summary{cursor:pointer;list-style:none}.confirmation-results>summary::-webkit-details-marker{display:none}.confirmation-results>summary>span{align-items:center;gap:6px;display:inline-flex}.confirmation-results[open]>summary>svg{transform:rotate(180deg)}.confirmation-results ul{gap:2px;margin:0;padding:0;list-style:none;display:grid}.confirmation-results li,.confirmation-results li>button{color:#59665f;text-align:left;align-items:center;gap:7px;width:100%;min-height:26px;font-size:11px;line-height:1.45;display:flex}.confirmation-results li>svg{flex:none}.confirmation-results li>span{overflow-wrap:anywhere;flex:1;min-width:0}.confirmation-results li.accepted>svg{color:#4e8a68}.confirmation-results li.skipped>svg{color:#89928c}.confirmation-results li.expired>svg{color:#a56f57}.confirmation-results li>button>svg:last-child{color:#7a867f;margin-left:auto}.chat-scroll .ai-proposals{background:0 0;border:0;border-radius:0;padding:0}.proposal-queue-heading{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.chat-scroll .proposal-queue-heading h3{background:#fff6d9;border:1.5px solid #303936;border-radius:16px 16px 16px 5px;align-items:center;min-height:34px;margin:0;padding:5px 11px;font-size:13px;display:inline-flex;box-shadow:2px 2px #303936}.proposal-defer{color:#6f7a74;text-underline-offset:3px;flex:none;min-height:34px;padding:5px 8px;font-size:11px;text-decoration:underline}.proposal-progress{color:#707b75;flex-wrap:wrap;justify-content:space-between;gap:4px 12px;margin:0 1px 9px;font-size:10px;line-height:1.5;display:flex}.proposal-list{gap:12px;display:grid}.proposal-card{background:#fffefd;border:1.5px solid #3f4b46;border-radius:8px;overflow:hidden;box-shadow:3px 3px #dce8dd}.proposal-card>header{background:#f4f8ec;border-bottom:1px dashed #b8c7bb;align-items:center;gap:10px;padding:11px 12px;display:flex}.proposal-card.library>header{background:#fff5ec}.proposal-card.destructive{box-shadow:3px 3px #f0d9d3}.proposal-card.destructive>header{background:#fff0ec;border-bottom-color:#dabdb6}.proposal-card.destructive .proposal-icon{color:#9a5148}.proposal-card.destructive .proposal-accept{color:#321a18;background:#d98f82;border-color:#713d37;box-shadow:2px 2px #713d37}.proposal-icon{color:#527c66;background:#fff;border:1.3px solid #46534c;border-radius:50%;flex:0 0 32px;place-items:center;width:32px;height:32px;display:grid}.proposal-card header>div{min-width:0}.proposal-card header small{color:#778078;margin-bottom:2px;font-size:9px;font-weight:600;display:block}.proposal-card header h4{color:#29322e;overflow-wrap:anywhere;margin:0;font-size:13px;line-height:1.45}.proposal-content{padding:11px 12px 5px}.proposal-part{padding-bottom:9px}.proposal-part+.proposal-part{border-top:1px dashed #d8ded7;padding-top:10px}.proposal-label{color:#3f6c4c;background:#e7f3e7;border-radius:4px;margin-bottom:5px;padding:2px 6px;font-size:10px;display:inline-flex}.proposal-label.thoughts{color:#955469;background:#ffe9ec}.proposal-content .markdown-text{color:#3c4541;font-size:12px;line-height:1.75}.proposal-content h5{color:#758078;margin:3px 0 7px;font-size:10px;font-weight:600}.proposal-content>p,.proposal-part>p,.proposal-record-content>p{color:#59635e;margin:5px 0;font-size:11px;line-height:1.7}.chat-scroll .proposal-before{border:0;margin:8px 0 0;padding:0}.proposal-before summary{color:#758078;cursor:pointer;justify-content:space-between;align-items:center;gap:6px;min-height:32px;font-size:10px;display:flex}.proposal-before[open] summary svg{transform:rotate(180deg)}.proposal-before .proposal-record-content{color:#778078;background:#f5f5f1;margin:3px 0 6px;padding:8px}.proposal-actions{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:7px;padding:8px 10px 10px;display:grid}.proposal-actions button{white-space:normal;border-radius:6px;justify-content:center;align-items:center;gap:5px;min-width:0;min-height:38px;padding:7px;font-size:11px;font-weight:600;display:flex}.proposal-accept{color:#21352c;background:#8dc6b2;border:1.3px solid #34453c;box-shadow:2px 2px #34453c}.proposal-skip{color:#637069;background:#fff;border:1px solid #cbd2cb}.proposal-remember{color:#355b4a;background:#edf7f2;border:1px solid #6c9985}.proposal-actions button:active:not(:disabled){box-shadow:none;transform:translate(1px,1px)}.proposal-actions button:disabled{opacity:.55}.confirmation-resume{color:#34423a;text-align:left;background:#f7faf4;border:1.5px solid #889a8c;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:58px;padding:10px 12px;display:flex;box-shadow:3px 3px #dce8dd}.confirmation-resume span{gap:3px;min-width:0;display:grid}.confirmation-resume b{font-size:12px;line-height:1.45}.confirmation-resume small{color:#758078;font-size:10px}.confirmation-resume svg{flex:none}.person-clarification{background:#fffefd;border:1.5px solid #3f4b46;border-radius:8px;margin-top:12px;overflow:hidden;box-shadow:3px 3px #dce8dd}.person-clarification>header{background:#fff5ec;border-bottom:1px dashed #b8c7bb;align-items:center;gap:10px;padding:11px 12px;display:flex}.person-clarification header>div{min-width:0}.person-clarification header small{color:#778078;margin-bottom:2px;font-size:9px;font-weight:600;display:block}.person-clarification header h4{color:#29322e;overflow-wrap:anywhere;margin:0;font-size:13px;line-height:1.45}.person-clarification-actions{grid-template-columns:minmax(0,1fr);gap:7px;padding:10px;display:grid}.person-clarification-actions button{white-space:normal;border-radius:6px;justify-content:center;align-items:center;gap:5px;min-height:40px;padding:7px 10px;font-size:11px;font-weight:600;display:flex}.person-clarification>p{color:#758078;margin:0;padding:0 11px 11px;font-size:10px;line-height:1.6}.person-clarification.resolved{opacity:.72;box-shadow:none}.reply-pending{color:#566c67;margin-top:6px;font-size:12px}.app:has(.chat-header) .composer{background:#fff;padding:10px 14px 20px}.app:has(.chat-header) .composer-box{border:1.5px solid #c4cdd4;border-radius:20px;padding:8px 8px 8px 15px}.app:has(.chat-header) .composer textarea{min-height:42px;padding:8px 0;font-size:15px}.app:has(.chat-header) .send-button{width:44px;height:44px}.message-state{color:#658078}.message-state.cancelled{color:#9b716b}.thinking-composer{justify-content:center;align-items:center;min-height:82px;display:flex}.stop-ai-button{color:#8c514b;background:snow;border:1.5px solid #dfc9c5;border-radius:20px;justify-content:center;align-items:center;gap:9px;width:100%;min-height:52px;font-size:14px;font-weight:600;display:flex}.stop-ai-button span{background:#f6e6e3;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;display:inline-flex}.stop-ai-button:disabled{opacity:.65}.app:has(.chat-header) .bottom-nav{background:#fff}@keyframes chat-face-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.chat-scroll .agent-avatar .mascot{animation:none}}@media (width<=360px){.chat-scroll{padding-left:10px;padding-right:10px}.chat-scroll .agent-avatar{flex-basis:35px;width:35px;height:38px}.chat-scroll .agent-content{max-width:calc(100% - 45px)}.chat-scroll .bubble{padding:10px 12px}.chat-scroll .user-row{margin-left:10px}.chat-scroll .has-journal-receipt .chat-receipt{width:calc(100% + 45px);margin-left:-45px}.chat-receipt{padding:12px}.receipt-line{padding:12px;font-size:13px}.proposal-actions{grid-template-columns:minmax(0,1fr)}}.media-candidate-card{border:1px solid var(--line);background:#fff;border-radius:18px;margin-top:10px;padding:14px;box-shadow:0 7px 22px #2e4a3b12}.proposal-list>.media-candidate-card{margin-top:0}.media-candidate-card header{align-items:center;gap:11px;display:flex}.media-candidate-card header .media-art{object-fit:contain;flex:none;width:50px;height:50px}.media-candidate-card header small{color:var(--muted)}.media-candidate-card header h4{margin:2px 0 0;font-size:16px}.media-candidate-card>p{margin:12px 0;line-height:1.55}.media-candidate-card details{color:var(--muted);margin:10px 0;font-size:13px}.media-candidate-card details p{margin:7px 0 0}.media-candidate-card .proposal-accept{width:100%}.media-candidate-card.accepted{background:#f5faf4}.media-candidate-card.rejected,.media-candidate-card.expired{background:#fafafa}
