/* A quick, calm input flow that belongs to the fashion-led landing. */
body:has(.journey-screen.active),body:has(#screen-loading.active) {background:#e9e6eb}
.screen.journey-screen {max-width:860px;background:#f8f6f8;padding:28px 42px 60px;box-shadow:none;border-top:4px solid #eb2b7e;min-height:100dvh}
.screen.journey-screen.active,.screen.result-screen.active,#screen-loading.active {animation:journey-arrive .32s cubic-bezier(.2,.8,.2,1) both}
@keyframes journey-arrive {from {opacity:.3;translate:0 10px}to {opacity:1;translate:0 0}}
.journey-screen .journey-brand {font-size:18px;font-weight:800;display:inline-flex;align-items:center;gap:8px;margin-bottom:28px;text-decoration:none;color:#201a22}.journey-brand span {color:#b42260}
.journey-screen .screen-header {padding-top:0;margin:24px 0;text-align:left}.journey-screen .screen-header h2 {font-size:clamp(24px,3vw,32px);font-weight:800;letter-spacing:-.045em;line-height:1.6}.journey-screen .screen-header p {margin:12px 0 0;font-size:13px;max-width:none;color:#756573}
.journey-screen .screen-header .step {padding:0;margin:0 0 10px;border:0;background:none;font:700 11px/1.8 Arial,sans-serif;color:#a32559;letter-spacing:.1em}
.journey-screen .ritual-progress {margin:0 0 26px;gap:8px}.journey-screen .ritual-stage {font-size:11px;letter-spacing:0;color:#796976}.journey-screen .ritual-stage::before {width:28px;height:28px;font-size:11px;box-shadow:none}.journey-screen .ritual-progress::before {top:14px}.journey-screen .ritual-stage.done::before {background:#f0c4d7;color:#7e214b;border-color:#d293af}
.journey-screen .how-note {border:0;border-left:3px solid #d099b4;border-radius:8px;background:#eee7ed;padding:12px 16px;margin-bottom:22px;font-size:12px}.journey-screen .how-note summary {min-height:24px;color:#694156;cursor:pointer}.journey-screen .how-note p {line-height:2;font-size:12px}
.journey-screen .screen-shrine-chamber {padding:26px;border:1px solid #ded4dc;border-radius:16px;background:#fff;overflow:visible}
.journey-screen .shrine-mode-tabs {padding:4px;gap:4px;background:#eee9ee;border-radius:12px;margin-bottom:24px}.journey-screen .shrine-mode-tabs .tab-btn {border:0;box-shadow:none;min-height:65px;background:transparent;border-radius:9px;padding:10px;color:#5d4c59;transition:background .18s,box-shadow .18s,color .18s}.journey-screen .shrine-mode-tabs .tab-btn.active {background:#fff;color:#941b50;border:0;box-shadow:0 2px 8px #54334b18}.journey-screen .shrine-mode-tabs .tab-btn strong {font-size:14px}.journey-screen .shrine-mode-tabs .tab-btn small {font-size:11px}
.journey-screen :is(input,select) {font:16px/1.5 "Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;border-radius:9px!important;border:1px solid #cbbdc7!important;background:#fff!important;color:#352733!important;min-height:48px;padding:12px;box-sizing:border-box;transition:border-color .18s,box-shadow .18s}
.journey-screen :is(input,select):focus {outline:0;border-color:#b32964!important;box-shadow:0 0 0 3px #ec2f7e1c}.journey-screen :is(button,a,summary):focus-visible {outline:3px solid #b32964;outline-offset:3px}
.journey-screen .search-box {margin:0 0 15px}.journey-screen .search-box input {width:100%;padding:15px;min-height:54px}
.journey-location {border-bottom:1px solid #e1d7df;margin-bottom:20px;color:#7e506a}.journey-location>summary {font-size:12px;cursor:pointer;padding:13px 0;min-height:44px}.journey-location .pref-select-box {margin:8px 0 18px;padding:0;background:none;border:0}.journey-screen .address-search-button {font-size:11px;border-radius:7px;min-height:42px}.journey-screen .place-search-note {font-size:11px;line-height:1.8}
.journey-screen .autocomplete-list {border:1px solid #d6c4d0;border-radius:10px;box-shadow:0 10px 30px #39213316;max-height:290px;background:#fff;z-index:15}.journey-screen .ac-item {padding:13px 15px;border-bottom:1px solid #eee5eb;cursor:pointer;color:#3b2835}.journey-screen .ac-item:hover,.journey-screen .ac-item:focus {background:#fae8f1;outline-offset:-2px}.journey-screen .ac-name {font-size:14px;color:#3d2836}.journey-screen .ac-meta {font-size:11px;color:#88717e;white-space:normal}.journey-screen .ac-cat-tag {font-size:11px;background:#f0e8ef;color:#94647e}
.journey-screen .detect-result {background:#f6edf2;border:1px solid #d6adbf;border-radius:10px;padding:20px;animation:journey-arrive .2s ease}.journey-screen .detect-label {color:#8f4365;font-size:11px}.journey-screen .detect-deity {font-size:22px;color:#5f2a43}.journey-screen .detect-cat {color:#8b5b72}.journey-screen .detect-reason {color:#7b5c6c;font-size:12px;line-height:1.8}.journey-screen .ichi-box {background:#f4eff3;color:#705166;border-color:#dfcbd6;font-size:12px;border-radius:8px}
.journey-screen .nav-buttons {position:sticky;bottom:12px;z-index:10;display:flex;gap:12px;padding:12px;margin:24px -12px 0;background:#faf7faf2;border:1px solid #e6dbe3;border-radius:12px;box-shadow:0 6px 24px #39233312;backdrop-filter:blur(12px)}
.journey-screen .btn,.history-editor .btn {font-family:inherit!important;border-radius:8px!important;padding:13px 20px;min-height:48px;line-height:1.5;transition:transform .15s,background .15s,box-shadow .15s;letter-spacing:0}.journey-screen .nav-buttons .btn:last-child {flex:1}.journey-screen .btn:disabled {opacity:.35;cursor:not-allowed}.journey-screen .btn:not(:disabled):active {transform:scale(.97)}.journey-screen .btn:not(:disabled):hover {box-shadow:0 4px 12px #5633431a}.journey-screen .btn.btn-link {font-size:11px!important;color:#983257}
.journey-eyebrow {font:700 11px/1.8 Arial,sans-serif;color:#a32259;letter-spacing:.12em}
.journey-review {border:1px solid #dfd3dd;border-radius:14px;background:#fff;overflow:hidden;margin-bottom:28px}.review-row {display:grid;grid-template-columns:110px 1fr auto;align-items:center;gap:18px;padding:20px;border-bottom:1px solid #eee5ec}.review-row:last-child {border:0}.review-row>span {font-size:11px;color:#8a6d7f}.review-row strong {font-size:16px;color:#352633;display:block;overflow-wrap:anywhere}.review-row small {font-size:11px;color:#8c7282;display:block;margin-top:5px}.review-row button {background:none;border:0;border-bottom:1px solid #bc8aa5;padding:8px 2px;font:12px/1.5 inherit;color:#963559;cursor:pointer;min-height:40px}
.history-panel {background:#f2e9f0;border:1px solid #dfc9d7;border-radius:16px;padding:27px;color:#654357}.history-heading {display:flex;align-items:center;gap:15px;justify-content:space-between}.history-heading h3 {font-size:21px;color:#402434;line-height:1.7;margin:8px 0 14px;letter-spacing:-.04em}.history-count {font:12px/1 monospace;color:#9b5074;white-space:nowrap;border:1px solid #d1a5bc;border-radius:40px;padding:10px}.history-panel>p {font-size:12px;line-height:2;color:#78596c}.history-list {list-style:none;padding:0;margin:22px 0;display:grid;gap:12px}.history-item {display:grid;grid-template-columns:24px 1fr;gap:12px;background:#fff;padding:18px;border:1px solid #e0cbd8;border-radius:10px;animation:journey-arrive .23s ease}.history-number {font:700 12px/1.8 monospace;color:#b74679}.history-item-copy {min-width:0}.history-item-copy strong {font-size:15px;color:#472536;overflow-wrap:anywhere}.history-item-copy small,.history-item-copy>span {display:block;font-size:11px;color:#916c82;line-height:1.8;overflow-wrap:anywhere}.history-item-actions {grid-column:2;display:flex;gap:8px}.history-item-actions button {min-width:36px;min-height:36px;background:#f8f2f6;border:1px solid #e8d6e2;border-radius:6px;color:#90506f;font-size:11px;cursor:pointer}.history-item-actions button:disabled {opacity:.3;cursor:default}
.history-add {border:1px dashed #b67394;border-radius:9px;background:#fff9fd;width:100%;min-height:51px;color:#993c67;font:600 13px/1.6 inherit;cursor:pointer}.history-add:disabled {opacity:.4;cursor:default}.history-editor {padding:23px;margin-top:18px;background:#fff;border:1px solid #c896b0;border-radius:12px;animation:journey-arrive .2s ease}.history-editor[hidden] {display:none}.history-editor h4 {font-size:17px;color:#583349;margin:0 0 20px}.history-editor label {display:block;font-size:12px;color:#734760;margin:14px 0 8px}.history-editor label span {font-size:11px;color:#aa7792;margin-left:8px}.history-editor input {width:100%}.history-fields {display:grid;grid-template-columns:1fr 1fr;gap:15px}.history-hint {font-size:11px!important;color:#926a82!important;line-height:1.9!important;margin-top:12px}.history-suggestions {border:1px solid #dcc2d2;border-radius:8px;max-height:250px;overflow:auto;margin-top:6px}.history-suggestions button {display:block;width:100%;text-align:left;background:#fff;border:0;border-bottom:1px solid #eee3ea;padding:12px;cursor:pointer;color:#61354e}.history-suggestions button:hover,.history-suggestions button:focus {background:#faedf4}.history-suggestions strong {display:block;font-size:13px}.history-suggestions small {display:block;font-size:11px;color:#94798a;margin-top:5px}.history-editor-actions {display:flex;gap:10px;margin-top:18px;justify-content:flex-end}.history-disclosure {font-size:11px!important;line-height:1.9!important;margin-top:16px;color:#6b5664!important}.history-disclosure a {color:#8e3059}.history-result[hidden] {display:none}.history-result-path {list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:12px;margin:22px 0}.history-result-path li {background:#f5eaf1;padding:14px;border-left:2px solid #c9578b;flex:1;min-width:140px}.history-result-path strong {font-size:13px}.history-result-path small {display:block;font-size:11px;margin-top:5px;color:#8c6c7e}.history-result-path .is-current {background:#eae6ee;border-left-color:#40263e}.history-reading p {white-space:pre-line}
#screen-loading {text-align:center;color:#342431;background:#eee8ef;display:none}#screen-loading.active {display:grid;place-items:center;min-height:100dvh}#screen-loading .loading-ritual {padding:30px 20px;max-width:490px;margin:auto}#screen-loading .loading-halo {border:1px solid #d092b0;width:100px;height:100px;display:grid;place-items:center;margin:0 auto 28px;border-radius:50%;font:60px/1 serif;color:#bc2867;background:#f3d2e2;box-shadow:0 0 0 12px #e5dae4;animation:journey-spin 12s linear infinite}#screen-loading .loading-text {font-size:18px;letter-spacing:0;line-height:1.9;margin-top:17px;color:#593348}#screen-loading .loading-dots {color:#b2356b}#screen-loading .loading-progress {font-size:12px;color:#985b7c;line-height:1.8}#screen-loading .loading-hint {font-size:11px;color:#8b7180;line-height:1.9;margin:17px 0 25px}#screen-loading .btn {display:block;margin:10px auto;background:#29212b;color:white;border:0;border-radius:8px;min-height:46px;padding:12px 20px;font-size:13px;letter-spacing:0}#screen-loading .btn-secondary {background:none;color:#8a4d6c;text-decoration:underline;box-shadow:none}
@keyframes journey-spin {to {transform:rotate(360deg)}}
.result-screen .oracle-chapters {position:sticky;top:8px;z-index:10;background:#f4eff5e8;padding:8px;border-radius:10px;backdrop-filter:blur(12px)}.result-screen .oracle-chapters button {border-radius:6px;transition:background .18s;min-height:44px}.result-screen .oracle-chapters button:hover {background:#f0c8dc}.result-screen .fortune-section {scroll-margin-top:85px}.result-screen .summary-reading>div {animation:journey-arrive .22s ease}.screen :is(h1,h2)[tabindex="-1"]:focus {outline:none}
@media(max-width:600px) {
 .screen.journey-screen {padding:22px 18px 40px}.journey-screen .journey-brand {margin-bottom:22px;font-size:16px}.journey-screen .screen-header h2 {font-size:25px}.journey-screen .screen-header p {font-size:12px}.journey-screen .screen-shrine-chamber {padding:18px 14px}.journey-screen .shrine-mode-tabs .tab-btn strong {font-size:12px}.journey-screen .shrine-mode-tabs .tab-btn small {font-size:11px}.journey-screen .nav-buttons {padding:10px;margin:22px -7px 0;bottom:8px}.journey-screen .btn {font-size:13px;padding:12px 14px}.journey-screen .ritual-stage {font-size:11px}.review-row {grid-template-columns:1fr auto;gap:6px 12px;padding:17px}.review-row>span {grid-column:1}.review-row>div {grid-column:1}.review-row button {grid-column:2;grid-row:1/3}.review-row strong {font-size:15px}.history-panel {padding:20px 15px}.history-heading h3 {font-size:18px}.history-count {font-size:11px;padding:8px}.history-editor {padding:17px 13px}.history-fields {grid-template-columns:1fr;gap:0}.history-item {padding:14px;gap:8px}.history-item-actions {gap:6px}.result-screen .oracle-chapters {gap:5px;display:flex}.result-screen .oracle-chapters button {flex:1;font-size:12px;padding:8px 9px}
}
@media(prefers-reduced-motion:reduce) {.screen.active,.screen *,.screen *::before,.screen *::after {animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.journey-screen .ritual-progress {display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.journey-screen .shrine-mode-tabs {display:grid;grid-template-columns:1fr 1fr}.journey-screen .shrine-mode-tabs .tab-btn {width:100%}
/* app.css still paints this note as a dark box with gold text; keep it on the light journey palette. */
.journey-screen .how-note p {background:#fff;border-color:#e2d3dc;color:#4f404a}
