:root{--color-bg-base:#fcfcfc;--color-bg-surface:#f3f4f6;--color-ink-main:#2c2c2e;--color-ink-sub:#8e8e93;--color-primary-classic:#3a75c4;--color-danger-muted:#d9534f;--color-border-line:#e5e5ea;--font-sans:Inter, "Noto Sans JP", "Hiragino Sans", sans-serif;--font-mono:"Courier New", Courier, "SF Mono", monospace;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-xxl:48px;--radius-none:0px;--radius-sm:4px;--radius-md:6px;--radius-lg:12px;--header-height:48px;--tabbar-height:56px;--safe-bottom:env(safe-area-inset-bottom,0px);--z-tabbar:100;--z-overlay:200;--z-modal:210;--z-toast:300;--duration-fast:.15s;--duration-base:.24s;--color-overlay:#2c2c2e73;--color-ink-inverse:#fcfcfc;--color-record-0:#edeef0;--color-record-1:#a9c2e4;--color-record-2:var(--color-primary-classic)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background-color:var(--color-bg-base);color:var(--color-ink-main);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0;font-size:14px;line-height:1.6}h1,h2,h3,h4,p,figure,blockquote{margin:0}img,picture,video{max-width:100%;display:block}a{color:var(--color-primary-classic)}button,input,textarea,select{font:inherit;color:inherit}.container{max-width:512px;padding:0 var(--spacing-md);margin:0 auto}.text-heading-1{font-size:24px;font-weight:600;line-height:1.4}.text-heading-2{font-size:18px;font-weight:600;line-height:1.5}.text-body-lg{font-size:16px;line-height:1.6}.text-body-md{letter-spacing:.05em;font-size:14px;line-height:1.6}.text-body-sm{color:var(--color-ink-sub);font-size:12px;line-height:1.5}.text-timestamp{font-family:var(--font-mono);color:var(--color-ink-sub);letter-spacing:-.05em;font-size:12px}.btn{--btn-spinner-color:var(--color-ink-main);justify-content:center;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-family:var(--font-sans);text-align:center;white-space:nowrap;cursor:pointer;background-color:#0000;border:1px solid #0000;font-size:14px;font-weight:600;line-height:1.5;text-decoration:none;transition:background-color .2s,border-color .2s,color .2s;display:inline-flex}.btn:focus-visible{outline:2px solid var(--color-primary-classic);outline-offset:2px}.btn--primary{--btn-spinner-color:#fff;background-color:var(--color-primary-classic);color:#fff}.btn--primary:hover:not(:disabled):not(.is-disabled){background-color:#33689f}.btn--secondary{background-color:var(--color-bg-surface);color:var(--color-ink-main)}.btn--secondary:hover:not(:disabled):not(.is-disabled){background-color:var(--color-border-line)}.btn--ghost{--btn-spinner-color:var(--color-ink-sub);border:1px dashed var(--color-border-line);color:var(--color-ink-sub)}.btn--ghost:hover:not(:disabled):not(.is-disabled){border-color:var(--color-ink-sub);color:var(--color-ink-main)}.btn--destructive{--btn-spinner-color:var(--color-danger-muted);border-color:var(--color-border-line);color:var(--color-danger-muted)}.btn--destructive:hover:not(:disabled):not(.is-disabled){border-color:var(--color-danger-muted);background-color:#d9534f0f}.btn--sm{padding:var(--spacing-xs) var(--spacing-sm);font-size:12px}.btn--md{padding:var(--spacing-sm) var(--spacing-md);font-size:14px}.btn--lg{width:100%;padding:var(--spacing-md);font-size:16px}.btn:disabled,.btn.is-disabled{opacity:.5;cursor:not-allowed}.btn.is-loading:disabled,.btn.is-loading.is-disabled{opacity:1}.btn.is-loading{color:#0000;pointer-events:none;position:relative}.btn.is-loading:after{content:"";border:2px solid var(--btn-spinner-color);border-top-color:#0000;border-radius:50%;width:1em;height:1em;animation:.6s linear infinite btn-spin;position:absolute}@keyframes btn-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.btn{transition:none}.btn.is-loading:after{animation-duration:2s}}.input-base{width:100%;padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-bg-surface);border-radius:var(--radius-md);font-family:var(--font-sans);color:var(--color-ink-main);border:1px solid #0000;font-size:16px;transition:border-color .2s,background-color .2s}.input-base:focus{background-color:var(--color-bg-base);border-color:var(--color-primary-classic);outline:none}.input-base--error{border-color:var(--color-danger-muted)}.input-base:disabled{opacity:.5;cursor:not-allowed}.input-base::placeholder{color:var(--color-ink-sub)}.input-base--multiline{resize:vertical;min-height:120px;line-height:1.6}@media (prefers-reduced-motion:reduce){.input-base{transition:none}}.card{background-color:var(--color-bg-base);border:1px solid var(--color-border-line);border-radius:var(--radius-md);padding:var(--spacing-md)}.card--interactive:hover{background-color:var(--color-bg-surface);cursor:pointer}.hitokoma-card{background-color:var(--color-bg-base);border:1px solid var(--color-border-line);border-radius:var(--radius-sm);overflow:hidden}.hitokoma-card__image{aspect-ratio:4/3;object-fit:cover;background-color:var(--color-bg-surface);width:100%}.hitokoma-card__body{padding:var(--spacing-md)}.hitokoma-card__text{letter-spacing:.05em;white-space:pre-wrap;word-break:break-word;font-size:14px;line-height:1.6}.hitokoma-card__timestamp{margin-top:var(--spacing-sm);font-family:var(--font-mono);color:var(--color-ink-sub);letter-spacing:-.05em;font-size:12px;display:block}.hitokoma-card__figure{position:relative}.hitokoma-card__stamp{right:var(--spacing-sm);bottom:var(--spacing-sm);font-family:var(--font-mono);letter-spacing:-.05em;color:var(--color-ink-inverse);text-shadow:0 1px 2px #0000008c;font-size:11px;position:absolute}.hitokoma-card__actions{align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-md);display:flex}.divider-solid{border:0;border-top:1px solid var(--color-border-line);margin:var(--spacing-lg) 0}.divider-dashed{border:0;border-top:1px dashed var(--color-border-line);margin:var(--spacing-lg) 0}.app-shell{--app-main-max-width:512px;flex-direction:column;min-height:100dvh;display:flex;overflow-x:clip}.app-header{z-index:var(--z-tabbar);justify-content:space-between;align-items:center;gap:var(--spacing-sm);height:var(--header-height);padding:0 var(--spacing-md);background-color:var(--color-bg-base);border-bottom:1px dashed var(--color-border-line);display:flex;position:sticky;top:0}.app-header__title{letter-spacing:.08em;font-size:15px;font-weight:600}.app-header__action{margin-left:auto}.app-header__login{padding-inline:var(--spacing-md);letter-spacing:.08em;font-weight:600}.app-main{width:100%;max-width:var(--app-main-max-width);padding:var(--spacing-lg) var(--spacing-md) calc(var(--tabbar-height) + var(--safe-bottom) + var(--spacing-xl));flex:1;margin:0 auto}.app-main--bare{padding-bottom:var(--spacing-xxl)}.page-heading{margin-bottom:var(--spacing-lg)}.stack{gap:var(--spacing-md);flex-direction:column;display:flex}.stack--tight{gap:var(--spacing-sm)}.stack--loose{gap:var(--spacing-lg)}.tabbar{z-index:var(--z-tabbar);height:calc(var(--tabbar-height) + var(--safe-bottom));padding-bottom:var(--safe-bottom);background-color:var(--color-bg-base);border-top:1px solid var(--color-border-line);align-items:stretch;display:flex;position:fixed;bottom:0;left:0;right:0}.tabbar__item{padding:var(--spacing-xs);color:var(--color-ink-sub);cursor:pointer;transition:color var(--duration-fast) ease;background:0 0;border:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;text-decoration:none;display:flex}.tabbar__item.is-active{color:var(--color-ink-main)}.tabbar__mark{font-size:16px;line-height:1}.tabbar__label{letter-spacing:.08em;font-size:10px}.tabbar__item--accent .tabbar__mark{border:1px solid var(--color-ink-main);border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;display:inline-flex}@media (prefers-reduced-motion:reduce){.tabbar__item{transition:none}}.field{gap:var(--spacing-xs);flex-direction:column;display:flex}.field__label{letter-spacing:.08em;color:var(--color-ink-main);font-size:12px;font-weight:600}.field__optional{margin-left:var(--spacing-xs);color:var(--color-ink-sub);font-weight:400}.field__hint{color:var(--color-ink-sub);font-size:12px;line-height:1.5}.field__error{color:var(--color-danger-muted);font-size:12px;line-height:1.5}.field__footer{justify-content:space-between;align-items:baseline;gap:var(--spacing-sm);display:flex}.field__counter{font-family:var(--font-mono);letter-spacing:-.05em;color:var(--color-ink-sub);margin-left:auto;font-size:11px}.field__counter--over{color:var(--color-danger-muted)}.input-base--select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--color-ink-sub) 50%), linear-gradient(135deg, var(--color-ink-sub) 50%, transparent 50%);padding-right:var(--spacing-xl);background-position:calc(100% - 18px),calc(100% - 13px);background-repeat:no-repeat;background-size:5px 5px,5px 5px}.mode-switch{gap:var(--spacing-xs);padding:var(--spacing-xs);border:1px dashed var(--color-border-line);border-radius:var(--radius-md);display:flex}.mode-switch__item{padding:var(--spacing-sm);border-radius:var(--radius-sm);letter-spacing:.05em;color:var(--color-ink-sub);cursor:pointer;background:0 0;border:0;flex:1;font-size:12px}.mode-switch__item.is-active{background-color:var(--color-bg-surface);color:var(--color-ink-main);font-weight:600}.qa{gap:var(--spacing-md);flex-direction:column;display:flex}.qa__item{gap:var(--spacing-xs);padding-bottom:var(--spacing-md);border-bottom:1px dashed var(--color-border-line);flex-direction:column;display:flex}.qa__question{gap:var(--spacing-sm);font-size:13px;line-height:1.6;display:flex}.qa__number{font-family:var(--font-mono);letter-spacing:-.05em;color:var(--color-ink-sub);font-size:11px}.qa__answer{padding-left:calc(var(--spacing-sm) + 2ch);letter-spacing:.05em;font-size:14px;line-height:1.6}.empty-state{padding:var(--spacing-xl) var(--spacing-md);text-align:center}.empty-state__title{letter-spacing:.05em;font-size:14px;font-weight:600}.empty-state__body{margin-top:var(--spacing-sm);color:var(--color-ink-sub);font-size:12px;line-height:1.7}.empty-state__action{margin-top:var(--spacing-lg)}.camera{gap:var(--spacing-md);flex-direction:column;display:flex}.camera__viewport{aspect-ratio:4/3;background-color:var(--color-bg-surface);border:1px solid var(--color-border-line);border-radius:var(--radius-sm);width:100%;position:relative;overflow:hidden}.camera__video,.camera__preview{object-fit:cover;width:100%;height:100%}.camera__preview{display:block}.camera__guide{inset:var(--spacing-sm);pointer-events:none;border:1px dashed #fcfcfc8c;position:absolute}.camera__stamp{right:var(--spacing-sm);bottom:var(--spacing-sm);font-family:var(--font-mono);letter-spacing:-.05em;color:var(--color-ink-inverse);text-shadow:0 1px 2px #0000008c;font-size:11px;position:absolute}.camera__controls{justify-content:center;align-items:center;gap:var(--spacing-lg);min-height:72px;display:flex}.camera__shutter{border:2px solid var(--color-ink-main);background-color:var(--color-bg-base);cursor:pointer;width:64px;height:64px;transition:transform var(--duration-fast) ease;border-radius:50%;padding:0}.camera__shutter:after{content:"";background-color:var(--color-ink-main);border-radius:50%;width:48px;height:48px;margin:6px;display:block}.camera__shutter:active{transform:scale(.94)}.camera__shutter:disabled{opacity:.4;cursor:not-allowed}.camera__hint{color:var(--color-ink-sub);text-align:center;font-size:12px;line-height:1.6}.camera__error{padding:var(--spacing-md);border:1px dashed var(--color-danger-muted);border-radius:var(--radius-sm);color:var(--color-danger-muted);font-size:13px;line-height:1.7}@media (prefers-reduced-motion:reduce){.camera__shutter{transition:none}}.timeline{flex-direction:column;display:flex}.timeline__item+.timeline__item{margin-top:var(--spacing-xl);padding-top:var(--spacing-xl);border-top:1px dashed var(--color-border-line)}.timeline__end{margin-top:var(--spacing-xxl);padding-top:var(--spacing-xl);border-top:1px dashed var(--color-border-line);text-align:center}.timeline__end-title{letter-spacing:.08em;font-size:13px}.timeline__end-body{margin-top:var(--spacing-sm);color:var(--color-ink-sub);font-size:12px;line-height:1.7}.timeline__loader{margin-top:var(--spacing-xl);text-align:center}.timeline__gate .btn{margin-top:var(--spacing-lg)}.timeline__card{width:100%;padding:var(--spacing-sm) var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border-line);border-radius:var(--radius-sm);text-align:left;cursor:pointer;transition:transform var(--duration-fast) ease, box-shadow var(--duration-fast) ease;background-color:#fff;display:block;box-shadow:0 1px 2px #2c2c2e14,0 8px 20px #2c2c2e1f}.timeline__card:hover{box-shadow:0 2px 3px #2c2c2e1a,0 12px 28px #2c2c2e29}.timeline__card:active{transform:translateY(1px)}.timeline__card:focus-visible{outline:2px solid var(--color-primary-classic);outline-offset:2px}.timeline__item:nth-child(odd) .timeline__card{transform:rotate(-.4deg)}.timeline__item:nth-child(2n) .timeline__card{transform:rotate(.4deg)}.timeline__card .hitokoma-card{border:0;border-radius:0}.timeline__card .hitokoma-card__figure{border:1px solid var(--color-border-line)}.timeline__card .hitokoma-card__body{padding:var(--spacing-md) var(--spacing-xs) 0}.timeline__actions{justify-content:flex-start;align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-sm);padding:0 var(--spacing-xs);display:flex}.timeline__edited{color:var(--color-ink-sub);margin-left:auto;font-size:11px}.post-hidden-badge{padding:1px var(--spacing-xs);border:1px solid var(--color-danger-muted);border-radius:var(--radius-sm);color:var(--color-danger-muted);font-size:11px}.timeline__sentinel{height:1px}.timeline--reel{--reel-peek:clamp(58px, 9dvh, 96px);--reel-gap:clamp(20px, 3dvh, 34px);--reel-height:calc(100dvh - var(--header-height) - var(--tabbar-height) - var(--safe-bottom));--reel-fade:calc(var(--reel-peek) / 2);--reel-base-width:calc(min(var(--app-main-max-width), 100vw) - var(--spacing-md) * 2);--reel-width:var(--reel-base-width);width:100vw;height:var(--reel-height);margin-inline:calc(50% - 50vw);margin-top:calc(var(--spacing-lg) * -1);margin-bottom:calc(var(--spacing-xl) * -1);align-items:center;gap:var(--reel-gap);padding-block:var(--reel-peek);-webkit-mask-image:linear-gradient(to bottom, transparent 0, #000 var(--reel-fade), #000 calc(100% - var(--reel-fade)), transparent 100%);mask-image:linear-gradient(to bottom, transparent 0, #000 var(--reel-fade), #000 calc(100% - var(--reel-fade)), transparent 100%);-webkit-mask-image:linear-gradient(to bottom, transparent 0, #000 var(--reel-fade), #000 calc(100% - var(--reel-fade)), transparent 100%);overscroll-behavior-y:contain;scroll-snap-type:y mandatory;scrollbar-width:none;overflow-y:auto}.timeline--reel::-webkit-scrollbar{display:none}.timeline--reel>*{width:var(--reel-width)}@media (orientation:landscape){.timeline--reel{--reel-width-ratio:35vw;--reel-card-height:calc(var(--reel-height) - var(--reel-peek) * 2);--reel-width:clamp(var(--reel-base-width), var(--reel-width-ratio), calc(var(--reel-card-height) * .85))}}.timeline--reel .timeline__item{height:calc(var(--reel-height) - var(--reel-peek) * 2);scroll-snap-align:center;scroll-snap-stop:always;border-top:0;flex:none;margin:0;padding:0;display:flex}.timeline--reel .timeline__card{flex-direction:column;height:100%;min-height:0;display:flex}.timeline--reel .hitokoma-card{flex-direction:column;flex:1;min-height:0;display:flex}.timeline--reel .hitokoma-card__body{gap:var(--spacing-sm);scrollbar-width:thin;--body-fade:20px;min-height:0;padding-bottom:var(--body-fade);-webkit-mask-image:linear-gradient(to bottom, #000 calc(100% - var(--body-fade)), transparent);mask-image:linear-gradient(to bottom, #000 calc(100% - var(--body-fade)), transparent);-webkit-mask-image:linear-gradient(to bottom, #000 calc(100% - var(--body-fade)), transparent);flex-direction:column;flex:1;display:flex;overflow-y:auto}.timeline--reel .hitokoma-card__figure{aspect-ratio:4/3;flex:none;overflow:hidden}.timeline--reel .hitokoma-card__image{aspect-ratio:auto;object-fit:cover;width:100%;height:100%}.timeline--reel .timeline__end{height:calc(var(--reel-height) - var(--reel-peek) * 2);scroll-snap-align:center;border-top:0;flex-direction:column;flex:none;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.timeline--reel .timeline__loader{margin:0}@media (prefers-reduced-motion:reduce){.timeline__card{transition:none}}@media (orientation:landscape) and (height<=760px){.timeline--reel{--reel-peek:clamp(28px, 6dvh, 58px);--reel-gap:clamp(12px, 2dvh, 20px);--reel-photo-height:calc(var(--reel-card-height) - var(--spacing-sm) - var(--spacing-md) - 2px);--reel-photo-width:calc(var(--reel-photo-height) * 4 / 3);--reel-text-width:320px;--reel-width:min(calc(var(--reel-photo-width) + var(--reel-text-width) + var(--spacing-sm) * 2 + var(--spacing-md) + 2px), calc(100vw - var(--spacing-md) * 2))}.timeline--reel .timeline__card{grid-template-columns:var(--reel-photo-width) minmax(0, 1fr);column-gap:var(--spacing-md);grid-template-rows:minmax(0,1fr) auto;display:grid}.timeline--reel .hitokoma-card{display:contents}.timeline--reel .hitokoma-card__figure{width:var(--reel-photo-width);height:var(--reel-photo-height);aspect-ratio:auto;grid-area:1/1/span 2}.timeline--reel .hitokoma-card__body{padding-top:var(--spacing-xs);grid-area:1/2}.timeline--reel .timeline__actions{grid-area:2/2}}.like-button{align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);border:1px dashed var(--color-border-line);border-radius:var(--radius-sm);letter-spacing:.05em;color:var(--color-ink-sub);cursor:pointer;transition:color var(--duration-fast) ease, border-color var(--duration-fast) ease;background:0 0;font-size:12px;display:inline-flex}.like-button:hover{border-color:var(--color-ink-sub)}.like-button.is-liked{border-style:solid;border-color:var(--color-primary-classic);color:var(--color-primary-classic)}.like-button__mark{font-size:13px;line-height:1;display:inline-block}.like-button.is-liked .like-button__mark{animation:like-pop var(--duration-base) ease}@keyframes like-pop{0%{transform:scale(1)}45%{transform:scale(1.35)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.like-button{transition:none}.like-button.is-liked .like-button__mark{animation:none}}.modal{width:min(440px, calc(100vw - var(--spacing-xl)));border:1px solid var(--color-border-line);border-radius:var(--radius-lg);background-color:var(--color-bg-base);max-height:80dvh;color:var(--color-ink-main);padding:0;overflow:hidden}.modal::backdrop{background-color:var(--color-overlay)}.modal__inner{flex-direction:column;max-height:80dvh;display:flex}.modal__header{padding:var(--spacing-lg) var(--spacing-lg) var(--spacing-md);border-bottom:1px dashed var(--color-border-line)}.modal__title{font-size:15px;font-weight:600;line-height:1.6}.modal__lead{margin-top:var(--spacing-sm);color:var(--color-ink-sub);font-size:12px;line-height:1.7}.modal__body{padding:var(--spacing-lg);flex:1;overflow-y:auto}.modal__footer{gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg) var(--spacing-lg);border-top:1px dashed var(--color-border-line);flex-direction:column;display:flex}.modal__choices{gap:var(--spacing-sm);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.modal__choice{align-items:center;gap:var(--spacing-md);width:100%;padding:var(--spacing-sm);border:1px solid var(--color-border-line);border-radius:var(--radius-md);text-align:left;cursor:pointer;transition:border-color var(--duration-fast) ease, background-color var(--duration-fast) ease;background:0 0;display:flex}.modal__choice:hover,.modal__choice.is-selected{border-color:var(--color-primary-classic);background-color:var(--color-bg-surface)}.modal__choice-thumb{object-fit:cover;border-radius:var(--radius-sm);background-color:var(--color-bg-surface);filter:none;flex-shrink:0;width:56px;height:42px}.modal__choice-text{color:var(--color-ink-main);font-size:12px;line-height:1.6}.modal__choice-sub{font-family:var(--font-mono);letter-spacing:-.05em;color:var(--color-ink-sub);font-size:11px;display:block}@media (prefers-reduced-motion:reduce){.modal__choice{transition:none}}.modal.modal--author{width:min(max(440px, calc(var(--reel-width,0px) * .9)), calc(100vw - var(--spacing-xl)))}.shelf__intro{margin-bottom:var(--spacing-lg);padding:var(--spacing-md);border:1px dashed var(--color-border-line);border-radius:var(--radius-md);color:var(--color-ink-sub);font-size:12px;line-height:1.8}.shelf__counter{font-family:var(--font-mono);letter-spacing:-.05em;color:var(--color-ink-sub);font-size:12px}.shelf{--book-width:140px;--book-gap:var(--spacing-md);grid-template-columns:repeat(auto-fit, var(--book-width));justify-content:center;column-gap:var(--book-gap);row-gap:var(--spacing-xl);max-width:calc(var(--book-width) * 5 + var(--book-gap) * 4);padding-bottom:var(--spacing-md);margin:0 auto;display:grid}.book{padding-bottom:var(--spacing-md);background-image:linear-gradient(to bottom, transparent calc(100% - 4px), var(--color-border-line) calc(100% - 4px), var(--color-border-line) calc(100% - 3px), transparent calc(100% - 3px));flex-direction:column;display:flex;position:relative}.book__cover{text-align:left;cursor:pointer;background:0 0;border:0;width:100%;padding:0;display:block}.book__cover:disabled{cursor:default;opacity:.6}.book__cover:focus-visible{outline:2px solid var(--color-primary-classic);outline-offset:2px}.book__face{aspect-ratio:3/4;border:1px solid var(--color-border-line);border-radius:2px var(--radius-sm) var(--radius-sm) 2px;transition:transform var(--duration-fast) ease, box-shadow var(--duration-fast) ease;background-color:#fff;border-left-width:3px;padding:6px 6px 0;position:relative;overflow:hidden;box-shadow:inset 4px 0 6px -4px #2c2c2e40,2px 3px 8px #2c2c2e24}.book__cover:hover .book__face{transform:translateY(-3px);box-shadow:inset 4px 0 6px -4px #2c2c2e40,4px 8px 16px #2c2c2e2e}.book__image{aspect-ratio:4/3;object-fit:cover;background-color:var(--color-bg-surface);width:100%}.book__face--empty{padding:var(--spacing-sm);color:var(--color-ink-sub);text-align:center;justify-content:center;align-items:center;font-size:11px;line-height:1.6;display:flex}.book__excerpt{-webkit-line-clamp:3;padding:var(--spacing-xs) 2px 0;letter-spacing:.03em;color:var(--color-ink-main);-webkit-box-orient:vertical;font-size:11px;line-height:1.6;display:-webkit-box;overflow:hidden}.book__stamp{font-family:var(--font-mono);letter-spacing:-.05em;color:var(--color-ink-sub);padding:2px 2px 0;font-size:10px}.book__meta{margin-top:var(--spacing-xs);color:var(--color-ink-sub);font-size:11px;line-height:1.5}.book__remove{margin-top:var(--spacing-xs);padding:2px var(--spacing-xs);color:var(--color-ink-sub);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;align-self:flex-start;font-size:11px;-webkit-text-decoration:underline dashed;text-decoration:underline dashed}.book__remove:hover{color:var(--color-danger-muted)}.book--empty .book__face{box-shadow:none;background-color:#0000;border-style:dashed;border-left-width:1px}.person-actions{margin-bottom:var(--spacing-md);justify-content:flex-end;display:flex}@media (prefers-reduced-motion:reduce){.book__face{transition:none}}.profile-free-note{white-space:pre-wrap}.plan-badge{padding:2px var(--spacing-sm);border:1px solid var(--color-border-line);border-radius:var(--radius-sm);letter-spacing:.08em;color:var(--color-ink-sub);font-size:11px;display:inline-block}.plan-badge--trial,.plan-badge--basic,.plan-badge--extended{border-color:var(--color-primary-classic);color:var(--color-primary-classic)}.record{gap:var(--spacing-sm);flex-direction:column;display:flex}.record__scroll{padding-bottom:var(--spacing-xs);scrollbar-width:none;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 18px);mask-image:linear-gradient(90deg,#0000 0,#000 18px)}.record__scroll::-webkit-scrollbar{display:none}.record__grid{grid-auto-flow:column;grid-template-rows:repeat(7, var(--record-cell,11px));gap:3px;width:max-content;display:grid}.record__month{letter-spacing:.05em;color:var(--color-ink-sub);font-size:10px;line-height:1.2}.record__months{grid-auto-flow:column;grid-auto-columns:var(--record-cell,11px);gap:3px;width:max-content;margin-bottom:3px;display:grid}.record__month{white-space:nowrap}.record__day{width:var(--record-cell,11px);height:var(--record-cell,11px);background-color:var(--color-record-0);border-radius:2px}.record__day--1{background-color:var(--color-record-1)}.record__day--2{background-color:var(--color-record-2)}.record__day--future{border:1px dashed var(--color-border-line);background-color:#0000}.record__legend{align-items:center;gap:var(--spacing-sm);color:var(--color-ink-sub);font-size:11px;display:flex}.record__legend-item{align-items:center;gap:var(--spacing-xs);display:inline-flex}.record__summary{color:var(--color-ink-sub);font-size:12px}.record__header{justify-content:space-between;align-items:flex-start;gap:var(--spacing-md);flex-wrap:wrap;display:flex}.record__years{gap:var(--spacing-xs);flex-wrap:wrap;display:flex}.record__year{padding:2px var(--spacing-sm);border:1px dashed var(--color-border-line);border-radius:var(--radius-sm);font-family:var(--font-mono);letter-spacing:-.05em;color:var(--color-ink-sub);cursor:pointer;background:0 0;font-size:11px}.record__year.is-active{border-style:solid;border-color:var(--color-primary-classic);color:var(--color-primary-classic)}.report-button{padding:var(--spacing-xs);color:var(--color-ink-sub);cursor:pointer;background:0 0;border:0;margin-left:auto;font-size:11px}.timeline__edited+.report-button{margin-left:0}.report-button:hover{color:var(--color-danger-muted);text-decoration:underline}.report-button:focus-visible{outline:2px solid var(--color-primary-classic);outline-offset:2px}.report-reasons{gap:var(--spacing-sm);border:0;flex-direction:column;margin:0;padding:0;display:flex}.report-reasons__legend{margin-bottom:var(--spacing-xs);font-size:13px;font-weight:600}.report-reasons__item{align-items:center;gap:var(--spacing-sm);font-size:14px;display:flex}.person-report{justify-content:flex-end;display:flex}
