.hansen-pca{
  --bg:#f6efe4;
  --panel:#fffaf2;
  --card:#ffffff;
  --card-2:#fff7ea;
  --text:#213547;
  --muted:#4b5563;
  --soft:#6b7280;
  --line:#eadfc8;
  --primary:#ffb703;
  --primary-text:#3b2a00;
  --secondary:#8ecae6;
  --secondary-text:#173b4d;
  --accent:#fb8500;
  --success:#7cc38a;
  --warning:#ffd166;
  --danger:#ef6f6c;
  --shadow:0 10px 30px rgba(166, 123, 53, .10);
  color:var(--text);
  font-family:Arial, sans-serif;
}
.hansen-pca *, .hansen-pca *::before, .hansen-pca *::after{box-sizing:border-box}
.hansen-pca__container{max-width:1180px;margin:24px auto;padding:0 16px}
.hansen-pca__wrap{background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:20px;box-shadow:var(--shadow);background-image:radial-gradient(circle at top right, rgba(255,183,3,.18), transparent 22%),radial-gradient(circle at top left, rgba(142,202,230,.20), transparent 26%),linear-gradient(180deg,#fff9f0,#f6efe4)}
.hansen-pca__card{background:var(--card);border-radius:18px;padding:20px;margin-bottom:16px;border:1px solid rgba(226, 211, 184, .9);box-shadow:0 6px 18px rgba(166, 123, 53, .06)}
.hansen-pca__hero{background:linear-gradient(135deg,#fff8e8 0%, #fff4dc 45%, #eef8fc 100%);border:1px solid #f1ddb0}
.hansen-pca h1,.hansen-pca h2,.hansen-pca h3,.hansen-pca h4{margin:0 0 12px;line-height:1.25;color:#17324a}
.hansen-pca h1{font-size:2rem}
.hansen-pca h2{font-size:1.45rem}
.hansen-pca h3{font-size:1.08rem}
.hansen-pca p,.hansen-pca li{line-height:1.6;color:var(--muted);margin-top:0}
.hansen-pca__input, .hansen-pca textarea, .hansen-pca input, .hansen-pca select{width:100%;border-radius:12px;border:1px solid var(--line);background:#fffdf8;color:var(--text);padding:12px;font-size:15px;outline:none}
.hansen-pca__input:focus, .hansen-pca textarea:focus, .hansen-pca input:focus, .hansen-pca select:focus{border-color:#f4bd3a;box-shadow:0 0 0 3px rgba(255,183,3,.18)}
.hansen-pca textarea{min-height:180px;resize:vertical}
.hansen-pca__btn{border:none;border-radius:12px;padding:11px 15px;font-weight:700;cursor:pointer;font-size:14px;margin:8px 8px 0 0;transition:transform .08s ease, box-shadow .12s ease, opacity .12s ease;box-shadow:0 6px 14px rgba(0,0,0,.06)}
.hansen-pca__btn:hover{transform:translateY(-1px)}
.hansen-pca__btn--primary{background:linear-gradient(180deg,#ffbf1f,#ffb703);color:var(--primary-text)}
.hansen-pca__btn--secondary{background:linear-gradient(180deg,#a9d8eb,#8ecae6);color:var(--secondary-text)}
.hansen-pca__btn--ghost{background:#f6d79a;color:#5b4300}
.hansen-pca__highlight{background:linear-gradient(180deg,#fffaf0,#fff4df);border:1px solid #f2ddb2;border-radius:16px;padding:16px;min-height:92px;box-shadow:inset 0 1px 0 rgba(255,255,255,.7);width:100%;max-width:100%}
.hansen-pca__highlight-title{font-size:.92rem;color:#8a6a18;margin-bottom:6px;font-weight:700}
.hansen-pca__highlight-action{font-size:1.22rem;font-weight:700;color:#17324a;margin-bottom:10px}
.hansen-pca__recommend-grid,.hansen-pca__grid-2,.hansen-pca__grid-3,.hansen-pca__grid-6,.hansen-pca__steps{display:grid;gap:14px}
.hansen-pca__recommend-grid{grid-template-columns:repeat(2,1fr);gap:10px;margin-top:8px}
.hansen-pca__recommend-item{background:#fffdf7;border:1px solid var(--line);border-radius:12px;padding:10px}
.hansen-pca__recommend-label{color:#8b6d2f;font-size:.84rem;margin-bottom:3px}
.hansen-pca__recommend-value{color:var(--text);font-weight:700;font-size:.95rem}
.hansen-pca__help{color:var(--soft);font-size:.92rem;margin:8px 0 0}
.hansen-pca__small{color:var(--soft);font-size:.9rem}
.hansen-pca__empty{font-style:italic;color:var(--soft)}
.hansen-pca__hidden{display:none !important}
.hansen-pca__grid-2{grid-template-columns:repeat(2,1fr)}
.hansen-pca__grid-3{grid-template-columns:repeat(3,1fr)}
.hansen-pca__grid-6{grid-template-columns:repeat(2,1fr)}
.hansen-pca__steps{grid-template-columns:repeat(5,1fr);margin-top:12px}
.hansen-pca__step,.hansen-pca__question-box,.hansen-pca__list{background:var(--card-2);border:1px solid var(--line);border-radius:16px;padding:14px}
.hansen-pca__step{background:linear-gradient(180deg,#fff9ed,#fff4e0)}
.hansen-pca__list{min-height:120px}
.hansen-pca__item{padding:10px 0;border-bottom:1px dashed #e7d8b9}
.hansen-pca__item:last-child{border-bottom:none}
.hansen-pca__badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.hansen-pca__badge{background:#fff0c9;border:1px solid #f0d894;border-radius:999px;padding:4px 9px;font-size:.82rem;color:#6b4f08}
.hansen-pca__badge--project-simple{background:#e8f7ea;border:1px solid #b7e1bf;color:#1f5b2d}
.hansen-pca__badge--project-major{background:#ffe4d6;border:1px solid #ffc4a7;color:#8a3b12}
.hansen-pca__question-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.hansen-pca__review{padding:11px 12px;border-radius:12px;margin-bottom:8px;background:#fffaf0;border-left:5px solid var(--warning);color:var(--text)}
.hansen-pca__review--ok{border-left-color:var(--success)}
.hansen-pca__review--alert{border-left-color:var(--danger)}
.hansen-pca__inline-space{margin-top:12px}
.hansen-pca__top-flex{display:flex;gap:14px;justify-content:space-between;align-items:flex-start;flex-wrap:wrap}
.hansen-pca__best-action-col{flex:1;min-width:0}
.hansen-pca__filters{width:320px;max-width:100%;background:linear-gradient(180deg,#fff9ee,#fff5e4);border:1px solid var(--line);border-radius:16px;padding:14px}
.hansen-pca__toolbar{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.hansen-pca__item-row{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.hansen-pca__item-content{flex:1;min-width:0}
.hansen-pca__item-actions{display:flex;gap:6px;flex-shrink:0}
.hansen-pca__mini-btn{margin:0;padding:6px 9px;font-size:.78rem;border-radius:10px;box-shadow:none}
.hansen-pca__mini-btn--done{background:#c7efcf;color:#1f5b2d}
.hansen-pca__mini-btn--delete{background:#ffd9d7;color:#8f2d27}
@media (max-width:900px){
  .hansen-pca__grid-2,.hansen-pca__grid-3,.hansen-pca__steps,.hansen-pca__grid-6,.hansen-pca__recommend-grid{grid-template-columns:1fr}
  .hansen-pca__filters{width:100%}
  .hansen-pca__best-action-col{min-width:0;width:100%}
  .hansen-pca h1{font-size:1.65rem}
}
