:root { --icp-red:#c81018; --icp-red-dark:#a80d14; --icp-ivory:#f7f4ee; --icp-text:#1a1a1a; --icp-muted:#5f5b57; --icp-line:#ded8d0; }
.icp-shell,.icp-showcase{box-sizing:border-box;color:var(--icp-text);font-family:"Source Sans 3",Arial,sans-serif}
.icp-shell{width:100%;max-width:960px;margin:48px auto 64px;background:#fff;border:1px solid var(--icp-line);border-top:6px solid var(--icp-red);border-radius:16px;box-shadow:0 12px 30px rgba(26,26,26,.08);overflow:hidden}
.icp-shell *,.icp-showcase *{box-sizing:border-box}
.icp-header{padding:34px 40px 30px;background:var(--icp-ivory);border-bottom:1px solid var(--icp-line)}
.icp-kicker{display:block;margin:0 0 14px!important;color:var(--icp-red)!important;font-size:12px!important;line-height:1.2!important;font-weight:700!important;letter-spacing:.14em!important;text-transform:uppercase!important}
.icp-title,.icp-showcase h2{margin:0 0 16px!important;color:var(--icp-text)!important;font-family:"Libre Baskerville",Georgia,serif!important;font-size:clamp(32px,3.2vw,42px)!important;line-height:1.16!important;font-weight:400!important;letter-spacing:-.02em!important}
.icp-intro,.icp-showcase-heading>p:last-child{max-width:820px;margin:0!important;color:var(--icp-muted)!important;font-size:17px!important;line-height:1.6!important}
.icp-workspace{padding:32px 40px 40px}.icp-panel,.icp-results{padding:24px;background:#fbfaf7;border:1px solid var(--icp-line);border-radius:10px}.icp-results{margin-top:28px}
.icp-label,.icp-grid label>span{display:block;margin-bottom:8px;font-weight:700}.icp-shell textarea,.icp-shell select{width:100%;padding:12px;border:1px solid #bdb6ad;border-radius:8px;background:#fff;color:var(--icp-text);font:inherit}.icp-shell textarea{resize:vertical;line-height:1.55}.icp-help{margin:7px 0 20px;color:var(--icp-muted)}
.icp-grid{display:grid;gap:18px}.icp-grid-2{grid-template-columns:repeat(2,minmax(0,1fr));margin:20px 0}.icp-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.icp-primary,.icp-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 17px;border-radius:8px;font:700 15px/1.2 "Source Sans 3",Arial,sans-serif;text-decoration:none!important;cursor:pointer}.icp-primary{background:var(--icp-red)!important;color:#fff!important;border:1px solid var(--icp-red)!important}.icp-primary:hover{background:var(--icp-red-dark)!important;border-color:var(--icp-red-dark)!important}.icp-secondary{background:#fff!important;color:var(--icp-red)!important;border:1px solid var(--icp-red)!important}
.icp-status{min-height:24px;margin:16px 0 0}.icp-status.is-error{color:#9f1239}.icp-status.is-success{color:#166534}.icp-progress{position:relative;height:34px;margin-top:18px;border-radius:8px;background:#eee9e1;overflow:hidden}.icp-progress span{position:absolute;inset:0 auto 0 0;width:0;background:#f0b8ba;transition:width .2s}.icp-progress strong{position:relative;display:block;padding:7px 10px;text-align:center;font-size:14px}
.icp-results-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:20px}.icp-results h3{margin:0;font:400 25px/1.3 "Libre Baskerville",Georgia,serif}.icp-reference-list{margin:0;padding-left:24px}.icp-reference-list li{margin:0 0 15px;padding-left:6px;line-height:1.55}.icp-review,.icp-findings{margin-top:20px}.icp-review p,.icp-finding{padding:11px 13px;border-radius:8px;background:#fff;border:1px solid var(--icp-line)}
.icp-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}.icp-stat{padding:15px;background:#fff;border:1px solid var(--icp-line);border-radius:8px}.icp-stat strong{display:block;color:var(--icp-red);font-size:26px}.icp-stat span{color:var(--icp-muted);font-size:13px}.icp-check{display:flex;gap:9px;align-items:flex-start;margin:4px 0 20px}.icp-check input{margin-top:4px}
.icp-lock{padding:46px 40px 50px;text-align:center}.icp-lock-icon{display:grid;place-items:center;width:68px;height:68px;margin:0 auto 20px;border-radius:50%;background:var(--icp-ivory);font-size:30px}.icp-lock h3{margin:0 0 12px;font:400 27px/1.3 "Libre Baskerville",Georgia,serif}.icp-lock p{max-width:650px;margin:0 auto 24px;color:var(--icp-muted);font-size:17px;line-height:1.6}.icp-lock-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.icp-showcase{width:calc(100% - 40px);max-width:960px;margin:64px auto;padding:0;background:transparent}.icp-showcase-heading{margin-bottom:24px;padding:28px 30px;background:var(--icp-ivory);border:1px solid var(--icp-line);border-top:6px solid var(--icp-red);border-radius:16px;text-align:center}.icp-card-grid{display:grid;grid-template-columns:1fr;gap:24px}.icp-premium-card{display:grid;grid-template-columns:2fr 1fr;min-height:185px;background:#fff;border:1px solid var(--icp-line);border-radius:16px;color:var(--icp-text)!important;text-decoration:none!important;box-shadow:0 8px 22px rgba(26,26,26,.06);overflow:hidden;transition:transform .2s,box-shadow .2s}.icp-premium-card:hover{transform:translateY(-3px);box-shadow:0 13px 28px rgba(26,26,26,.11)}.icp-card-copy{display:flex;flex-direction:column;padding:22px 24px;border-left:6px solid var(--icp-red)}.icp-card-label{align-self:flex-start;margin-bottom:10px;padding:5px 9px;border-radius:20px;background:#fce8e9;color:var(--icp-red);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.icp-premium-card strong{margin-bottom:10px;font:400 24px/1.25 "Libre Baskerville",Georgia,serif}.icp-card-copy>span:not(.icp-card-label){color:var(--icp-muted);line-height:1.55}.icp-premium-card em{margin-top:auto;padding-top:16px;color:var(--icp-red);font-style:normal;font-weight:700}.icp-card-visual{display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--icp-ivory);color:var(--icp-red)}.icp-card-visual b{font-size:28px}.icp-card-visual small{font-weight:800;letter-spacing:.15em}.icp-showcase-cta{margin:26px 0 0;text-align:center}
@media(max-width:767px){.icp-shell{margin:24px auto 40px;border-radius:12px}.icp-header{padding:26px 20px 24px}.icp-title,.icp-showcase h2{font-size:30px!important}.icp-workspace{padding:24px 20px 30px}.icp-panel,.icp-results{padding:18px}.icp-grid-2,.icp-card-grid,.icp-premium-card{grid-template-columns:1fr}.icp-card-visual{min-height:120px}.icp-results-head{flex-direction:column}.icp-stats{grid-template-columns:repeat(2,1fr)}.icp-lock{padding:34px 20px 40px}.icp-showcase{width:100%;margin:40px auto;padding:0 20px;border-radius:12px}}
