@font-face{font-family:Inter;src:url(/ritual-time-dial/assets/Inter-Regular.ttf)}@font-face{font-family:Inter;src:url(/ritual-time-dial/assets/Inter-SemiBold.ttf);font-weight:600}:root{font-family:Inter,sans-serif;color:#f5f0e9;background:#080c0d;font-synthesis:none;--accent:#eaa465;--accent-muted:#cf996c}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,select,input{outline-offset:5px}button{cursor:pointer}button{color:inherit}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,[role=slider]:focus-visible{outline:2px solid var(--accent)}button{border:0;background:none}a{color:inherit;text-decoration:none}.app{min-height:100vh;max-width:1920px;margin:auto;padding:40px 4.8% 30px}header{display:flex;align-items:center;gap:40px}.wordmark{font-size:27px;font-weight:600;letter-spacing:.45em}.disciplines,.nav-end{display:flex;gap:24px;align-items:center}.disciplines button,.nav-end button{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:#a3a4a5;padding:10px 0}.nav-end{margin-left:auto;gap:30px}.nav-end .book-nav{border:1px solid var(--accent);color:var(--accent);border-radius:30px;padding:14px 28px}.app main{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:40px;min-height:830px;padding-top:46px}.hero{position:relative;min-width:0}.intro{position:relative;z-index:2;pointer-events:none;max-width:450px}.eyebrow{font-size:11px;letter-spacing:.27em;text-transform:uppercase;color:#aaaeb0;margin:0 0 22px;line-height:1.6}h1{font-weight:400;font-size:clamp(48px,4.7vw,70px);letter-spacing:-.06em;line-height:1.07;margin:0 0 24px}.lead{font-size:18px;line-height:1.6;color:#b0b1b6;max-width:380px;margin:0}.dial-stage{position:absolute;width:95%;max-width:900px;right:-8%;top:88px;aspect-ratio:1;touch-action:pan-y;cursor:ew-resize;-webkit-user-select:none;user-select:none;outline-offset:-20px}.dial-image{width:100%;height:100%;object-fit:contain;transition:transform .65s cubic-bezier(.2,.8,.2,1),filter .7s;-webkit-user-select:none;user-select:none;pointer-events:none}.dial-readout{position:absolute;left:0;right:0;bottom:8%;text-align:center;pointer-events:none}.dial-readout strong{font-size:38px;color:var(--accent);font-weight:400;letter-spacing:-.04em}.dial-readout span{display:block;font-size:9px;letter-spacing:.25em;color:#9da0a4;margin-top:7px}.dial-hint{position:absolute;left:0;right:0;bottom:0%;display:flex;justify-content:center;align-items:center;gap:12px;color:#9a9b9c;font-size:11px;letter-spacing:.09em}.builder{border-left:1px solid #252b2c;padding:0 0 0 42px;position:relative;z-index:3}.builder-title{margin-bottom:27px}.field{display:block;margin-bottom:25px}.field>span{display:block;text-transform:uppercase;font-size:11px;letter-spacing:.18em;color:#b5b7bc;margin-bottom:10px}.select-wrap{display:flex;align-items:center;gap:14px;border:1px solid #55514c;border-radius:18px;padding:0 18px;height:60px;background:#101415}.select-wrap svg{flex-shrink:0;color:#ddd8d0}select{width:100%;color:#f6f1e9;border:0;background:transparent;cursor:pointer;font-size:16px;min-width:0}option{background:#141a1c;color:#fff}.result{border-top:1px solid #303335;margin-top:35px;padding-top:22px}.result .eyebrow{margin-bottom:18px}.result h2{font-size:33px;font-weight:400;letter-spacing:-.045em;line-height:1.2;margin:0 0 13px}.description{color:#aeb1b7;font-size:15px;line-height:1.6;margin:0}.text-link{font-size:11px;color:#b0a698;text-decoration:underline;text-underline-offset:4px;padding:0}.edit-link{margin-top:12px}.price{display:flex;align-items:center;gap:13px;font-size:20px;letter-spacing:.025em;margin:24px 0}.price span{color:#939697}.primary,.save{display:flex;align-items:center;justify-content:center;gap:18px;width:100%;border-radius:40px;min-height:59px;font-size:16px;transition:background .2s,transform .2s}.primary{background:var(--accent);border:1px solid #f7ceaa;color:#171413}.primary:hover{transform:translateY(-2px);background:#f2bc8e}.save{border:1px solid #969999;margin-top:13px;min-height:46px;font-size:13px}.save:hover{background:#192022}.details{display:block;margin:15px auto 0;color:#959b9f}footer{display:flex;align-items:center;gap:24px;position:relative;z-index:4;padding-top:20px;border-top:1px solid #222a2c}.footer-mantra{font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:#b7aaa0}.brand-switch{margin-left:auto;display:flex;align-items:center;gap:12px;font-size:10px;color:#989c9f}.brand-switch button{font-size:10px;letter-spacing:.08em;padding:7px 9px;border-bottom:1px solid transparent}.brand-switch button[aria-pressed=true]{color:var(--accent);border-color:var(--accent)}.credit{font-size:10px;color:#8b9298}.toast{position:fixed;bottom:30px;left:50%;transform:translate(-50%);background:#202927;color:#f4f0e9;border:1px solid #596b5a;padding:15px 24px;display:flex;gap:10px;align-items:center;border-radius:12px;z-index:20}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000b;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:30;display:grid;place-items:center;padding:24px;overflow:auto}.modal{position:relative;background:#111819;border:1px solid #414443;padding:44px;max-width:510px;width:100%;max-height:90vh;overflow:auto;border-radius:24px;box-shadow:0 30px 100px #0008}.close{position:absolute;right:17px;top:17px;padding:6px;color:#ddd}.modal h2{font-size:32px;line-height:1.2;letter-spacing:-.035em;font-weight:400;margin:0 0 20px}.modal p{font-size:14px;line-height:1.7;color:#b7bfc0}.modal .eyebrow{font-size:10px;margin-bottom:20px}.routine{list-style:none;padding:0;margin:20px 0}.routine li{display:flex;justify-content:space-between;border-bottom:1px solid #333c3e;padding:12px 0;font-size:14px}.routine li span:last-child{color:var(--accent)}.modal label{display:block;font-size:12px;margin:16px 0}.modal input,.modal select,.result input{display:block;border:1px solid #465052;border-radius:9px;width:100%;padding:13px;margin-top:8px;background:#0b1011;color:#fff}.modal .notice{font-size:11px;color:#8a9699}.ritual-list button{width:100%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #354041;padding:22px 0;text-align:left}.summary{color:var(--accent)!important}@media(min-width:1650px){.app main{min-height:900px}.dial-stage{max-width:940px;right:3%;top:20px}}@media(max-width:1150px){.app{padding:30px 4%}.disciplines{display:none}.app main{grid-template-columns:minmax(0,1fr) 300px;gap:22px;min-height:750px}.builder{padding-left:24px}.dial-stage{top:180px;right:-5%;width:105%}.lead{font-size:16px;max-width:310px}h1{font-size:54px}.result h2{font-size:28px}footer{flex-wrap:wrap}.credit{margin-left:auto}}@media(max-width:760px){.app{padding:24px 22px}header{gap:12px}.wordmark{font-size:21px}.nav-end{gap:14px}.nav-end button:not(.book-nav){display:none}.nav-end .book-nav{font-size:10px;padding:10px 20px}.app main{display:flex;flex-direction:column;gap:10px;padding-top:40px;min-height:0}.hero{min-height:650px}.intro{max-width:100%;pointer-events:auto}h1{font-size:50px;line-height:1.06}.lead{max-width:290px;font-size:15px}.eyebrow{font-size:9px}.dial-stage{top:220px;right:-22px;width:calc(100% + 44px);max-width:none}.dial-readout{bottom:10%}.dial-readout strong{font-size:30px}.dial-hint{bottom:0}.builder{border-left:0;border-top:1px solid #303536;padding:30px 0 20px}.builder-title,.field{margin-bottom:22px}.result h2{font-size:32px}.description{font-size:16px}.select-wrap{height:57px}.result{margin-top:28px}.credit{margin-left:0;width:100%}.brand-switch{margin-left:0}.footer-mantra{width:100%}footer{gap:12px}.modal{padding:36px 24px}.modal h2{font-size:28px}.toast{width:max-content;max-width:90%;font-size:12px}}@media(max-width:400px){.hero{min-height:605px}.dial-stage{top:230px}h1{font-size:46px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}.dial-image{transform:none!important}}@media(min-width:1151px)and (max-width:1649px){.app main{padding-top:55px;min-height:885px}.dial-stage{top:-12px}h1{font-size:80px;line-height:1.02}.lead{max-width:350px}.result h2{font-size:38px}.field{margin-bottom:30px}.result{margin-top:38px}.description{max-width:300px;font-size:16px}.dial-readout{bottom:7%}.dial-hint{bottom:1%}}.dial-image{-webkit-mask-image:radial-gradient(ellipse at 50% 52%,#000 52%,transparent 75%);mask-image:radial-gradient(ellipse at 50% 52%,#000 52%,transparent 75%)}@media(min-width:1151px)and (max-width:1649px){.dial-stage{right:-13%}.lead{max-width:295px}.dial-hint{display:none}}
