/* FENIX Oracle — Structural refinement V5. Scope: the single Oracle guidance page. */
:root{color-scheme:dark}
*{box-sizing:border-box}
html{background:#09090c}
body.oracle-v5{margin:0;color:#f5f0e6;background:
radial-gradient(ellipse 55% 400px at 0% 100px,rgba(38,57,106,.15),transparent 80%),
radial-gradient(ellipse 47% 370px at 100% 260px,rgba(102,48,102,.10),transparent 82%),
linear-gradient(170deg,#0c0b0e 0%,#121015 58%,#08080a 100%);
font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:100vh}
body.oracle-v5:before{content:"";display:block;position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,#c2a56d 50%,transparent);opacity:.38;pointer-events:none}
body.oracle-v5 .shell{width:min(1090px,calc(100% - 42px));margin:0 auto;padding:26px 0 62px;max-width:none}
/* Legacy V4 return navigation retained. */
body.oracle-v5 .fenix-oracle-return-v4{margin:0 0 34px;display:flex;gap:9px;align-items:center;flex-wrap:wrap}
body.oracle-v5 .fenix-oracle-return-v4 a{color:#d8d0bf;border:1px solid rgba(209,198,176,.28);background:rgba(255,255,255,.025);padding:10px 15px;border-radius:100px;font-size:.79rem;text-decoration:none;letter-spacing:.01em}
body.oracle-v5 .fenix-oracle-return-v4 a:hover{background:rgba(227,208,162,.12);border-color:#a18e6a}
body.oracle-v5 .fenix-oracle-return-v4 a:focus-visible{outline:2px solid #ddc48d;outline-offset:3px}
/* Hero is the identity, without badges, emblems or figurative symbols. */
.oracle-v5-hero{position:relative;isolation:isolate;border-bottom:1px solid rgba(214,190,146,.20);padding:8px 0 34px;overflow:hidden}
.oracle-v5-hero:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(130deg,rgba(44,67,125,.08),transparent 43%,rgba(85,39,103,.065));z-index:-1;border-radius:8px}
.oracle-v5-overline{margin:0 0 17px;letter-spacing:.30em;text-transform:uppercase;font-size:.65rem;font-weight:750;color:#d5b983}
.oracle-v5-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(4.2rem,11vw,7.4rem);letter-spacing:-.07em;line-height:.88;font-weight:400;margin:0;color:#f4efe6;text-shadow:0 8px 48px rgba(234,195,114,.045)}
.oracle-v5-hero h1 .gold-period{color:#d2b678}
.oracle-v5-hero .oracle-v5-tagline{margin:24px 0 10px;font-family:Georgia,serif;font-size:clamp(1.38rem,3.4vw,2.15rem);line-height:1.16;font-weight:400;color:#ebd9b7}
.oracle-v5-hero .oracle-v5-intro{max-width:750px;line-height:1.6;color:#bfbac1;font-size:clamp(.96rem,2.4vw,1.08rem);margin:0}
.oracle-v5-hairline{width:64px;height:2px;background:linear-gradient(90deg,#f0d39b,#856f50);border-radius:3px;margin:23px 0 0}
/* Three-step functional pathway. The native V3 controller and its event flow remain unchanged. */
.oracle-v5-journey{margin-top:28px;border:1px solid rgba(208,189,153,.23);background:linear-gradient(150deg,rgba(31,27,33,.92),rgba(15,14,18,.96));padding:clamp(19px,3.8vw,39px);border-radius:25px;box-shadow:0 18px 54px rgba(0,0,0,.22)}
.oracle-v5-journey-step{display:flex;gap:13px;align-items:start;margin-bottom:14px}
.oracle-v5-number{display:flex;flex:none;align-items:center;justify-content:center;height:31px;min-width:34px;padding:0 4px;border:1px solid rgba(212,181,118,.40);color:#e2c588;border-radius:9px;font-size:.71rem;letter-spacing:.08em;font-weight:800;font-variant-numeric:tabular-nums}
.oracle-v5-step-title{margin:1px 0 3px;font-family:Georgia,serif;font-size:1.38rem;font-weight:400;line-height:1.2;color:#faf3e7}
.oracle-v5-step-desc{color:#9999a0;font-size:.85rem;line-height:1.5;margin:0}
body.oracle-v5 .origins{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:17px 0 33px}
body.oracle-v5 .origins button{appearance:none;position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;text-align:left;min-height:132px;padding:20px;border-radius:18px;border:1px solid rgba(200,194,185,.22);background:linear-gradient(150deg,rgba(47,42,49,.55),rgba(22,22,26,.55));color:#e8e7e7;font-family:inherit;box-shadow:none;cursor:pointer;transition:transform .16s ease,border-color .16s ease,background .16s ease}
body.oracle-v5 .origins button:hover{border-color:rgba(231,204,151,.54);background:#292329}
body.oracle-v5 .origins button:active{transform:translateY(1px)}
body.oracle-v5 .origins button:focus-visible{outline:2px solid #e9cc90;outline-offset:3px}
body.oracle-v5 .origins button[aria-pressed="true"]{border:1px solid #dcc48d;background:linear-gradient(144deg,#342d2b,#201d22);box-shadow:inset 0 0 0 1px rgba(216,187,130,.28),0 10px 30px rgba(0,0,0,.15)}
body.oracle-v5 .origins button[aria-pressed="true"]:after{content:"✓";position:absolute;right:18px;top:15px;color:#ead29c;font-size:1rem;font-weight:700}
.oracle-v5-origin-topline{color:#b79e73;font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.16em;margin-bottom:15px}
.oracle-v5-origin-name{font-family:Georgia,serif;font-size:clamp(1.28rem,2.6vw,1.7rem);font-weight:400;color:#fff8ef;margin-bottom:6px;line-height:1.13}
.oracle-v5-origin-desc{font-size:.82rem;color:#b1aeb4;line-height:1.35}
body.oracle-v5 .origins button[disabled]{opacity:.5;cursor:progress}
.oracle-v5-step-separator{height:1px;background:linear-gradient(90deg,rgba(204,184,141,.22),transparent);margin:0 0 27px}
body.oracle-v5 #intent{appearance:none;-webkit-appearance:none;display:block;width:100%;min-height:60px;border:1px solid rgba(216,192,155,.42);border-radius:13px;color:#f8f4ed;background:linear-gradient(45deg,#211e25,#262127);font-size:1.03rem;padding:13px 50px 13px 17px;margin:15px 0 0;cursor:pointer;outline-offset:4px}
body.oracle-v5 #intent:focus-visible{outline:2px solid #e5ca94}
body.oracle-v5 #intent:disabled{color:#a3a0a6;opacity:.7}
.oracle-v5-select-wrap{position:relative;margin-bottom:30px}
.oracle-v5-select-wrap:after{content:"⌄";position:absolute;right:20px;top:16px;font-size:1.55rem;color:#d8c08d;pointer-events:none;line-height:1}
body.oracle-v5 #run{min-height:56px;width:100%;max-width:460px;display:flex;gap:14px;align-items:center;justify-content:center;border-radius:100px;background:linear-gradient(120deg,#ead4a3,#c9a569 55%,#ead09b);color:#181310;border:1px solid rgba(244,215,158,.75);font-size:.93rem;font-weight:850;letter-spacing:.065em;padding:15px 22px;box-shadow:0 9px 28px rgba(207,174,99,.09);transition:transform .14s ease,filter .14s ease;cursor:pointer}
body.oracle-v5 #run:not(:disabled):hover{filter:brightness(1.07)}
body.oracle-v5 #run:active{transform:scale(.992)}
body.oracle-v5 #run:disabled{background:#524739;color:#c9c1b5;opacity:.56;cursor:not-allowed}
body.oracle-v5 #run:focus-visible{outline:2px solid #eee2cb;outline-offset:4px}
.oracle-v5-run-arrow{font-size:1.1rem;font-weight:500}
.oracle-v5-caption{font-size:.79rem;line-height:1.6;color:#a9a5a9;margin:13px 0 0}
body.oracle-v5 .info{margin:18px 5px 19px;padding:12px 14px;color:#e5cfa5;background:rgba(215,178,113,.055);border-left:2px solid rgba(213,182,119,.55);border-radius:0 7px 7px 0;font-size:.88rem;line-height:1.55;min-height:0}
body.oracle-v5 #results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px;row-gap:16px;margin-top:22px}
body.oracle-v5 #results:not(:empty):before{content:"Il percorso suggerito";font-family:Georgia,serif;font-size:clamp(1.65rem,4vw,2.35rem);color:#f4eee3;grid-column:1/-1;display:block;margin-bottom:2px}
body.oracle-v5 #results .card{margin:0;border-radius:20px;border:1px solid rgba(208,188,145,.20);background:linear-gradient(146deg,rgba(39,35,39,.93),rgba(23,22,26,.95));padding:clamp(20px,3.7vw,30px);min-width:0;box-shadow:none;display:flex;flex-direction:column;align-items:flex-start;gap:11px}
body.oracle-v5 #results .card:first-of-type{grid-column:1/-1;background:linear-gradient(140deg,rgba(57,43,38,.91),rgba(26,25,29,.98));border:1px solid rgba(224,195,134,.49)}
body.oracle-v5 #results .card .tag{display:inline-flex;letter-spacing:.17em;font-size:.63rem;font-weight:900;text-transform:uppercase;color:#d8ba80}
body.oracle-v5 #results .card h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(1.34rem,3vw,1.85rem);color:#fff8ec;line-height:1.18;margin:0}
body.oracle-v5 #results .card p{font-size:.96rem;color:#c4bdc1;line-height:1.58;margin:0 0 3px}
body.oracle-v5 #results .card a{margin-top:auto;text-decoration:none;border-bottom:1px solid rgba(220,188,130,.65);color:#f5dca6;padding:9px 0 5px;font-weight:750;font-size:.88rem}
body.oracle-v5 #results .card a:hover{color:#fff4df}
body.oracle-v5 #results .card a:focus-visible{outline:2px solid #e9ca8b;outline-offset:4px}
body.oracle-v5 #results .meta{grid-column:1/-1;color:#9c9ba1;font-size:.78rem;line-height:1.6;margin:2px 0 0}
.oracle-v5-bottom{margin-top:39px;display:flex;align-items:start;justify-content:space-between;gap:20px;padding:22px 0 0;border-top:1px solid rgba(210,188,146,.2)}
.oracle-v5-bottom strong{color:#d7bd8a;font-size:.72rem;letter-spacing:.18em;white-space:nowrap}
.oracle-v5-bottom p{max-width:720px;color:#96949c;font-size:.78rem;line-height:1.7;margin:0}
@media(max-width:680px){
body.oracle-v5 .shell{width:calc(100% - 34px);padding:22px 0 50px}
body.oracle-v5 .fenix-oracle-return-v4{margin-bottom:26px}
.oracle-v5-hero{padding-bottom:29px}
.oracle-v5-hero h1{font-size:clamp(4.2rem,17vw,6rem)}
.oracle-v5-hero .oracle-v5-tagline{margin-top:22px}
.oracle-v5-journey{padding:21px 17px;border-radius:20px;margin-top:22px}
body.oracle-v5 .origins{grid-template-columns:1fr;gap:9px;margin:18px 0 27px}
body.oracle-v5 .origins button{min-height:78px;display:grid;grid-template-columns:59px 1fr;grid-template-rows:auto auto;column-gap:12px;align-content:center;padding:14px 16px}
.oracle-v5-origin-topline{grid-row:1/3;align-self:center;margin:0;color:#d4b77c;border-right:1px solid rgba(215,191,152,.22);padding-right:10px;font-size:.65rem}
.oracle-v5-origin-name{font-size:1.34rem;grid-column:2;margin:0 0 4px}
.oracle-v5-origin-desc{font-size:.77rem;grid-column:2}
body.oracle-v5 .origins button[aria-pressed="true"]:after{right:15px;top:13px}
body.oracle-v5 #run{max-width:none}
body.oracle-v5 #results{grid-template-columns:1fr}
body.oracle-v5 #results .card:first-of-type{grid-column:auto}
.oracle-v5-bottom{flex-direction:column;gap:9px;margin-top:29px}
}
@media(prefers-reduced-motion:reduce){body.oracle-v5 .origins button,body.oracle-v5 #run{transition:none}}
