
:root{
  --orange:#f4a340;
  --orange-soft:#fff6e8;
  --navy:#17324d;
  --text:#1f2937;
  --muted:#6b7280;
  --line:#e5e7eb;
  --bg:#f7f8fb;
  --green-soft:#edf8f0;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif}
body{min-height:100vh}
button,textarea{font:inherit}
button{cursor:pointer}
.app-shell{max-width:760px;margin:0 auto;padding:18px 14px 36px}
.hero{padding:8px 4px 16px}
.brand-row{display:flex;align-items:center;gap:12px}
.brand-mark{font-size:36px}
.hero h1{margin:0;color:var(--navy);font-size:1.55rem}
.hero p{margin:5px 0 0;color:var(--muted)}
.card{background:#fff;border:1px solid #edf0f3;border-radius:20px;padding:18px;margin:14px 0;box-shadow:0 8px 28px rgba(15,23,42,.06)}
.hidden{display:none!important}
.eyebrow{display:inline-block;font-size:.8rem;font-weight:800;color:#a85c00;background:var(--orange-soft);padding:5px 9px;border-radius:999px}
.question-card h2{margin:12px 0 2px;font-size:1.25rem;line-height:1.45}
.journal-card label{display:block;font-weight:800;margin-bottom:10px;color:var(--navy)}
textarea{width:100%;min-height:210px;resize:vertical;border:1px solid #d9dee5;border-radius:16px;padding:15px 16px;font-size:17px;line-height:1.65;outline:none;background:#fff}
textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(244,163,64,.12)}
.primary-button,.secondary-button,.save-record-button{width:100%;border:0;border-radius:14px;padding:13px 16px;font-weight:800;margin-top:12px}
.primary-button,.save-record-button{background:var(--orange);color:white}
.secondary-button{background:var(--navy);color:white}
button:disabled{opacity:.65;cursor:not-allowed}
.hint{font-size:.88rem;color:var(--muted);line-height:1.55;margin:10px 2px 0}
.organized-entry{line-height:1.65}
.entry-title{color:var(--navy);margin:0 0 16px;font-size:1.45rem}
.result-section{margin:16px 0;padding:0 2px}
.result-section h4{margin:0 0 7px;color:var(--navy);font-size:1rem}
.result-section p{margin:0}
.tag-list{display:flex;flex-wrap:wrap;gap:8px}
.tag{display:inline-block;background:#f2f4f7;border-radius:999px;padding:6px 10px;font-size:.86rem;color:#475569}
blockquote{margin:12px 0 0;padding:0;line-height:1.7}
.app-message{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);opacity:0;z-index:9999;max-width:calc(100vw - 32px);padding:12px 16px;border-radius:12px;background:#111827;color:#fff;box-shadow:0 10px 30px rgba(0,0,0,.18);transition:.25s ease}
.app-message.visible{opacity:1;transform:translate(-50%,0)}
.app-message-warning{background:#92400e}
.app-message-info{background:#1e3a5f}
.completion-message{position:fixed;inset:0;background:rgba(15,23,42,.45);z-index:10000;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:24px;text-align:center}
.completion-message>*{max-width:460px}
.completion-message{color:var(--text)}
.completion-message h3,.completion-message p,.completion-message button,.completion-icon{background:#fff}
.completion-icon{padding:28px 28px 0;border-radius:24px 24px 0 0;font-size:46px;width:100%}
.completion-message h3{margin:0;padding:8px 28px 4px;width:100%}
.completion-message p{margin:0;padding:4px 28px;width:100%;line-height:1.6}
.completion-message button{border:0;background:var(--orange);color:#fff;font-weight:800;border-radius:0 0 24px 24px;padding:14px 28px;margin:0;width:100%}
.completion-thanks{padding-bottom:18px!important}
@media(max-width:600px){
  .app-shell{padding:12px 10px 28px}
  .card{border-radius:17px;padding:15px}
  textarea{min-height:230px}
  .hero h1{font-size:1.35rem}
}


/* Sunflower Growth Engine V2.1 Reflection additions */
.reflection-header{
    margin:22px 0 12px;
    padding:18px;
    border-radius:18px;
    background:linear-gradient(135deg,#fff8ec,#fff);
    border:1px solid #f2dfbf;
}
.reflection-header h3{margin:8px 0 6px;font-size:1.28rem}
.reflection-header p{margin:0;color:#6b7280;font-size:.94rem}
.reflection-badge{
    display:inline-block;
    background:#f4a340;
    color:#fff;
    padding:5px 10px;
    border-radius:999px;
    font-size:.82rem;
    font-weight:700;
}
.reflection-section{
    border-left:3px solid #f4a340;
    padding-left:14px;
}
.reflection-section.subtle{
    opacity:.85;
}
.growth-highlight,
.growth-action{
    margin:16px 0;
    padding:17px;
    border-radius:16px;
}
.growth-highlight{
    background:#fff8e8;
    border:1px solid #f6dfad;
}
.growth-action{
    background:#edf8f0;
    border:1px solid #cce7d2;
}
.growth-highlight h4,
.growth-action h4{
    margin:0 0 8px;
}
.reflection-questions{
    margin:8px 0 0;
    padding-left:20px;
}
.reflection-questions li{
    margin:8px 0;
    line-height:1.55;
}
.legacy-details{
    margin:20px 0;
    border:1px solid #e5e7eb;
    border-radius:14px;
    padding:12px 14px;
    background:#fafafa;
}
.legacy-details summary{
    cursor:pointer;
    font-weight:700;
    color:#4b5563;
}
@media(max-width:600px){
    .reflection-header,
    .growth-highlight,
    .growth-action{
        padding:15px;
    }
}
