:root { --tool-gold:#e2ad43; --tool-gold-light:#ffe6a1; --tool-violet:#8a43ad; --tool-plum:#2a0b38; --tool-ink:#201126; --tool-cream:#fffaf0; --tool-line:rgba(226,173,67,.3); }
.toolkit-page { min-height:100vh; color:var(--tool-ink); background:radial-gradient(circle at 85% 8%,rgba(138,67,173,.16),transparent 28rem),radial-gradient(circle at 10% 28%,rgba(226,173,67,.11),transparent 24rem),#fffdfb; font:1rem/1.65 Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.toolkit-page * { box-sizing:border-box; }
.toolkit-header { position:sticky; top:0; z-index:30; display:flex; align-items:center; justify-content:space-between; gap:2rem; min-height:5.6rem; padding:.65rem clamp(1rem,5vw,4.5rem); border-bottom:1px solid rgba(75,25,94,.16); background:rgba(255,253,251,.92); backdrop-filter:blur(18px); }
.toolkit-brand { display:flex; align-items:center; gap:.9rem; }
.toolkit-brand img { width:3.75rem; height:3.75rem; border:1px solid var(--tool-line); border-radius:50%; object-fit:cover; }
.toolkit-brand span { display:grid; line-height:1.15; }
.toolkit-brand strong { color:var(--tool-plum); font:700 .92rem/1.15 Georgia,serif; letter-spacing:.06em; text-transform:uppercase; }
.toolkit-brand small { margin-top:.28rem; color:#7b467f; font-size:.67rem; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.toolkit-header nav { display:flex; gap:1.4rem; color:#5e2d70; font-size:.75rem; font-weight:850; letter-spacing:.09em; text-transform:uppercase; }
.toolkit-header a:hover { color:#9a6513; }
.toolkit-shell { width:min(1500px,100%); margin:auto; }
.toolkit-intro { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(20rem,.95fr); align-items:center; gap:clamp(2rem,6vw,7rem); padding:clamp(3rem,7vw,7rem) clamp(1.2rem,6vw,6rem) clamp(2.5rem,5vw,5rem); }
.toolkit-kicker { margin:0 0 .8rem; color:#986812; font-size:.75rem; font-weight:900; letter-spacing:.2em; text-transform:uppercase; }
.toolkit-intro h1,.method-panel h2,.report-header h2,.report-section-heading h2,.closing-guidance h2 { margin:0; color:var(--tool-plum); font:500 clamp(2.4rem,6vw,5.9rem)/.98 Georgia,serif; letter-spacing:-.045em; }
.toolkit-intro h1 em,.method-panel h2 em { color:#7c319d; font-weight:400; }
.toolkit-lead { max-width:49rem; margin:1.6rem 0 0; color:#6f5b73; font-size:clamp(1rem,1.4vw,1.18rem); }
.system-orbit { position:relative; display:grid; grid-template-columns:repeat(2,1fr); gap:.65rem; padding:clamp(1rem,3vw,2rem); border:1px solid rgba(83,30,104,.14); border-radius:50% 50% 2rem 2rem; background:linear-gradient(145deg,rgba(255,255,255,.9),rgba(244,229,249,.72)); box-shadow:0 2rem 5rem rgba(74,17,98,.1); }
.system-orbit::before { position:absolute; inset:1rem; border:1px solid rgba(226,173,67,.22); border-radius:inherit; content:""; pointer-events:none; }
.system-orbit span { position:relative; display:grid; place-items:center; min-height:4.8rem; padding:.9rem; border:1px solid rgba(92,34,114,.13); background:rgba(255,255,255,.78); color:#4c205d; font:600 .92rem/1.3 Georgia,serif; text-align:center; }
.toolkit-workspace { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(18rem,.7fr); gap:1.2rem; padding:0 clamp(1.2rem,6vw,6rem) clamp(4rem,8vw,8rem); }
.alignment-form,.method-panel { border:1px solid rgba(74,17,98,.16); background:rgba(255,255,255,.92); box-shadow:0 1.5rem 4rem rgba(59,17,75,.08); }
.alignment-form { padding:clamp(1.25rem,4vw,3.2rem); }
.form-heading,.report-section-heading { display:flex; align-items:flex-start; gap:1.2rem; margin-bottom:2rem; }
.form-heading>span,.report-section-heading>span { display:grid; place-items:center; flex:0 0 2.8rem; height:2.8rem; border:1px solid var(--tool-gold); border-radius:50%; color:#95610c; font:700 .84rem Georgia,serif; }
.form-heading h2 { margin:0; color:var(--tool-plum); font:500 clamp(1.65rem,3vw,2.6rem)/1.05 Georgia,serif; }
.form-heading p { margin:.35rem 0 0; color:#7b6a7d; font-size:.86rem; }
.field-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.field { display:grid; gap:.45rem; }
.field-wide { grid-column:1/-1; }
.field>span { color:#452350; font-size:.8rem; font-weight:850; letter-spacing:.035em; }
.field small { color:#88768a; font-weight:600; }
.field input,.field select { width:100%; min-height:3.45rem; padding:.78rem .9rem; border:1px solid rgba(76,32,93,.23); border-radius:0; color:#28132f; background:#fff; font:inherit; }
.field input:focus,.field select:focus { border-color:#8a43ad; outline:3px solid rgba(138,67,173,.13); }
.privacy-note { margin:1.4rem 0 0; padding:1rem 1.1rem; border-left:3px solid var(--tool-gold); color:#715e75; background:#fffaf0; font-size:.82rem; }
.form-actions { display:flex; align-items:center; gap:1rem; margin-top:1.3rem; }
.calculate-button,.reset-button,.report-actions button,.report-actions a { min-height:3.4rem; padding:.8rem 1.15rem; border:1px solid transparent; font:850 .78rem/1 Inter,sans-serif; letter-spacing:.07em; text-transform:uppercase; cursor:pointer; }
.calculate-button { display:flex; flex:1; align-items:center; justify-content:space-between; color:white; background:linear-gradient(100deg,#491167,#80349c); box-shadow:0 .9rem 2rem rgba(73,17,103,.2); }
.calculate-button span { color:var(--tool-gold-light); font-size:1.4rem; }
.reset-button { color:#5d3866; border-color:rgba(73,17,103,.2); background:white; }
.form-error { margin:.9rem 0 0; color:#9f1f1f; font-weight:750; }
.method-panel { position:sticky; top:6.7rem; align-self:start; padding:clamp(1.5rem,4vw,3rem); color:white; border-color:rgba(255,224,137,.24); background:radial-gradient(circle at 90% 0,rgba(138,67,173,.55),transparent 19rem),linear-gradient(145deg,#321044,#16051d); }
.method-panel .toolkit-kicker { color:var(--tool-gold-light); }
.method-panel h2 { color:white; font-size:clamp(2rem,3.8vw,3.5rem); }
.method-panel h2 em { color:var(--tool-gold-light); }
.method-panel ol { display:grid; gap:.7rem; margin:2rem 0; padding:0; list-style:none; }
.method-panel li { display:grid; grid-template-columns:2rem 1fr; gap:.8rem; padding:.9rem 0; border-top:1px solid rgba(255,255,255,.15); }
.method-panel li>span { color:var(--tool-gold-light); font:700 1rem Georgia,serif; }
.method-panel li p { display:grid; gap:.15rem; margin:0; color:#d8cddd; font-size:.86rem; }
.method-panel li strong { color:white; font:600 1.08rem Georgia,serif; }
.method-seal { display:flex; align-items:center; gap:1rem; margin-top:2rem; padding:1rem; border:1px solid rgba(255,225,147,.32); }
.method-seal>span { display:grid; place-items:center; width:4rem; height:4rem; border:1px solid var(--tool-gold); border-radius:50%; color:var(--tool-gold-light); font:500 2.6rem/1 Georgia,serif; }
.method-seal p { margin:0; color:#d8cddd; font-size:.85rem; }
.method-seal strong { color:white; }
.forecast-report { margin:0 clamp(1.2rem,4vw,4rem) 5rem; padding:clamp(1.25rem,4vw,4rem); border:1px solid rgba(75,25,94,.2); background:#fff; box-shadow:0 2rem 6rem rgba(45,11,56,.12); }
.report-header { display:flex; align-items:center; justify-content:space-between; gap:2rem; padding-bottom:2rem; border-bottom:1px solid rgba(76,32,93,.15); }
.report-header h2 { font-size:clamp(2rem,5vw,4.8rem); }
#report-period { margin:.8rem 0 0; color:#78647b; }
.alignment-score { display:grid; grid-template-columns:auto auto; align-items:end; justify-content:center; min-width:10rem; padding:1.2rem; border:1px solid var(--tool-gold); background:#fff9e9; text-align:center; }
.alignment-score span { color:#5b236d; font:500 3.6rem/1 Georgia,serif; }
.alignment-score small { padding-bottom:.45rem; color:#96722e; }
.alignment-score p { grid-column:1/-1; margin:.4rem 0 0; color:#6e526f; font-size:.7rem; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.report-summary { display:grid; grid-template-columns:1.05fr .95fr; gap:1rem; margin:1rem 0 4rem; }
.report-summary>div,.report-summary blockquote { margin:0; padding:clamp(1.3rem,3vw,2.4rem); border:1px solid rgba(76,32,93,.13); }
.summary-label { color:#946418; font-size:.72rem; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }
.report-summary h3 { margin:.45rem 0 .8rem; color:#431953; font:500 2rem/1.1 Georgia,serif; }
.report-summary p { margin:0; color:#715e74; }
.report-summary blockquote { display:grid; align-content:center; color:white; background:linear-gradient(145deg,#421555,#200729); font:italic 500 clamp(1.25rem,2.2vw,1.75rem)/1.45 Georgia,serif; }
.report-section-heading h2 { font-size:clamp(2rem,4vw,3.4rem); }
.system-card-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.8rem; }
.system-card { min-height:16rem; padding:1.25rem; border:1px solid rgba(77,34,92,.15); background:linear-gradient(155deg,#fff,#faf5fc); }
.system-card>span { display:inline-grid; place-items:center; width:2.2rem; height:2.2rem; border:1px solid var(--tool-gold); border-radius:50%; color:#7a5313; font:700 .73rem Georgia,serif; }
.system-card h3 { margin:1.25rem 0 .45rem; color:#4b1d5b; font:600 1.18rem/1.15 Georgia,serif; }
.system-card strong { display:block; margin-bottom:.55rem; color:#a56b11; font-size:.78rem; letter-spacing:.04em; }
.system-card p { margin:0; color:#6e5b72; font-size:.86rem; }
.weekly-results { margin-top:4rem; }
.week-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.week-card { overflow:hidden; border:1px solid rgba(75,25,94,.17); background:white; }
.week-card header { padding:1.25rem; color:white; background:linear-gradient(135deg,#4b185c,#27092f); }
.week-card header span { color:var(--tool-gold-light); font-size:.72rem; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }
.week-card h3 { margin:.45rem 0 .25rem; font:500 1.7rem/1.1 Georgia,serif; }
.week-card header p { margin:0; color:#d9ccdd; font-size:.8rem; }
.week-card-body { display:grid; gap:.9rem; padding:1.25rem; }
.week-card-body div { padding-bottom:.9rem; border-bottom:1px solid rgba(75,25,94,.1); }
.week-card-body div:last-child { border:0; padding-bottom:0; }
.week-card-body span { display:block; margin-bottom:.2rem; color:#9a6613; font-size:.68rem; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.week-card-body p { margin:0; color:#69556d; font-size:.88rem; }
.closing-guidance { display:grid; grid-template-columns:1fr auto; gap:2rem; align-items:center; margin-top:4rem; padding:clamp(1.4rem,4vw,3rem); color:white; background:radial-gradient(circle at 90% 10%,rgba(226,173,67,.18),transparent 17rem),#25082e; }
.closing-guidance h2 { color:white; font-size:clamp(2rem,4vw,3.5rem); }
.closing-guidance>div>p:last-child { max-width:48rem; color:#d9ccdd; }
.closing-guidance .toolkit-kicker { color:var(--tool-gold-light); }
.report-actions { display:grid; gap:.6rem; min-width:min(19rem,100%); }
.report-actions button,.report-actions a { display:grid; place-items:center; color:white; border-color:rgba(255,255,255,.25); background:transparent; text-align:center; }
.report-actions button:first-child { color:#2c0a34; border-color:var(--tool-gold); background:var(--tool-gold-light); }
.report-actions a { color:white; border-color:#9b51b9; background:#71308c; }
.report-disclaimer { margin:1rem 0 0; padding:1rem; color:#756477; background:#faf6fb; font-size:.77rem; }
.toolkit-footer { display:flex; justify-content:space-between; gap:2rem; padding:2rem clamp(1.2rem,6vw,6rem); color:#d9cce0; background:#1c0524; }
.toolkit-footer p { display:grid; margin:0; }
.toolkit-footer strong { color:white; font:600 1rem Georgia,serif; }
.toolkit-footer span { font-size:.76rem; }
.toolkit-footer div { display:flex; gap:1.2rem; color:var(--tool-gold-light); font-size:.8rem; }
.fortune-toolkit { --tool-plum:#170808; --tool-ink:#f8efdf; color:var(--tool-ink); background:radial-gradient(circle at 85% 8%,rgba(120,34,18,.35),transparent 30rem),radial-gradient(circle at 10% 25%,rgba(226,173,67,.12),transparent 25rem),#050505; }
.fortune-toolkit .toolkit-header { border-color:rgba(226,173,67,.27); background:rgba(5,5,5,.94); }
.fortune-toolkit .toolkit-brand strong,.fortune-toolkit .toolkit-header nav { color:#f6e7c7; }
.fortune-toolkit .toolkit-brand small { color:var(--tool-gold-light); }
.fortune-toolkit .toolkit-intro h1 { color:white; }
.fortune-toolkit .toolkit-intro h1 em { color:var(--tool-gold-light); }
.fortune-toolkit .toolkit-lead { color:#c8baaa; }
.fortune-toolkit .system-orbit { border-color:rgba(226,173,67,.25); background:linear-gradient(145deg,rgba(40,28,19,.96),rgba(16,12,10,.94)); box-shadow:0 2rem 6rem rgba(0,0,0,.55); }
.fortune-toolkit .system-orbit span { color:#f8eaca; border-color:rgba(226,173,67,.22); background:rgba(255,255,255,.03); }
.fortune-toolkit .alignment-form { color:#28172d; }
.fortune-toolkit .forecast-report { color:#28172d; }
@media(max-width:1050px){.toolkit-intro,.toolkit-workspace{grid-template-columns:1fr}.method-panel{position:static}.system-card-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:740px){.toolkit-header{align-items:flex-start}.toolkit-header nav{display:none}.toolkit-brand strong{font-size:.78rem}.toolkit-intro{padding-top:2.2rem}.system-orbit{grid-template-columns:1fr 1fr;padding:.8rem;border-radius:1.3rem}.system-orbit span{min-height:4.1rem;padding:.65rem;font-size:.76rem}.field-grid,.report-summary,.week-card-grid,.closing-guidance{grid-template-columns:1fr}.form-actions{align-items:stretch;flex-direction:column}.calculate-button{min-height:3.8rem}.report-header{align-items:flex-start;flex-direction:column}.alignment-score{width:100%}.system-card-grid{grid-template-columns:1fr}.system-card{min-height:0}.forecast-report{margin-right:.6rem;margin-left:.6rem}.toolkit-footer{align-items:flex-start;flex-direction:column}.toolkit-footer div{flex-direction:column;gap:.4rem}}
@media print{.toolkit-header,.toolkit-intro,.toolkit-workspace,.toolkit-footer,.report-actions{display:none!important}.toolkit-page{background:white}.forecast-report{margin:0;padding:0;border:0;box-shadow:none}.system-card-grid{grid-template-columns:repeat(2,1fr)}.week-card-grid{grid-template-columns:1fr}.week-card{break-inside:avoid}.report-disclaimer{break-inside:avoid}}
