:root{--ref-field:#120a0a;--ref-field-line:rgba(255,170,82,.28);--ref-success:#ffbd49;--ref-purple:#b477f2}
[hidden]{display:none!important}
.site-footer{width:100%;margin-top:22px;padding:18px 16px 20px;border-top:1px solid rgba(255,139,30,.24);background:linear-gradient(90deg,#080303,#1a0707,#080303);text-align:center}
.site-footer .footer-line{margin:2px 0;color:#f7e8dc;font-size:.82rem;line-height:1.55;font-weight:750}
.site-footer .footer-line.secondary{color:#f7e8dc;font-size:.82rem;font-weight:750}

.ref-guided-main,.ref-freeflow-main{overflow:visible;padding-bottom:30px}
.ref-guided-progress{width:min(calc(100% - 28px),1120px);display:grid;grid-template-columns:auto minmax(180px,1fr) auto;gap:18px;align-items:center;margin:4px auto 18px;padding:12px 16px;border:1px solid rgba(255,144,43,.22);border-radius:15px;background:rgba(12,8,8,.72)}
.ref-progress-label{margin:0;color:#fff;font-size:.78rem;font-weight:850;white-space:nowrap}
.ref-progress-track{height:8px;overflow:hidden;border-radius:999px;background:#281713;box-shadow:inset 0 1px 3px rgba(0,0,0,.55)}
.ref-progress-fill{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ff6b18,#ffc248);box-shadow:0 0 12px rgba(255,111,24,.45);transition:width .28s ease}
.ref-progress-counts{margin:0;color:#cfc0b9;font-size:.72rem;white-space:nowrap}

.ref-journey-card{appearance:none;text-align:left;color:#fff;font:inherit;cursor:pointer;transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease,opacity .28s ease;isolation:isolate}
.ref-journey-card::before{content:"";position:absolute;z-index:3;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 25%,rgba(255,255,255,.08) 44%,transparent 62%);transform:translateX(-120%);transition:transform .7s ease}
.ref-journey-card:hover::before,.ref-journey-card:focus-visible::before,.ref-journey-card.is-active::before{transform:translateX(120%)}
.ref-journey-card:hover,.ref-journey-card:focus-visible{transform:translateY(-7px);border-color:#ffb648;box-shadow:0 20px 38px rgba(0,0,0,.42),0 0 20px rgba(255,117,25,.18)}
.ref-journey-card.is-active{z-index:5;transform:translateY(-12px) scale(1.025);border-color:#ffc24d;box-shadow:0 24px 50px rgba(0,0,0,.5),0 0 28px rgba(255,112,24,.3)}
.ref-journey-card.is-active.purple{border-color:#bf83ff;box-shadow:0 24px 50px rgba(0,0,0,.5),0 0 28px rgba(151,87,226,.28)}
.ref-journey-card.is-active .ref-art-svg{transform:scale(1.045)}
.ref-journey-card .ref-art-svg{transition:transform 8s ease;transform-origin:center}
.ref-journey-card.is-answered{border-color:rgba(255,190,68,.88)}
.ref-journey-card.is-skipped{opacity:.68;border-style:dashed}
.ref-card-status{display:inline-flex;align-items:center;gap:5px;margin:12px 12px 0;color:#c8bab3;font-size:.62rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.ref-card-status::before{content:"○";color:#b99a86}
.ref-journey-card.is-answered .ref-card-status{color:#ffd386}.ref-journey-card.is-answered .ref-card-status::before{content:"✓";color:#ffc24d}
.ref-journey-card.is-skipped .ref-card-status::before{content:"—";color:#b477f2}

.ref-story-editor,.ref-story-review,.ref-freeflow-form,.ref-freeflow-review{width:min(calc(100% - 28px),1120px);margin:18px auto 0;padding:clamp(18px,3vw,30px);border:1px solid rgba(255,144,43,.34);border-radius:20px;background:linear-gradient(145deg,rgba(45,15,12,.88),rgba(12,8,10,.94));box-shadow:0 24px 55px rgba(0,0,0,.36),inset 0 1px rgba(255,255,255,.035);animation:ref-panel-in .32s ease both}
.ref-editor-head{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:start;margin-bottom:16px}
.ref-editor-kicker{margin:0 0 7px;color:#ff9b2a;font-size:.68rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.ref-editor-head h2,.ref-freeflow-form h2,.ref-story-review h2,.ref-freeflow-review h2{margin:0;font-size:clamp(1.45rem,2.6vw,2.35rem);line-height:1.05}
.ref-editor-prompt{margin:9px 0 0;color:#f2e5dd;font-size:1rem;line-height:1.55}
.ref-editor-helper{margin:6px 0 0;color:#bfaea5;font-size:.82rem;line-height:1.55}
.ref-editor-position{display:grid;place-items:center;min-width:64px;height:42px;border:1px solid rgba(255,171,66,.28);border-radius:999px;color:#ffc15c;font-size:.72rem;font-weight:850}
.ref-field-label{display:grid;gap:8px;color:#ffe6d3;font-size:.76rem;font-weight:800}
.ref-field-label input,.ref-field-label textarea,.ref-field-label select{width:100%;min-height:48px;border:1px solid var(--ref-field-line);border-radius:13px;background:var(--ref-field);color:#fff;padding:12px 14px;outline:0;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}
.ref-field-label textarea{min-height:190px;resize:vertical;line-height:1.65}
.ref-field-label input:focus,.ref-field-label textarea:focus,.ref-field-label select:focus{border-color:#ffad3e;background:#160c0b;box-shadow:0 0 0 3px rgba(255,141,31,.15)}
.ref-field-label [aria-invalid="true"]{border-color:#ff7659;box-shadow:0 0 0 3px rgba(255,91,61,.13)}
.ref-field-meta{display:flex;justify-content:space-between;gap:12px;color:#ae9d94;font-size:.68rem;font-weight:600}
.ref-field-error{min-height:1.1em;color:#ff9a83;font-size:.7rem;font-weight:750}
.ref-editor-actions,.ref-review-actions,.ref-freeflow-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:18px}
.ref-action{min-height:46px;padding:10px 17px;border:1px solid rgba(255,157,52,.36);border-radius:12px;background:rgba(255,255,255,.025);color:#fff;font-weight:800;cursor:pointer;transition:.2s ease}
.ref-action:hover,.ref-action:focus-visible{transform:translateY(-2px);border-color:#ffb648;background:rgba(255,124,24,.08)}
.ref-action.primary{background:linear-gradient(135deg,#ff701b,#bd4311);border-color:#ff9c31;box-shadow:0 9px 24px rgba(255,83,17,.2)}
.ref-action.purple{background:linear-gradient(135deg,#7043a0,#432764);border-color:#a974df}
.ref-action.ghost{color:#d8c9c2}
.ref-action[disabled]{opacity:.45;cursor:not-allowed;transform:none}
.ref-editor-spacer{flex:1}
.ref-status-live{margin:12px 0 0;color:#ffd594;font-size:.74rem;min-height:1.2em}

.ref-review-list{display:grid;gap:9px;margin:18px 0}
.ref-review-item{display:grid;grid-template-columns:minmax(150px,.34fr) 1fr auto;gap:14px;align-items:start;padding:13px 14px;border:1px solid rgba(255,153,50,.18);border-radius:13px;background:rgba(255,255,255,.018)}
.ref-review-item h3{margin:0;font-size:.85rem}.ref-review-item p{margin:0;color:#d4c5bd;font-size:.78rem;line-height:1.55;white-space:pre-wrap}.ref-review-item .ref-empty{color:#9d8c84;font-style:italic}
.ref-review-edit{min-height:36px;padding:7px 11px;border:1px solid rgba(255,161,60,.28);border-radius:9px;background:transparent;color:#ffc46b;cursor:pointer;font-size:.7rem;font-weight:800}
.ref-responsibility{margin:20px 0 0;padding:16px 18px;border-left:3px solid #ff8d23;background:linear-gradient(90deg,rgba(255,126,27,.08),transparent);border-radius:0 13px 13px 0}
.ref-responsibility h3{margin:0 0 9px;font-size:.9rem}.ref-responsibility ul{margin:0;padding-left:19px;color:#cfc0b9;font-size:.76rem;line-height:1.65}
.ref-agreement{display:flex;gap:11px;align-items:flex-start;margin-top:16px;color:#f4e5dd;font-size:.78rem;line-height:1.55;cursor:pointer}.ref-agreement input{width:20px;height:20px;margin:1px 0 0;accent-color:#ff7a1a;flex:0 0 auto}

.ref-freeflow-main{padding-inline:0}
.ref-freeflow-art{height:360px}
.ref-freeflow-features{margin-top:-38px}
.ref-freeflow-form{margin-top:14px}
.ref-form-intro{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:20px}.ref-form-intro p{max-width:510px;margin:0;color:#bfaea5;font-size:.78rem;line-height:1.55}
.ref-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.ref-form-grid .wide{grid-column:1/-1}
.ref-story-textarea{min-height:260px!important}
.ref-memory-note{display:flex;align-items:center;gap:8px;margin:10px 0 0;color:#ac9b93;font-size:.68rem}.ref-memory-note::before{content:"◌";color:#ff9a28}
.ref-freeflow-error{margin:12px 0 0;color:#ff9a83;font-size:.74rem;min-height:1.2em}
.ref-freeflow-review dl{display:grid;grid-template-columns:150px 1fr;gap:9px 14px;margin:18px 0}.ref-freeflow-review dt{color:#ffb85a;font-size:.72rem;font-weight:850}.ref-freeflow-review dd{margin:0;color:#ddcec6;font-size:.78rem;line-height:1.6;white-space:pre-wrap}

@keyframes ref-panel-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes ref-active-glow{0%,100%{filter:saturate(1.05)}50%{filter:saturate(1.15) brightness(1.03)}}
.ref-journey-card.is-active .ref-art-svg{animation:ref-active-glow 5s ease-in-out infinite}

@media(max-width:900px){
.ref-guided-progress{grid-template-columns:1fr auto}.ref-progress-track{grid-column:1/-1;grid-row:2}.ref-progress-counts{grid-column:2}.ref-form-intro{display:block}.ref-form-intro p{margin-top:8px}.ref-review-item{grid-template-columns:1fr auto}.ref-review-item p{grid-column:1/-1}
}
@media(max-width:760px){
.site-footer{margin-top:14px}.site-footer .footer-line{font-size:.74rem}
.ref-guided-progress{width:calc(100% - 20px);gap:9px 12px;padding:11px 12px}.ref-progress-label,.ref-progress-counts{font-size:.68rem}
.ref-story-editor,.ref-story-review,.ref-freeflow-form,.ref-freeflow-review{width:calc(100% - 20px);padding:18px 15px;border-radius:16px}.ref-editor-head{grid-template-columns:1fr}.ref-editor-position{justify-self:start}.ref-editor-actions,.ref-review-actions,.ref-freeflow-actions{display:grid;grid-template-columns:1fr 1fr}.ref-editor-spacer{display:none}.ref-action{width:100%;min-height:48px}.ref-action.primary{grid-column:1/-1}.ref-form-grid{grid-template-columns:1fr}.ref-form-grid .wide{grid-column:auto}.ref-freeflow-art{height:300px}.ref-freeflow-features{margin-top:-20px}.ref-freeflow-review dl{grid-template-columns:1fr}.ref-freeflow-review dd{margin-bottom:8px}
}
@media(max-width:430px){
.ref-editor-actions,.ref-review-actions,.ref-freeflow-actions{grid-template-columns:1fr}.ref-action.primary{grid-column:auto}.ref-review-item{grid-template-columns:1fr}.ref-review-edit{justify-self:start}.ref-guided-progress{grid-template-columns:1fr}.ref-progress-counts{grid-column:1;white-space:normal}.ref-progress-track{grid-column:1}
}
@media(prefers-reduced-motion:reduce){
.ref-progress-fill,.ref-journey-card,.ref-journey-card::before,.ref-journey-card .ref-art-svg,.ref-action{transition:none!important;animation:none!important}.ref-story-editor,.ref-story-review,.ref-freeflow-form,.ref-freeflow-review{animation:none!important}.ref-journey-card:hover,.ref-journey-card:focus-visible,.ref-journey-card.is-active{transform:none}
}
