/* Packet 12 — primitive page compatibility and shared-language presentation */
.ls-custom-widget { width:100%; height:100%; min-width:0; min-height:0; box-sizing:border-box; }
.ls-widget-missing { display:none !important; }
.ls-custom-text { min-width:0; min-height:0; }
.ls-custom-text-content { width:100%; min-width:0; }
.ls-link-prefix,.ls-link-label,.ls-link-suffix { display:inline-block; }
.ls-link-suffix { margin-inline-start:auto; }
.packet12-menu-link { justify-content:space-between; gap:8px; padding:0 15px; }
.packet12-menu-link .ls-link-label { min-width:0; }
.packet12-language-link { min-width:28px; padding:2px 5px; border:1px solid transparent; border-radius:4px; text-decoration:none; }
.packet12-language-link.is-active { background:#fff0f7; border-color:var(--page-border,#e3a8c2); font-weight:700; }
.language-switcher { box-sizing:border-box; }

/* Preserve the exact visual shells while their contents are now primitive trees. */
.profile-component-group,.welcome-card,.update-card,.visitors-card,.two-column-card,.chatbox-placeholder,
.hanging-photo,.site-header,.floating-menu,.diary-nav,.site-banner,.diary-center,.diary-footer,
.retro-box,.ie-titlebar { box-sizing:border-box; }
.ls-element-shell > .ls-custom-container,
.ls-element-shell > .ls-custom-text,
.ls-element-shell > .ls-custom-repeater,
.ls-element-shell > .ls-custom-image,
.ls-element-shell > .ls-custom-decoration,
.ls-element-shell > .ls-custom-divider,
.ls-element-shell > .ls-custom-widget { width:100%; height:100%; }

/* Primitive media roots should not contribute browser figure margins. */
figure.ls-custom-element { margin:0; }
figure.ls-custom-element > img,
figure.ls-custom-element > a,
figure.ls-custom-element > a > img { width:100%; height:100%; }

/* Homepage component details. */
.packet12-profile-name { margin:0; text-align:center; }
.packet12-heart-list .ls-repeater-row { border:0 !important; background:transparent !important; }
.packet12-heart-list .ls-repeater-cell { border:0 !important; background:transparent !important; overflow:visible; }
.packet12-heart-list .ls-repeater-rich-text p { margin:0; }
.packet12-tiny-button { min-height:26px; border:1px solid var(--page-border,#e3a8c2); background:#fff8fb; color:inherit; text-decoration:none; }
.packet12-tiny-button:hover,.packet12-tiny-button:focus-visible { background:#ffe4f0; }
.retro-scroll-viewport { overflow:auto; scrollbar-width:none; }
.retro-scroll-viewport::-webkit-scrollbar { width:0; height:0; }
.retro-scroll-content { min-height:max-content; }
.retro-scroll-button { display:block; }
.visitor-tags .ls-repeater-row { border:0 !important; }
.visitor-tags .ls-repeater-cell { overflow:visible; }

/* Diary primitive page details. */
.packet12-diary-title { margin:0; text-align:center; }
.packet12-diary-subtitle { text-align:center; font-size:.9em; font-weight:600; }
.diary-nav-links .ls-nested-element-shell { min-width:0; }
.diary-nav-links .ls-custom-link-button { width:100%; height:100%; border-right:1px solid var(--diary-line,#d8aec3); text-decoration:none; }
.diary-nav-links .ls-nested-element-shell:last-child .ls-custom-link-button { border-right:0; }
.diary-nav-links .ls-custom-link-button:hover,.diary-nav-links .ls-custom-link-button:focus-visible,.diary-nav-links .is-current { color:#e25c9e; background:#fff0f7; }
.diary-center > .ls-nested-element-shell:last-child { min-height:0; }
.diary-center .ls-custom-widget[data-widget-key="diary-entry-feed"] { overflow:auto; }
.packet12-diary-links .ls-repeater-row,.packet12-diary-links .ls-repeater-cell { border:0 !important; background:transparent !important; }
.packet12-diary-links a { display:block; color:#665bc3; text-align:left; }
.profile-facts .ls-repeater-row { border:0 !important; }
.profile-facts .ls-repeater-cell { overflow:visible; }
.ie-titlebar .ie-titlebar-copy { min-width:0; }
.ie-titlebar .ie-window-buttons { white-space:nowrap; }
.ls-custom-widget.ie-menubar,.ls-custom-widget.ie-toolbar,.ls-custom-widget.calendar-card-diary,.ls-custom-widget.boombox-player,.ls-custom-widget.calendar-card { margin:0; }

/* The layout is shared; only localized content changes. */
html[lang="en"] [lang="ja"], html[lang="ja"] [lang="en"] { display:none !important; }

/* Editor indication for functional widgets. */
.ls-layer-row [data-element-type="widget"] { font-style:normal; }
