/*
Theme Name: Direktori Bisnis Premium
Version: 1.5.0
Requires PHP: 7.4
Text Domain: direktori-bisnis-premium
*/
:root{--n:#14283b;--b:#1769aa;--g:#d3a64a;--l:#f6f8fb;--m:#6f7c87;--bd:#e2e8ee}
*{box-sizing:border-box}body{margin:0;font-family:Arial,sans-serif;color:#24313b;line-height:1.6}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}.c{width:min(1180px,calc(100% - 32px));margin:auto}
.top{background:#101d29;color:#cdd8df;font-size:.75rem}.top .c,.headin{display:flex;justify-content:space-between;align-items:center}.top .c{min-height:34px}.header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--bd)}.headin{min-height:72px}.brand{font-weight:900;color:var(--n);display:flex;gap:10px;align-items:center}.logo{width:42px;height:42px;border-radius:10px;background:linear-gradient(135deg,var(--b),#2f8fd2);color:#fff;display:grid;place-items:center}.brand small{display:block;font-size:.55rem;color:var(--m);text-transform:uppercase}.nav ul{display:flex;gap:22px;list-style:none;padding:0}.nav a{font-weight:700;font-size:.9rem}.nav-cta{background:var(--b);color:#fff!important;padding:10px 14px;border-radius:7px}.menu{display:none}
.hero{background:linear-gradient(120deg,#fbfdff,#eaf5fc);padding:80px 0 70px}.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:45px;align-items:center}.hero h1{font-size:clamp(2.8rem,5vw,4.6rem);line-height:1.04;margin:12px 0;color:var(--n)}.hero h1 span{color:var(--b)}.hero p{font-size:1.05rem;color:#587080}.btn{display:inline-flex;padding:12px 18px;border-radius:7px;font-weight:800;border:0;cursor:pointer}.blue{background:var(--b);color:#fff}.white{background:#fff;border:1px solid var(--bd)}.card{background:#fff;border:1px solid var(--bd);border-radius:14px;padding:22px;box-shadow:0 15px 40px rgba(20,40,59,.08)}.card div{padding:9px;background:#f8fafc;border:1px solid var(--bd);margin:8px 0;border-radius:7px}
.search{margin-top:-28px}.searchbox{display:grid;grid-template-columns:1.2fr 1fr 1fr auto;background:#fff;border:1px solid var(--bd);padding:12px;border-radius:12px;box-shadow:0 12px 32px rgba(20,40,59,.1)}.sf{padding:8px 12px;border-right:1px solid var(--bd)}.sf label{display:block;font-size:.65rem;color:var(--m);font-weight:800;text-transform:uppercase}.sf input,.sf select{width:100%;border:0;outline:none;padding:7px 0}.searchbtn{background:var(--b);color:#fff;border:0;border-radius:7px;padding:0 20px;font-weight:800}
.sec{padding:65px 0}.soft{background:var(--l)}.sh{text-align:center;max-width:720px;margin:0 auto 32px}.sh h2{font-size:2.4rem;color:var(--n);margin:5px 0}.sh p{color:var(--m)}
.catgrid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.cat{border:1px solid var(--bd);padding:16px;text-align:center;border-radius:10px;background:#fff}.cat b{display:block;color:var(--n)}.cat span{font-size:.72rem;color:var(--m)}
.bizgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.biz{border:1px solid var(--bd);border-radius:12px;overflow:hidden;background:#fff}.bizimg{aspect-ratio:16/10;background:#eef3f6}.bizimg img{width:100%;height:100%;object-fit:cover}.bizbody{padding:16px}.bizbody h3{color:var(--n);margin:5px 0}.meta{font-size:.72rem;color:var(--b);font-weight:800}.muted{color:var(--m);font-size:.88rem}
.submit{background:linear-gradient(135deg,#14283b,#1769aa);color:#fff}.submitgrid{display:grid;grid-template-columns:.8fr 1.2fr;gap:38px}.form{background:#fff;color:#222;border-radius:14px;padding:22px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.row{display:flex;flex-direction:column;gap:5px}.row.full{grid-column:1/-1}.row input,.row select,.row textarea{padding:10px;border:1px solid var(--bd);border-radius:7px}.row textarea{min-height:110px}.notice{padding:10px;border-radius:7px;margin-bottom:12px}.ok{background:#e7f7ef;color:#176842}.err{background:#fdecec;color:#9a2e2e}
.pagehero{background:linear-gradient(135deg,#14283b,#1769aa);color:#fff;padding:50px 0}.content{display:grid;grid-template-columns:1fr 290px;gap:28px;padding:40px 0}.entry,.widget{border:1px solid var(--bd);padding:20px;background:#fff}.single{display:grid;grid-template-columns:1fr 1fr;gap:24px}.info{border:1px solid var(--bd);padding:9px;margin:8px 0}
.footer{background:#102131;color:#c8d5df;padding:42px 0 18px}.foot{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:25px}.footer h3,.footer h4{color:#fff}.wa{position:fixed;right:15px;bottom:15px;background:#25d366;color:#fff;padding:11px 15px;border-radius:7px;font-weight:800}
@media(max-width:900px){.hero-grid,.submitgrid,.content,.single{grid-template-columns:1fr}.catgrid{grid-template-columns:repeat(3,1fr)}.bizgrid{grid-template-columns:1fr 1fr}.nav{display:none}.menu{display:block}}
@media(max-width:650px){.searchbox,.grid,.catgrid,.bizgrid,.foot{grid-template-columns:1fr}.sf{border-right:0;border-bottom:1px solid var(--bd)}.hero{padding:55px 0}.sec{padding:50px 0}.wa{left:12px;right:12px;text-align:center}.footer{padding-bottom:60px}}

/* v1.1.0 Yellow Pages listing style */
:root{
 --yp-yellow:#f4c400;
 --yp-yellow2:#ffd84d;
 --yp-black:#111;
 --yp-gray:#f4f4f1;
 --yp-line:#dedbd0;
 --yp-blue:#0b5ca8;
}
body{background:#fff}
.yp-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;padding:12px 15px;background:#fff8cf;border:1px solid #ecd977}
.yp-toolbar strong{font-size:.95rem;color:#111}
.yp-toolbar span{font-size:.78rem;color:#6c6552}
.yp-list{display:grid;gap:10px}
.yp-item{
 display:grid;
 grid-template-columns:120px minmax(0,1fr) 190px;
 gap:0;
 background:#fff;
 border:1px solid var(--yp-line);
 box-shadow:0 2px 7px rgba(0,0,0,.035);
}
.yp-logo{
 min-height:120px;
 background:#faf9f4;
 border-right:1px solid var(--yp-line);
 display:flex;
 align-items:center;
 justify-content:center;
 padding:10px;
}
.yp-logo img{width:100%;height:100%;max-height:115px;object-fit:contain}
.yp-main{padding:16px 18px}
.yp-cat{
 display:inline-block;
 background:var(--yp-yellow);
 color:#111;
 font-size:.61rem;
 line-height:1;
 font-weight:900;
 text-transform:uppercase;
 letter-spacing:.05em;
 padding:5px 7px;
 margin-bottom:7px;
}
.yp-main h3{font-size:1.15rem;line-height:1.2;margin:0 0 5px;color:var(--yp-blue)}
.yp-main h3 a:hover{text-decoration:underline}
.yp-location{font-size:.78rem;font-weight:700;color:#444;margin-bottom:6px}
.yp-desc{font-size:.82rem;color:#686868;margin:5px 0 8px}
.yp-info{display:flex;flex-wrap:wrap;gap:7px 14px}
.yp-info span{font-size:.72rem;color:#4e4e4e}
.yp-info b{color:#111}
.yp-actions{
 border-left:1px solid var(--yp-line);
 padding:14px;
 display:flex;
 flex-direction:column;
 justify-content:center;
 gap:8px;
 background:#fcfcfa;
}
.yp-btn{
 display:flex;
 justify-content:center;
 align-items:center;
 min-height:38px;
 padding:8px 10px;
 font:800 .73rem Arial,sans-serif;
 border:1px solid #d5d2c7;
 background:#fff;
 color:#111;
}
.yp-btn:hover{background:#f6f4eb}
.yp-btn.primary{background:var(--yp-yellow);border-color:#e2b900}
.yp-btn.wa{background:#22a06b;color:#fff;border-color:#1d8a5c}
.yp-section-head{
 border-bottom:3px solid var(--yp-black);
 padding-bottom:9px;
 margin-bottom:15px;
 display:flex;
 justify-content:space-between;
 align-items:flex-end;
 gap:15px;
}
.yp-section-head h2{font-size:1.3rem;margin:0;color:#111}
.yp-section-head span{font-size:.72rem;color:#777}
.bizgrid{display:block}
.bizcard,.biz{display:none}
.pagehero{background:#111;color:#fff}
.searchbox{border-radius:0;box-shadow:none;border:2px solid var(--yp-yellow)}
.searchbtn{background:#111;border-radius:0}
.catgrid{grid-template-columns:repeat(4,1fr)}
.cat{
 text-align:left;
 border-radius:0;
 border:1px solid var(--yp-line);
 border-left:5px solid var(--yp-yellow);
 background:#fff;
}
.cat b{font-size:.9rem}
.cat:hover{background:#fffbea}
@media(max-width:900px){
 .yp-item{grid-template-columns:105px minmax(0,1fr)}
 .yp-actions{grid-column:1/-1;border-left:0;border-top:1px solid var(--yp-line);flex-direction:row}
 .yp-actions .yp-btn{flex:1}
}
@media(max-width:650px){
 .yp-item{grid-template-columns:82px minmax(0,1fr)}
 .yp-logo{min-height:95px;padding:7px}
 .yp-main{padding:12px}
 .yp-main h3{font-size:1rem}
 .yp-actions{flex-direction:column}
 .catgrid{grid-template-columns:1fr 1fr}
}

/* v1.2.0 Paid News / Press Release */
.news-pay-section{background:#fffaf0;border-top:1px solid #ead9a2;border-bottom:1px solid #ead9a2}
.news-pay-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:36px;align-items:start}
.news-price-box{background:#111;color:#fff;padding:25px;border-top:6px solid var(--yp-yellow)}
.news-price-box .price{font-size:2.3rem;font-weight:900;color:var(--yp-yellow);line-height:1}
.news-price-box .unit{font-size:.75rem;color:#bbb}
.news-price-box h3{font-size:1.3rem;margin:15px 0 6px}
.news-price-box p{font-size:.84rem;color:#ddd}
.gopay-box{margin-top:17px;background:#fff;border:2px solid var(--yp-yellow);padding:15px;color:#111}
.gopay-box small{display:block;text-transform:uppercase;font-size:.62rem;font-weight:900;color:#6b6148}
.gopay-box strong{display:block;font-size:1.2rem;margin:3px 0}
.no-admin{display:inline-block;margin-top:7px;background:#e7f7ef;color:#176842;padding:5px 8px;font-size:.68rem;font-weight:900}
.news-submit-form{background:#fff;border:1px solid var(--yp-line);padding:22px}
.news-submit-form h3{margin-top:0;color:#111}
.news-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.news-row{display:flex;flex-direction:column;gap:5px}
.news-row.full{grid-column:1/-1}
.news-row label{font-size:.74rem;font-weight:800;color:#444}
.news-row input,.news-row select,.news-row textarea{
 width:100%;padding:10px;border:1px solid #d8d4c7;background:#fff;font:500 .86rem Arial,sans-serif
}
.news-row textarea{min-height:180px;resize:vertical}
.news-hint{font-size:.7rem;color:#777;margin-top:4px}
.news-badge{display:inline-block;padding:4px 7px;margin-right:5px;font-size:.6rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.news-badge.promosi{background:#f4c400;color:#111}
.news-badge.press-release{background:#111;color:#fff}
.paid-news-list{display:grid;gap:10px}
.paid-news-item{display:grid;grid-template-columns:180px 1fr;background:#fff;border:1px solid var(--yp-line)}
.paid-news-img{background:#f3f1e9;aspect-ratio:16/10;overflow:hidden}
.paid-news-img img{width:100%;height:100%;object-fit:cover}
.paid-news-body{padding:15px}
.paid-news-body h3{font-size:1.08rem;margin:6px 0;color:#0b5ca8}
.paid-news-body p{font-size:.8rem;color:#666;margin:5px 0}
.paid-news-meta{font-size:.67rem;color:#777}
@media(max-width:900px){.news-pay-grid{grid-template-columns:1fr}}
@media(max-width:650px){.news-form-grid{grid-template-columns:1fr}.paid-news-item{grid-template-columns:1fr}.paid-news-img{aspect-ratio:16/9}}

/* v1.3.0 Automatic Business Maps */
.map-btn{background:#fff;border:1px solid #bdb8aa;color:#111}
.map-btn:hover{background:#fff8cf;border-color:#e3bf26}
.auto-map{
 width:100%;
 min-height:360px;
 border:1px solid var(--yp-line);
 background:#ecebe5;
 overflow:hidden;
}
.auto-map iframe{
 display:block;
 width:100%;
 height:360px;
 border:0;
}
.map-section{
 margin-top:26px;
}
.map-section-head{
 display:flex;
 justify-content:space-between;
 align-items:center;
 gap:15px;
 border-bottom:3px solid #111;
 padding-bottom:9px;
 margin-bottom:12px;
}
.map-section-head h2{margin:0;font-size:1.3rem;color:#111}
.map-section-head a{
 background:var(--yp-yellow);
 border:1px solid #dfb900;
 padding:8px 11px;
 font-size:.72rem;
 font-weight:900;
}
.map-address{
 padding:10px 12px;
 background:#fff8cf;
 border:1px solid #ecd977;
 font-size:.79rem;
 margin-bottom:10px;
 color:#514a38;
}
.directory-map-note{
 margin:12px 0 0;
 font-size:.72rem;
 color:#777;
}
@media(max-width:650px){
 .auto-map,.auto-map iframe{min-height:280px;height:280px}
 .map-section-head{align-items:flex-start;flex-direction:column}
}

/* v1.4.0 Jobs & Applicants */
.jobs-section{background:#fff}
.job-list{display:grid;gap:10px}
.job-item{
 display:grid;
 grid-template-columns:95px minmax(0,1fr) 180px;
 background:#fff;
 border:1px solid var(--yp-line);
}
.job-logo{
 min-height:95px;
 background:#faf9f4;
 border-right:1px solid var(--yp-line);
 display:flex;
 align-items:center;
 justify-content:center;
 padding:9px;
}
.job-logo img{width:100%;height:100%;max-height:90px;object-fit:contain}
.job-main{padding:14px 16px}
.job-main h3{font-size:1.08rem;margin:2px 0 5px;color:#0b5ca8}
.job-company{font-size:.78rem;font-weight:900;color:#111}
.job-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}
.job-meta span{padding:5px 7px;background:#f5f4ee;border:1px solid #dedbd0;font-size:.67rem}
.job-actions{
 border-left:1px solid var(--yp-line);
 padding:12px;
 display:flex;
 flex-direction:column;
 justify-content:center;
 gap:8px;
}
.job-badge{
 display:inline-block;
 padding:4px 7px;
 background:#111;
 color:#fff;
 font-size:.58rem;
 font-weight:900;
 text-transform:uppercase
}
.job-forms{
 display:grid;
 grid-template-columns:1fr 1fr;
 gap:22px;
}
.job-form-box{
 background:#fff;
 border:1px solid var(--yp-line);
 padding:20px;
}
.job-form-box h3{margin-top:0}
.job-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.job-row{display:flex;flex-direction:column;gap:5px}
.job-row.full{grid-column:1/-1}
.job-row label{font-size:.74rem;font-weight:800}
.job-row input,.job-row select,.job-row textarea{
 padding:10px;border:1px solid #d8d4c7;background:#fff
}
.job-row textarea{min-height:145px;resize:vertical}
.apply-note{
 padding:10px 12px;
 background:#fff8cf;
 border:1px solid #ecd977;
 font-size:.76rem;
 margin-bottom:12px;
}
.job-detail-grid{
 display:grid;
 grid-template-columns:1.1fr .9fr;
 gap:24px;
 align-items:start
}
.job-detail-card{
 border:1px solid var(--yp-line);
 background:#fff;
 padding:18px;
}
.job-detail-list{
 display:grid;
 grid-template-columns:1fr 1fr;
 gap:9px;
 margin:16px 0
}
.job-detail-list div{border:1px solid var(--yp-line);padding:9px}
.job-detail-list small{display:block;font-size:.62rem;text-transform:uppercase;color:#777}
@media(max-width:900px){
 .job-item{grid-template-columns:85px 1fr}
 .job-actions{grid-column:1/-1;border-left:0;border-top:1px solid var(--yp-line);flex-direction:row}
 .job-forms,.job-detail-grid{grid-template-columns:1fr}
}
@media(max-width:650px){
 .job-form-grid,.job-detail-list{grid-template-columns:1fr}
 .job-item{grid-template-columns:72px 1fr}
 .job-actions{flex-direction:column}
}

/* v1.5 Security Hardened */
.security-note{margin:10px 0 16px;padding:12px 14px;border:1px solid #d9c768;background:#fff9d9;color:#403b25;font-size:.76rem;line-height:1.55}
.security-note strong{color:#111}
