/* Step 35K: pencarian berbasis kebutuhan */
.smart-search-hero{
  position:relative;
  overflow:hidden;
  color:#fff;
  background:
    radial-gradient(circle at 85% 20%,rgba(54,191,196,.28),transparent 29rem),
    linear-gradient(118deg,#072b59 0%,#0d4f9f 58%,#087f92 100%);
}
.smart-search-hero::after{
  content:"";
  position:absolute;
  right:-5rem;
  bottom:-7rem;
  width:22rem;
  height:22rem;
  border:1px solid rgba(255,255,255,.13);
  border-radius:50%;
  box-shadow:0 0 0 3rem rgba(255,255,255,.035),0 0 0 6rem rgba(255,255,255,.025);
}
.smart-search-hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:2rem;align-items:center}
.smart-search-hero h1{max-width:760px;margin:.35rem 0 .7rem;color:#fff}
.smart-search-hero p{max-width:760px;margin:0;color:#d7e9f8}
.smart-search-hero-note{display:flex;align-items:center;gap:.85rem;padding:1rem 1.1rem;border:1px solid rgba(255,255,255,.22);border-radius:16px;background:rgba(2,31,65,.35);backdrop-filter:blur(8px)}
.smart-search-hero-note .ui-line-icon{flex:0 0 auto;color:#dffcf4;background:rgba(72,207,165,.16);border-color:rgba(157,244,214,.32)}
.smart-search-hero-note span{display:grid;gap:.2rem;color:#d7e9f8;font-size:.8rem;line-height:1.5}
.smart-search-hero-note strong{color:#fff;font-size:.86rem}

.smart-search-section{background:linear-gradient(180deg,#f2f7fc 0,#fff 34rem)}
.smart-search-form{position:relative;z-index:3;display:grid;grid-template-columns:minmax(320px,1.5fr) minmax(220px,.55fr) auto;gap:1rem;align-items:end;margin-top:-3.1rem;padding:1.25rem;border-color:#cadbec;box-shadow:0 22px 50px rgba(12,53,99,.13)}
.smart-search-form label{color:#183a62;font-weight:850}
.smart-search-input{position:relative}
.smart-search-input .ui-line-icon{position:absolute;left:.7rem;top:50%;width:2.25rem;height:2.25rem;color:#356898;background:#edf5fd;border:0;box-shadow:none;transform:translateY(-50%);pointer-events:none}
.smart-search-input input{width:100%;min-height:50px;padding-left:3.35rem;border-color:#b9cde0;font-size:.93rem}
.smart-search-need select{min-height:50px}
.smart-search-submit{min-height:50px;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;white-space:nowrap}
.smart-search-submit .ui-line-icon{width:1.25rem;height:1.25rem;color:currentColor;background:transparent;border:0;box-shadow:none}
.smart-search-advanced{grid-column:1/-1;margin-top:-.2rem;padding-top:.75rem;border-top:1px solid #e4edf5}
.smart-search-advanced summary{width:max-content;color:#326494;font-size:.76rem;font-weight:850;cursor:pointer}
.smart-search-advanced .field{max-width:420px;margin-top:.8rem}

.smart-need-section{margin-top:3rem}
.smart-need-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.smart-need-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.85rem;align-items:center;min-height:126px;padding:1.1rem;text-decoration:none}
.smart-need-card .ui-line-icon{width:2.75rem;height:2.75rem;color:#176cb5;background:#edf6ff;border-color:#d5e7f7;box-shadow:none}
.smart-need-card>span{display:grid;gap:.3rem}
.smart-need-card strong{color:#0b3769;font-size:.9rem}
.smart-need-card small{color:#60748b;font-size:.72rem;line-height:1.45}
.smart-need-card>b{color:#1e73bd;font-size:1.15rem;transition:transform .18s ease}
.smart-need-card:hover>b,.smart-need-card:focus-visible>b{transform:translateX(3px)}

.smart-example-section{margin-top:2.5rem;padding:1.4rem 0;border-top:1px solid #dce7f1}
.smart-suggestion-list{display:flex;flex-wrap:wrap;gap:.65rem}
.smart-suggestion-list a{display:inline-flex;align-items:center;min-height:38px;padding:.55rem .85rem;border:1px solid #cdddec;border-radius:999px;color:#245987;background:#fff;font-size:.76rem;font-weight:750;text-decoration:none;transition:border-color .18s,background .18s,transform .18s}
.smart-suggestion-list a:hover,.smart-suggestion-list a:focus-visible{border-color:#63a4dc;background:#eef7ff;transform:translateY(-1px)}

.smart-emergency-reminder{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:1rem;align-items:center;margin-top:1.6rem;padding:1rem 1.15rem;border:1px solid #f0c4c7;border-radius:16px;background:#fff7f7}
.smart-emergency-reminder .ui-line-icon{color:#b82935;background:#ffe9eb;border-color:#f3c2c7;box-shadow:none}
.smart-emergency-reminder>div{display:grid;gap:.15rem}
.smart-emergency-reminder strong{color:#8f2029}
.smart-emergency-reminder span{color:#6f4d52;font-size:.78rem}
.btn-danger{color:#fff;background:#b62732;border-color:#b62732}
.btn-danger:hover,.btn-danger:focus-visible{color:#fff;background:#971c27;border-color:#971c27}

.smart-intent-panel{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(210px,.42fr);gap:1.1rem;align-items:center;margin-top:2rem;padding:1.25rem 1.35rem;border:1px solid #bdd9ee;border-radius:20px;background:linear-gradient(135deg,#f8fcff,#eaf6ff);box-shadow:0 16px 38px rgba(22,79,130,.08)}
.smart-intent-panel.is-emergency{border-color:#e9aeb3;background:linear-gradient(135deg,#fffafa,#ffeded)}
.smart-intent-icon .ui-line-icon{width:3.25rem;height:3.25rem;color:#136db7;background:#fff;border-color:#c9e1f4;box-shadow:0 8px 20px rgba(15,77,128,.1)}
.smart-intent-panel.is-emergency .smart-intent-icon .ui-line-icon{color:#b62732;border-color:#f2c4c8}
.smart-intent-copy{display:grid;gap:.28rem}
.smart-intent-copy h2{margin:0;color:#0d3968;font-size:1.35rem}
.smart-intent-panel.is-emergency .smart-intent-copy h2{color:#8f2029}
.smart-intent-copy p{margin:0;color:#516a82;font-size:.84rem}
.smart-intent-copy small{color:#6b7c8e;font-size:.72rem}
.smart-interpreted{width:max-content;max-width:100%;margin-top:.35rem;padding:.32rem .55rem;border-radius:999px;color:#245f91;background:#fff;font-size:.67rem;font-weight:750}
.smart-intent-actions{display:grid;gap:.55rem}
.smart-intent-actions .btn{width:100%;justify-content:center}

.smart-search-summary,.smart-group-head{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem}
.smart-search-summary{margin:2.5rem 0 1rem}
.smart-search-summary h2,.smart-group-head h2{margin:.2rem 0 0;color:#0b345f;font-size:1.45rem}
.smart-search-empty{margin-top:1rem}
.empty-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:.7rem}

.smart-top-section{margin-top:1.5rem;padding:1.25rem;border:1px solid #c9deef;border-radius:22px;background:#f5faff}
.smart-group-head{margin-bottom:1rem}
.smart-group-head>span{color:#5f748a;font-size:.72rem;font-weight:800}
.smart-top-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}
.smart-result-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.85rem;min-height:100%;padding:1rem}
.smart-result-card.is-featured{border-color:#c5dced;background:#fff;box-shadow:0 8px 22px rgba(16,67,113,.06)}
.smart-result-icon .ui-line-icon{width:2.45rem;height:2.45rem;color:#176ab0;background:#eef6fd;border-color:#d4e6f5;box-shadow:none}
.smart-result-card>div:last-child{display:flex;flex-direction:column;min-width:0}
.smart-result-type{color:#1670b9;font-size:.61rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.smart-result-card h3,.smart-result-card h4{margin:.28rem 0;color:#0b345f;line-height:1.35}
.smart-result-card h3{font-size:1rem}.smart-result-card h4{font-size:.92rem}
.smart-result-card h3 a,.smart-result-card h4 a{color:inherit;text-decoration:none}
.smart-result-card h3 a:hover,.smart-result-card h4 a:hover{text-decoration:underline;text-underline-offset:3px}
.smart-result-card p{margin:0 0 .8rem;color:#5c6f82;font-size:.75rem;line-height:1.55}
.smart-result-foot{display:flex;justify-content:space-between;align-items:flex-end;gap:.7rem;margin-top:auto;padding-top:.65rem;border-top:1px solid #e5edf4}
.smart-result-foot>span{overflow:hidden;color:#718398;font-size:.66rem;text-overflow:ellipsis;white-space:nowrap}
.smart-result-foot>a{flex:0 0 auto;color:#176bb2;font-size:.7rem;font-weight:850;text-decoration:none}

.smart-all-results{margin-top:2.7rem}
.smart-search-groups{display:grid;gap:1.6rem}
.smart-search-group{scroll-margin-top:100px}
.smart-search-group-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.65rem;padding-bottom:.55rem;border-bottom:2px solid #dce8f2}
.smart-search-group-head h3{margin:0;color:#153f6d;font-size:1.05rem}
.smart-search-group-head span{color:#6b7c8f;font-size:.68rem;font-weight:800}
.smart-search-result-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
.smart-search-safety-note{display:flex;align-items:center;justify-content:center;gap:.5rem;margin:2.5rem 0 0;color:#62758a;font-size:.72rem;text-align:center}
.smart-search-safety-note .ui-line-icon{flex:0 0 auto;color:#326994;background:#eef5fb;border:0;box-shadow:none}

@media(max-width:1050px){
  .smart-need-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .smart-search-form{grid-template-columns:minmax(280px,1fr) minmax(210px,.55fr)}
  .smart-search-submit{grid-column:1/-1;width:100%}
  .smart-intent-panel{grid-template-columns:auto minmax(0,1fr)}
  .smart-intent-actions{grid-column:1/-1;display:flex;flex-wrap:wrap}
  .smart-intent-actions .btn{width:auto}
}
@media(max-width:760px){
  .smart-search-hero-inner{grid-template-columns:1fr}
  .smart-search-hero-note{max-width:520px}
  .smart-search-form{grid-template-columns:1fr;margin-top:-2.2rem;padding:1rem}
  .smart-search-submit{grid-column:auto}
  .smart-search-advanced{grid-column:auto}
  .smart-top-grid,.smart-search-result-list{grid-template-columns:1fr}
  .smart-search-summary,.smart-group-head{align-items:flex-start;flex-direction:column}
}
@media(max-width:540px){
  .smart-need-grid{grid-template-columns:1fr}
  .smart-need-card{min-height:105px}
  .smart-emergency-reminder{grid-template-columns:auto minmax(0,1fr)}
  .smart-emergency-reminder .btn{grid-column:1/-1;width:100%}
  .smart-intent-panel{grid-template-columns:1fr}
  .smart-intent-actions{display:grid}
  .smart-intent-actions .btn{width:100%}
  .smart-result-card{grid-template-columns:1fr}
  .smart-result-foot{align-items:flex-start;flex-direction:column}
  .smart-result-foot>span{white-space:normal}
}
@media(prefers-reduced-motion:reduce){
  .smart-need-card>b,.smart-suggestion-list a{transition:none}
}
