/* Karigar Solutions Fresh Portal — warm orange 3D-inspired UI */
.ksfp-wrap{--orange:#ff6b00;--gold:#ffb51b;--navy:#102d61;--muted:#70809c;--line:#dce4f0;max-width:1200px;margin:34px auto;padding:24px 18px;background:radial-gradient(circle at 12% 5%,#fff4d5 0,transparent 34%),linear-gradient(135deg,#fffaf0,#fff1d7);border-radius:28px;box-sizing:border-box;font-family:inherit;color:var(--navy)}
.ksfp-wrap *{box-sizing:border-box}.ksfp-shell{max-width:590px;margin:0 auto;padding:30px 28px 22px;background:rgba(255,255,255,.96);border:1px solid #e5eaf2;border-radius:26px;box-shadow:0 22px 60px rgba(18,45,97,.13),inset 0 1px #fff}
.ksfp-brand{display:flex;align-items:center;gap:14px;margin-bottom:28px}.ksfp-logo{width:54px;height:54px;flex:0 0 54px;border-radius:17px;display:grid;place-items:center;color:white;font-weight:900;font-size:20px;background:linear-gradient(145deg,#ff7900,#ffb51b);box-shadow:0 8px 18px #ff8a2240,inset 0 2px #ffffff70}.ksfp-brand-name{font-size:19px;letter-spacing:.4px;font-weight:900;color:#132d5b}.ksfp-brand-name span{color:#ff7100}.ksfp-tagline{font-size:12px;color:#7585a2;margin-top:4px}
.ksfp-heading{text-align:center;margin:0 0 22px}.ksfp-heading h2,.ksfp-panel h3{font-size:29px;line-height:1.25;margin:0 0 7px;color:#122e61;font-weight:850}.ksfp-heading p,.ksfp-muted{margin:0;color:#8290a9;font-size:14px}
.ksfp-tabs{display:flex;gap:4px;padding:5px;background:#f0f3f8;border-radius:14px;margin-bottom:24px}.ksfp-tab{flex:1;border:0;border-radius:11px;padding:13px 8px;font-weight:800;background:transparent;color:#60718e;cursor:pointer}.ksfp-tab.is-active{background:#fff;color:#f36d00;box-shadow:0 3px 12px #162b4d12}
.ksfp-panel{display:none}.ksfp-panel.is-active{display:block}.ksfp-form{display:flex;flex-direction:column;gap:15px}.ksfp-form label{display:flex;flex-direction:column;gap:7px;color:#142e5c;font-weight:700;font-size:13px}.ksfp-form label b{color:#f15e21}.ksfp-form input:not([type=checkbox]):not([type=file]),.ksfp-form select,.ksfp-form textarea{width:100%;min-width:0;border:1px solid #d8e1ef;border-radius:12px;background:#fff;padding:13px 14px;font:inherit;font-size:14px;color:#17345f;outline:none;box-shadow:0 2px 4px #172f5510;transition:border .18s,box-shadow .18s}.ksfp-form input:focus,.ksfp-form select:focus,.ksfp-form textarea:focus{border-color:#ff941e;box-shadow:0 0 0 3px #ffb51b25}.ksfp-form input::placeholder,.ksfp-form textarea::placeholder{color:#9aa7bb;font-weight:400}.ksfp-password{display:flex;border:1px solid #d8e1ef;border-radius:12px;overflow:hidden}.ksfp-password input:not([type=checkbox]){border:0!important;box-shadow:none!important;border-radius:0!important;flex:1}.ksfp-eye{border:0;background:#fff;color:#f36d00;padding:0 14px;cursor:pointer}.ksfp-check{display:flex!important;flex-direction:row!important;align-items:center;gap:9px!important;font-weight:500!important;font-size:14px!important}.ksfp-check input{width:18px;height:18px;accent-color:#ff7900}.ksfp-submit{width:100%;border:0;border-radius:13px;padding:16px 18px;background:linear-gradient(100deg,#ff6500,#ffb51b);color:#fff;font-size:17px;font-weight:900;cursor:pointer;box-shadow:0 9px 18px #ff8b2338,inset 0 1px #ffffff65;transition:transform .15s,box-shadow .15s}.ksfp-submit:hover{transform:translateY(-2px);box-shadow:0 13px 22px #ff8b2348}.ksfp-submit span{margin-left:8px}.ksfp-or{display:flex;align-items:center;gap:12px;color:#a0a9b8;font-size:13px}.ksfp-or:before,.ksfp-or:after{content:"";height:1px;background:#dce3ed;flex:1}.ksfp-register-prompt{text-align:center;margin:0;color:#71809a;font-size:14px}.ksfp-register-prompt a{color:#f36d00;font-weight:800;text-decoration:none}.ksfp-role-buttons{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ksfp-role{display:flex;align-items:center;gap:10px;text-align:left;padding:12px;border:1px solid #ffbc39;border-radius:15px;background:linear-gradient(135deg,#fff9e7,#fff0c2);color:#122e61;cursor:pointer;box-shadow:0 5px 12px #ffb51b15}.ksfp-contractor{border-color:#8bb8ff;background:linear-gradient(135deg,#f3f8ff,#e8f1ff)}.ksfp-role-icon{font-size:25px}.ksfp-role strong,.ksfp-role small{display:block}.ksfp-role strong{font-size:14px}.ksfp-role small{font-size:11px;margin-top:4px}.ksfp-safe{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px;padding:12px;border-radius:12px;background:#eef8ec;color:#21824a;font-size:13px}.ksfp-safe small{width:100%;text-align:center;color:#73917b;font-size:11px}
.ksfp-stepper{display:flex;align-items:center;justify-content:center;margin:0 auto 22px;gap:7px}.ksfp-stepper span{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;background:#eef1f6;color:#163260;font-weight:800;box-shadow:inset 0 1px #fff}.ksfp-stepper span.active{background:linear-gradient(135deg,#ff6a00,#ffb51b);color:white;box-shadow:0 4px 10px #ff8a2440}.ksfp-stepper small{font-size:8px;white-space:nowrap;margin-top:2px}.ksfp-stepper i{height:2px;background:#dce2eb;flex:1;max-width:35px}.ksfp-panel h3{text-align:center;font-size:24px;margin-bottom:5px}.ksfp-muted{text-align:center;margin-bottom:18px}.ksfp-choice{display:flex;flex-direction:column;gap:12px;margin-bottom:23px}.ksfp-choice-card{display:flex;align-items:center;gap:14px;width:100%;text-align:left;padding:16px;border:1px solid #e1e7f0;border-radius:17px;background:linear-gradient(135deg,#fff,#fafcff);color:#152f60;cursor:pointer;box-shadow:0 5px 12px #1c31500a}.ksfp-choice-card.selected{border-color:#ff7a00;background:linear-gradient(120deg,#fff9ef,#fff);box-shadow:0 6px 16px #ff8a2418}.ksfp-choice-card>span{font-size:30px;display:grid;place-items:center;width:60px;height:60px;background:#fff1dc;border-radius:14px}.ksfp-choice-card div{flex:1}.ksfp-choice-card strong,.ksfp-choice-card small{display:block}.ksfp-choice-card strong{font-size:20px}.ksfp-choice-card small{font-size:12px;color:#71809a;margin-top:4px}.ksfp-choice-card>b{color:#ff7400;font-size:20px}.ksfp-form h4{margin:0;font-size:18px;color:#132e60}.ksfp-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.ksfp-wide{grid-column:1/-1}.ksfp-form label small{font-weight:400;color:#8996aa;font-size:11px}.ksfp-location{display:grid;grid-template-columns:1fr;gap:10px;padding:13px;border:1px solid #e2e8f0;border-radius:14px;background:#fbfcff}.ksfp-location strong,.ksfp-location small{display:block}.ksfp-location small{margin-top:4px;color:#7e8ca4;font-size:12px}.ksfp-location-btn{border:0;border-radius:11px;padding:12px;background:linear-gradient(100deg,#ff6800,#ffb51b);color:#fff;font-weight:800;cursor:pointer}.ksfp-location-status{font-size:12px;color:#47744c}.ksfp-footer{border-top:1px solid #edf0f5;margin-top:24px;padding-top:18px;text-align:center;color:#8b98ad;font-size:11px}.ksfp-footer span{color:#28b66b}.ksfp-notice{padding:12px 14px;margin:0 0 18px;border-radius:12px;background:#fff3df;color:#7d4800;font-size:14px}.ksfp-dashboard{text-align:center}.ksfp-dashboard h2{font-size:27px}.ksfp-avatar{width:88px;height:88px;border-radius:50%;object-fit:cover;border:4px solid #ffb51b;box-shadow:0 6px 16px #ff8a2433}.ksfp-dash-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:20px 0}.ksfp-dash-actions a,.ksfp-dash-actions button,.ksfp-logout{display:inline-block;border:1px solid #ffd08b;border-radius:10px;padding:10px 15px;background:#fff7e8;color:#c85d00;font-weight:800;text-decoration:none;cursor:pointer}.ksfp-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;text-align:left}.ksfp-info-grid>div{padding:12px;background:#f8faff;border:1px solid #e5ebf4;border-radius:12px;overflow-wrap:anywhere}.ksfp-info-grid small,.ksfp-info-grid strong{display:block}.ksfp-info-grid small{color:#7c8ba5}.ksfp-info-grid strong{margin-top:4px;font-size:13px}.ksfp-edit-form{text-align:left;margin-top:20px;padding:18px;border:1px solid #e3e9f2;border-radius:16px}.ksfp-edit-form h3{text-align:left}.ksfp-wrap .ksfp-logout{margin-top:12px}.ksfp-wrap .ksfp-notice + .ksfp-heading{margin-top:4px}
@media(max-width:640px){.ksfp-wrap{margin:12px auto;padding:12px 8px;border-radius:18px}.ksfp-shell{padding:23px 16px 18px;border-radius:20px}.ksfp-brand-name{font-size:16px}.ksfp-logo{width:47px;height:47px;flex-basis:47px}.ksfp-heading h2{font-size:25px}.ksfp-grid{grid-template-columns:1fr}.ksfp-wide{grid-column:auto}.ksfp-role-buttons{grid-template-columns:1fr}.ksfp-stepper{gap:4px}.ksfp-stepper i{max-width:18px}.ksfp-stepper span{width:29px;height:29px}.ksfp-info-grid{grid-template-columns:1fr}.ksfp-choice-card{padding:12px}.ksfp-choice-card strong{font-size:18px}}

.ksfp-selected-role{background:#fff4e2;border-radius:10px;padding:10px 12px;color:#7a4300}.ksfp-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:10px;margin:12px 0}.ksfp-gallery img{width:100%;height:110px;object-fit:cover;border-radius:12px;box-shadow:0 5px 15px #14223a16}.ksfp-share{display:inline-flex;align-items:center;justify-content:center;margin:10px 0;padding:11px 18px;border:0;border-radius:12px;background:linear-gradient(135deg,#ff7900,#ffb51b);color:#fff;font-weight:700;cursor:pointer;box-shadow:0 6px 15px #ff990033}

/* v1.1.4 registration status clarity */
.ksfp-notice-success{background:#e8f8ee!important;border:1px solid #8bd5a6!important;color:#14532d!important;font-weight:700!important;padding:16px 18px!important;border-radius:14px!important;line-height:1.7!important}
.ksfp-notice-error{background:#fff4e5!important;border:1px solid #f2c078!important;color:#7c3d00!important;padding:14px 16px!important;border-radius:12px!important;line-height:1.7!important}
