:root{--red:#A72920;--red-dark:#852018;--text:#222;--muted:#666;--bg:#f5f5f5;--card:#fff;--line:#ddd;--soft:#fafafa;--radius:14px}
*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:var(--text);background:var(--bg);line-height:1.45}.page-shell{width:min(1460px,calc(100% - 48px));margin:28px auto 40px}.hero{background:var(--red);color:#fff;border-radius:16px;padding:34px 46px;box-shadow:0 4px 12px rgba(0,0,0,.12);margin-bottom:28px}.hero-title{font-size:clamp(2rem,3.5vw,3.4rem);font-weight:800;line-height:1.05}.hero-subtitle{font-size:1.15rem;margin-top:12px}.layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(340px,.95fr);gap:24px;align-items:start}.form-column{display:grid;gap:18px}.preview-column{position:sticky;top:18px}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 3px 12px rgba(0,0,0,.05)}.step-card{padding:24px 30px}.step-card h2,.preview-card h2{margin:0;color:var(--red);font-size:1.65rem}.lead{margin:5px 0 18px;color:var(--muted)}label{display:block;font-weight:700;margin:15px 0 7px}input,select{width:100%;font:inherit;border:1px solid #c8c8c8;border-radius:9px;background:#fff;padding:11px 13px;color:var(--text)}input:focus,select:focus{outline:3px solid rgba(167,41,32,.12);border-color:var(--red)}.or{font-size:.9rem;color:var(--muted);margin:8px 0}.field-help{font-size:.86rem;color:var(--muted);margin:7px 0 0}.choice-grid{display:grid;gap:12px}.choice-grid.four{grid-template-columns:repeat(4,1fr)}.choice-grid.three{grid-template-columns:repeat(3,1fr)}button{font:inherit}.choice,.style-choice{border:1px solid #cfcfcf;background:#fff;border-radius:9px;cursor:pointer;transition:.15s ease}.choice{padding:14px 10px;font-weight:650}.choice:hover,.style-choice:hover{border-color:#aaa}.choice.active,.style-choice.active{border:2px solid var(--red);background:#fff7f6;color:var(--red)}.style-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.style-choice{padding:18px 14px;min-height:128px;display:flex;flex-direction:column;justify-content:center;gap:7px;text-align:center}.style-choice strong{font-size:1rem}.style-choice span{font-size:.88rem;color:var(--muted)}.two-col-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.actions{display:flex;gap:12px;margin-top:20px}.btn{border:0;border-radius:9px;padding:12px 18px;font-weight:750;cursor:pointer}.primary{background:var(--red);color:#fff}.primary:hover{background:var(--red-dark)}.secondary{background:#eee;color:#222}.special-duration{margin-top:14px;padding:14px;border-radius:10px;background:var(--soft);border:1px solid var(--line)}.hidden{display:none!important}.preview-card{padding:24px}.preview-info{margin:18px 0 20px;border:1px solid #8ab8f6;background:#f5f9ff;border-radius:9px;padding:15px;display:flex;gap:10px;align-items:flex-start}.preview-info span{font-size:.93rem}.preview-list{border:1px solid #e2e2e2;border-radius:10px;overflow:hidden}.preview-item{display:grid;grid-template-columns:36px 1fr;gap:10px;padding:18px 14px;border-bottom:1px solid #e7e7e7}.preview-item:last-child{border-bottom:0}.preview-item .icon{font-size:1.2rem}.preview-item strong{display:block;margin-bottom:4px}.preview-item span{display:block;color:var(--muted);font-size:.89rem}.preview-note{margin-top:20px;padding:16px;border:1px solid #efcf75;background:#fffaf0;border-radius:9px;display:grid;grid-template-columns:28px 1fr;gap:8px}.preview-note strong{display:block;margin-bottom:4px}.preview-note span{display:block;color:#444;font-size:.89rem}.result{margin-top:24px;padding:26px;border-top:5px solid var(--red)}.result h2{color:var(--red);margin-top:0}.meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.pill{background:#eee;border-radius:999px;padding:5px 10px;font-size:.86rem}.result-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.result-block{padding:16px;border:1px solid var(--line);border-radius:10px;background:var(--soft)}.result-block h3{margin-top:0}.result ol,.result ul{padding-left:1.25rem}footer{color:var(--muted);font-size:.88rem;padding:22px 2px}
@media(max-width:1000px){.layout{grid-template-columns:1fr}.preview-column{position:static}.preview-card{display:none}}
@media(max-width:760px){.page-shell{width:min(100% - 22px,1460px);margin-top:12px}.hero{padding:24px 22px}.step-card{padding:20px}.choice-grid.four,.choice-grid.three,.style-grid,.two-col-fields,.result-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.choice-grid.four,.choice-grid.three,.style-grid,.two-col-fields,.result-grid{grid-template-columns:1fr}.actions{flex-direction:column}.btn{width:100%}}
.result-heading{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;flex-wrap:wrap}.result-heading p{margin:.25rem 0 0;color:var(--muted)}.research-grid{display:grid;grid-template-columns:.85fr 1.65fr;gap:18px}.block-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}.block-title-row h3{margin:0}.block-title-row p{margin:4px 0 0;color:var(--muted);font-size:.9rem}.btn.small{padding:9px 12px;font-size:.88rem;white-space:nowrap}.copied{outline:2px solid rgba(167,41,32,.22)}.query-list{display:grid;gap:9px}.query-copy{width:100%;border:1px solid var(--line);background:#fff;border-radius:9px;padding:11px 12px;text-align:left;display:flex;justify-content:space-between;gap:10px;align-items:center;cursor:pointer;color:var(--text)}.query-copy:hover{border-color:var(--red);background:#fff9f8}.query-copy span{overflow-wrap:anywhere}.query-copy strong{color:var(--red);font-size:1.05rem}.prompt-output{width:100%;min-height:620px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;font-size:.86rem;line-height:1.5;background:#fff;border:1px solid var(--line);border-radius:9px;padding:14px}.workflow-note{margin-top:18px;padding:15px 17px;border-radius:10px;background:#fffaf0;border:1px solid #efcf75}.workflow-note strong{display:block;margin-bottom:4px}
@media(max-width:1000px){.research-grid{grid-template-columns:1fr}.prompt-output{min-height:520px}}
@media(max-width:620px){.block-title-row{flex-direction:column}.btn.small{width:100%}.prompt-output{min-height:460px}}
