:root{
  --cream:#f3eddf;
  --cream-2:#ebe2d2;
  --paper:#fbf8f1;
  --ink:#173d34;
  --ink-2:#2f5148;
  --rust:#b85f45;
  --rust-dark:#984934;
  --line:rgba(23,61,52,.17);
  --soft:rgba(23,61,52,.07);
  --shadow:0 18px 50px rgba(31,55,47,.10);
  --radius:24px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",sans-serif;line-height:1.55}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
.topbar{max-width:1200px;margin:0 auto;padding:28px 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:11px;font-weight:800;letter-spacing:.07em;font-size:.92rem}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--ink);color:var(--cream);font-size:.8rem}.back-link{font-size:.9rem;font-weight:600;border-bottom:1px solid var(--ink)}
main{max-width:1200px;margin:0 auto;padding:0 24px}.hero{padding:78px 0 52px;max-width:980px}.eyebrow,.step-label{font-size:.75rem;letter-spacing:.14em;font-weight:800;color:var(--rust)}
h1{font-family:"Playfair Display",serif;font-size:clamp(3rem,7vw,6.7rem);line-height:.96;letter-spacing:-.045em;margin:15px 0 25px;font-weight:600}h1 em{color:var(--rust);font-weight:600}.hero-copy{font-size:clamp(1.05rem,2vw,1.35rem);max-width:760px;color:var(--ink-2);margin:0}.hero-pills{display:flex;flex-wrap:wrap;gap:9px;margin-top:28px}.hero-pills span{padding:9px 13px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.25);font-size:.82rem;font-weight:600}
.workspace{display:grid;grid-template-columns:1.04fr .96fr;gap:20px;align-items:start}.panel,.results{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.input-panel{padding:30px}.panel-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:28px}h2{font-family:"Playfair Display",serif;font-size:clamp(2rem,3vw,3rem);line-height:1.08;letter-spacing:-.025em;margin:7px 0 0}.text-button{border:0;background:none;color:var(--rust);font-weight:700;cursor:pointer;padding:5px 0;border-bottom:1px solid currentColor;white-space:nowrap}
form label{display:block;font-size:.86rem;font-weight:700;margin:19px 0 8px}form label span{color:var(--rust)}textarea,input,select{width:100%;border:1px solid var(--line);background:#fffdfa;color:var(--ink);border-radius:14px;outline:none;transition:.2s border,.2s box-shadow}textarea{min-height:205px;resize:vertical;padding:16px}input,select{height:48px;padding:0 14px}textarea:focus,input:focus,select:focus{border-color:var(--rust);box-shadow:0 0 0 3px rgba(184,95,69,.10)}.char-row{display:flex;justify-content:space-between;gap:15px;color:#6b7d77;font-size:.72rem;margin-top:6px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.primary-button{border:0;border-radius:999px;background:var(--ink);color:#fff;padding:15px 21px;font-weight:800;display:inline-flex;justify-content:center;align-items:center;gap:35px;cursor:pointer;transition:.2s transform,.2s background}.primary-button:hover{background:var(--rust-dark);transform:translateY(-1px)}form .primary-button{width:100%;margin-top:24px}.form-note{font-size:.72rem;color:#6b7d77;margin:10px 4px 0}
.preview-panel{min-height:660px;padding:34px;position:sticky;top:20px;overflow:hidden}.preview-panel p{color:var(--ink-2);max-width:480px}.preview-art{height:330px;position:relative;display:grid;place-items:center;margin-bottom:18px}.center-node{width:90px;height:90px;border-radius:50%;background:var(--rust);color:white;display:grid;place-items:center;font-family:"Playfair Display",serif;font-size:1.8rem;z-index:3;box-shadow:0 15px 35px rgba(184,95,69,.25)}.orbit{position:absolute;border:1px solid rgba(23,61,52,.19);border-radius:50%}.orbit-one{width:245px;height:245px}.orbit-two{width:330px;height:330px;border-style:dashed}.node{position:absolute;background:var(--cream);border:1px solid var(--line);padding:7px 12px;border-radius:999px;font-size:.72rem;font-weight:700;z-index:4}.n1{top:25px}.n2{right:28px;top:140px}.n3{bottom:20px}.n4{left:18px;top:150px}
.results{grid-column:2;padding:28px}.results-head{display:flex;justify-content:space-between;gap:20px;align-items:start}.mode-badge{font-size:.7rem;padding:6px 10px;border-radius:999px;background:var(--cream-2);font-weight:800;white-space:nowrap}.score-card{display:grid;grid-template-columns:110px 1fr;gap:20px;align-items:center;margin:25px 0;padding:18px;border-radius:18px;background:var(--soft)}.score-ring{width:100px;height:100px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--rust) var(--score),var(--cream-2) 0);position:relative}.score-ring:after{content:"";position:absolute;width:74px;height:74px;background:var(--paper);border-radius:50%}.score-ring strong{z-index:2;font-size:1.4rem}.score-card h3{margin:0 0 4px}.score-card p{margin:0;color:var(--ink-2);font-size:.9rem}.result-section{border-top:1px solid var(--line);padding-top:22px;margin-top:22px}.result-section h3{font-size:.8rem;letter-spacing:.12em;color:var(--rust);text-transform:uppercase;margin:0 0 13px}.split-list{display:grid;grid-template-columns:1fr 1fr;gap:13px}.mini-card{padding:16px;border:1px solid var(--line);border-radius:16px}.mini-card strong{display:block;margin-bottom:8px}.mini-card ul{margin:0;padding-left:18px}.mini-card li{margin:7px 0;font-size:.86rem}.workflow-list{display:grid;gap:10px}.workflow-step{display:grid;grid-template-columns:34px 1fr auto;gap:12px;padding:13px;border:1px solid var(--line);border-radius:15px;align-items:start}.step-num{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--cream);font-weight:800}.workflow-step strong{display:block}.workflow-step p{margin:3px 0 0;font-size:.84rem;color:var(--ink-2)}.owner{font-size:.65rem;font-weight:800;padding:5px 8px;border-radius:999px;background:var(--soft)}.tools-grid{display:grid;gap:9px}.tool-card{padding:14px;border-left:3px solid var(--rust);background:var(--soft);border-radius:0 12px 12px 0}.tool-card strong{display:block}.tool-card span{font-size:.75rem;color:var(--rust);font-weight:800}.tool-card p{margin:4px 0 0;font-size:.84rem;color:var(--ink-2)}.impact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.impact-card{background:var(--soft);padding:13px;border-radius:14px}.impact-card strong{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--rust)}.impact-card p{font-size:.8rem;margin:6px 0 0}.roadmap{display:grid;gap:10px}.roadmap-item{padding:14px 0;border-bottom:1px solid var(--line)}.roadmap-item:last-child{border:0}.roadmap-item strong{display:block}.roadmap-item p{margin:2px 0 8px;font-size:.84rem;color:var(--ink-2)}.roadmap-item ul{margin:0;padding-left:18px;font-size:.82rem}.next-step{padding:18px;background:var(--ink);color:var(--cream);border-radius:16px}.next-step strong{display:block;color:#fff;margin-bottom:5px}.caution{font-size:.74rem;color:#6b7d77}.result-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}.secondary-button{border:1px solid var(--line);background:transparent;color:var(--ink);border-radius:999px;padding:10px 14px;font-weight:700;cursor:pointer}.secondary-button:hover{background:var(--cream)}
.loading-card{grid-column:2;padding:34px;min-height:420px}.loading-pulse{width:65px;height:65px;border-radius:50%;background:var(--rust);margin-bottom:45px;animation:pulse 1.4s infinite}.loading-lines{display:grid;gap:10px;margin-top:30px}.loading-lines i{height:9px;border-radius:9px;background:var(--cream-2);animation:shimmer 1.4s infinite}.loading-lines i:nth-child(2){width:80%}.loading-lines i:nth-child(3){width:60%}@keyframes pulse{50%{transform:scale(.82);opacity:.55}}@keyframes shimmer{50%{opacity:.4}}
.cta{margin:75px 0 28px;padding:55px;border-radius:30px;background:var(--rust);color:#fff}.cta .step-label{color:#f7dacf}.cta h2{max-width:650px}.cta p{max-width:650px;font-size:1.05rem}.cta-button{margin-top:12px;background:var(--ink)}footer{max-width:1200px;margin:0 auto;padding:30px 24px 45px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:15px;font-size:.8rem;font-weight:700}
.error-card{grid-column:2;padding:30px}.error-card h2{margin-bottom:10px}.error-card p{color:var(--ink-2)}
@media(max-width:900px){.workspace{grid-template-columns:1fr}.preview-panel,.results,.loading-card,.error-card{grid-column:1;position:static}.preview-panel{min-height:auto}.impact-grid{grid-template-columns:1fr}.hero{padding-top:58px}}
@media(max-width:620px){.topbar{padding:19px 16px}.back-link{font-size:.78rem}.brand{font-size:.8rem}main{padding:0 16px}.hero{padding:48px 0 36px}h1{font-size:clamp(3rem,15vw,4.6rem)}.input-panel,.preview-panel,.results,.loading-card,.error-card{padding:22px;border-radius:19px}.panel-heading{display:block}.text-button{margin-top:10px}.field-grid,.split-list{grid-template-columns:1fr}.workflow-step{grid-template-columns:32px 1fr}.owner{grid-column:2;width:max-content}.preview-art{height:250px}.orbit-one{width:190px;height:190px}.orbit-two{width:250px;height:250px}.n2{right:0}.n4{left:0}.score-card{grid-template-columns:1fr;text-align:center}.score-ring{margin:auto}.cta{padding:35px 23px;margin-top:45px}footer{padding:24px 16px 35px;display:block}footer span{display:block;margin:5px 0}}
