.icp-wrap{--icp-blue:#102f57;--icp-gold:#d6a844;--icp-soft:#f5f7fb;--icp-text:#1f2937;font-family:inherit;color:var(--icp-text)}
.icp-hero{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:34px;border-radius:28px;background:linear-gradient(135deg,#102f57,#1d5e89);color:#fff;margin:20px 0 24px;box-shadow:0 18px 50px rgba(16,47,87,.22)}
.icp-kicker{letter-spacing:.16em;text-transform:uppercase;color:#f2d48b;font-weight:700;font-size:12px}.icp-hero h2{margin:.2em 0;font-size:clamp(28px,4vw,48px);color:#fff}.icp-hero p{margin:0;color:rgba(255,255,255,.82)}.icp-now{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);padding:16px 18px;border-radius:18px;min-width:220px}
.icp-filters{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:10px;margin:18px 0 26px}.icp-filters input,.icp-filters select{border:1px solid #d9e1ec;border-radius:14px;padding:12px 14px;background:#fff;min-height:46px}.icp-day-title{margin:32px 0 16px;color:var(--icp-blue);font-size:28px}.icp-timeline{position:relative;display:grid;gap:16px}.icp-timeline:before{content:"";position:absolute;left:76px;top:0;bottom:0;width:2px;background:#e1e8f0}
.icp-card{position:relative;display:grid;grid-template-columns:120px 1fr 120px;gap:20px;align-items:center;background:#fff;border:1px solid #e6edf5;border-left:6px solid var(--icp-accent);border-radius:22px;padding:18px;box-shadow:0 10px 30px rgba(15,23,42,.08);transition:.2s transform,.2s box-shadow}.icp-card:hover{transform:translateY(-3px);box-shadow:0 16px 40px rgba(15,23,42,.12)}
.icp-time strong{display:block;color:var(--icp-blue);font-size:22px}.icp-time span{color:#64748b}.icp-tags{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:8px}.icp-tags span{font-size:12px;background:#eef4fb;color:#17456f;border-radius:999px;padding:5px 9px}.icp-card h4{margin:0 0 8px;font-size:21px}.icp-card h4 a{text-decoration:none;color:#111827}.icp-card h4 a:hover{color:var(--icp-accent)}.icp-speaker,.icp-chair{margin:3px 0;color:#526070}.icp-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.icp-actions button,.icp-actions a{border:0;border-radius:999px;padding:9px 13px;background:var(--icp-blue);color:#fff;text-decoration:none;cursor:pointer;font-size:13px}.icp-actions a{background:#f2f5f9;color:#173b6d}.icp-actions button.saved{background:var(--icp-gold);color:#102f57}.icp-qr{text-align:center}.icp-qr img{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:6px}.icp-qr small{display:block;color:#64748b}.icp-card.is-hidden{display:none}.icp-my-box{margin:36px 0;padding:22px;border-radius:22px;background:var(--icp-soft);border:1px solid #e2e8f0}.icp-my-list{display:grid;gap:8px}.icp-my-list a{display:block;background:#fff;padding:10px 12px;border-radius:12px;text-decoration:none;color:#102f57}.icp-next-card,.icp-single-box{padding:18px;border-radius:18px;background:#f5f7fb;border:1px solid #e2e8f0}.icp-next-card span{display:block;text-transform:uppercase;font-size:12px;color:#64748b}.icp-next-card strong{display:block;font-size:20px}.icp-next-card a{text-decoration:none}.icp-single-box{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:18px 0}.icp-single-box img{max-width:140px}.icp-single-links{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0 20px}.icp-single-links a{background:#102f57;color:#fff;padding:9px 14px;border-radius:999px;text-decoration:none}
@media(max-width:900px){.icp-hero{display:block}.icp-now{margin-top:18px}.icp-filters{grid-template-columns:1fr 1fr}.icp-filters input{grid-column:1/-1}.icp-card{grid-template-columns:1fr}.icp-timeline:before{display:none}.icp-qr{text-align:left}.icp-qr img{width:90px;height:90px}.icp-time{display:flex;gap:10px;align-items:baseline}}
@media(max-width:560px){.icp-filters{grid-template-columns:1fr}.icp-hero{padding:24px;border-radius:20px}.icp-card{border-radius:18px;padding:15px}.icp-day-title{font-size:22px}}

/* Time-grid schedule view */
.icp-grid-days{display:grid;gap:34px;margin-top:8px}.icp-grid-day{overflow-x:auto;padding-bottom:8px}.icp-schedule-grid{min-width:860px;display:grid;grid-template-columns:120px repeat(var(--icp-room-count),minmax(220px,1fr));border:1px solid #dfe7f2;border-radius:24px;overflow:hidden;background:#fff;box-shadow:0 16px 45px rgba(15,23,42,.08)}
.icp-grid-head{position:sticky;top:0;z-index:2;background:#102f57;color:#fff;padding:14px 16px;font-weight:800;letter-spacing:.02em;border-right:1px solid rgba(255,255,255,.15)}.icp-grid-time-head{background:#0b2444}.icp-room-head{text-align:center}.icp-grid-time-cell{background:#f4f7fb;border-top:1px solid #dfe7f2;border-right:1px solid #dfe7f2;padding:16px 12px;color:#102f57;display:flex;align-items:flex-start;justify-content:center;text-align:center}.icp-grid-time-cell strong{font-size:15px;line-height:1.3}.icp-grid-cell{min-height:130px;padding:12px;border-top:1px solid #dfe7f2;border-right:1px solid #edf2f7;background:linear-gradient(180deg,#fff,#fbfdff);display:grid;gap:10px;align-content:start}.icp-empty-cell{color:#c4ccd8;display:flex;align-items:center;justify-content:center;min-height:92px}.icp-grid-session{border:1px solid #e4ebf3;border-left:5px solid var(--icp-accent);border-radius:16px;background:#fff;padding:12px;box-shadow:0 8px 20px rgba(15,23,42,.07);transition:.2s transform,.2s box-shadow}.icp-grid-session:hover{transform:translateY(-2px);box-shadow:0 14px 26px rgba(15,23,42,.11)}.icp-grid-session.is-hidden{display:none}.icp-grid-session-top{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:7px}.icp-grid-pill{font-size:11px;font-weight:800;border-radius:999px;padding:4px 8px;background:#102f57;color:#fff}.icp-grid-pill.soft{background:#eef4fb;color:#17456f}.icp-grid-session h4{font-size:16px;line-height:1.25;margin:0 0 7px}.icp-grid-session h4 a{text-decoration:none;color:#111827}.icp-grid-session h4 a:hover{color:var(--icp-accent)}.icp-grid-session .icp-speaker,.icp-grid-session .icp-chair,.icp-grid-meta{font-size:13px;line-height:1.35;margin:4px 0;color:#526070}.icp-grid-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.icp-grid-actions button,.icp-grid-actions a{border:0;border-radius:999px;padding:7px 10px;background:#102f57;color:#fff;text-decoration:none;cursor:pointer;font-size:12px}.icp-grid-actions a{background:#f2f5f9;color:#173b6d}.icp-grid-actions button.saved{background:#d6a844;color:#102f57}
@media(max-width:900px){.icp-schedule-grid{min-width:760px;grid-template-columns:95px repeat(var(--icp-room-count),minmax(200px,1fr))}.icp-grid-head{padding:12px}.icp-grid-time-cell{padding:12px 8px}.icp-grid-cell{padding:10px}}

/* v5: improved time-block grid, span-all breaks and imported papers */
.icp-schedule-grid-blocks .icp-grid-cell-span-all{background:linear-gradient(135deg,#fff7e0,#fffdf5);border-left:0;border-right:1px solid #dfe7f2;align-content:center}.icp-span-session{border-left-color:#d6a844!important;background:linear-gradient(135deg,#fffaf0,#ffffff)}.icp-grid-pill.gold{background:#d6a844;color:#102f57}.icp-session-papers{margin:10px 0 0;border:1px solid #e3ebf4;border-radius:12px;background:#f9fbfe;padding:8px 10px}.icp-session-papers summary{cursor:pointer;font-weight:800;color:#102f57;font-size:13px}.icp-session-papers ol{margin:8px 0 0 18px;padding:0}.icp-session-papers li{margin:6px 0;font-size:12px;line-height:1.35;color:#334155}.icp-session-papers li span{color:#64748b}.icp-card .icp-session-papers{max-width:100%}.icp-grid-session .icp-session-papers{font-size:12px}.icp-grid-session .icp-session-papers summary{font-size:12px}

/* v6: open paper list under sessions */
.icp-session-papers-open{margin:12px 0 0;border:1px solid #dfe7f2;border-radius:14px;background:#f8fbff;padding:10px 12px}.icp-papers-count{font-weight:800;color:#102f57;margin-bottom:8px;font-size:13px}.icp-session-papers-open ol{margin:0 0 0 20px;padding:0}.icp-session-papers-open li{margin:8px 0;font-size:13px;line-height:1.4;color:#1f2937}.icp-paper-id{display:inline-block;margin-right:6px;color:#102f57}.icp-paper-title{font-weight:700}.icp-paper-authors{color:#64748b;font-size:12px}.icp-grid-session .icp-session-papers-open{padding:9px 10px}.icp-grid-session .icp-session-papers-open li{font-size:12px}.icp-grid-session .icp-paper-authors{font-size:11px}

/* v1.7 compact paper count in time-grid */
.icp-session-paper-count-only{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin:8px 0 4px;
  padding:5px 9px;
  border-radius:999px;
  background:#fff7ed;
  color:#9a3412;
  border:1px solid #fed7aa;
  font-weight:700;
  font-size:12px;
}
.icp-session-paper-count-only:before{content:"📄";font-size:13px;line-height:1}

/* v1.9 session colors + modern paper presentation */
.icp-grid-session,
.icp-card{
  border-left-color:var(--icp-accent,#173b6d);
}
.icp-grid-session:before,
.icp-card:before{
  content:"";
  display:block;
  height:4px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--icp-accent,#173b6d),rgba(255,255,255,0));
  margin:-4px 0 10px;
}
.icp-span-session:before{background:linear-gradient(90deg,#d6a844,rgba(255,255,255,0));}
.icp-paper-showcase{
  background:linear-gradient(180deg,#ffffff,#f8fbff);
  border:1px solid #dfe7f2;
  box-shadow:0 10px 28px rgba(15,23,42,.06);
}
.icp-paper-list-modern{
  list-style:none!important;
  margin:0!important;
  padding:0!important;
  display:grid;
  gap:12px;
}
.icp-paper-item-modern{
  display:grid;
  grid-template-columns:92px 1fr;
  gap:12px;
  margin:0!important;
  padding:13px 0 0!important;
  border-top:1px solid #e7edf5;
}
.icp-paper-item-modern:first-child{border-top:0;padding-top:0!important;}
.icp-paper-code{
  align-self:start;
  display:inline-flex;
  justify-content:center;
  min-width:76px;
  border-radius:14px;
  padding:7px 9px;
  background:#102f57;
  color:#fff;
  font-weight:900;
  letter-spacing:.02em;
  box-shadow:0 6px 15px rgba(16,47,87,.16);
}
.icp-paper-body{min-width:0;}
.icp-paper-title{font-weight:850;color:#0f172a;line-height:1.35;}
.icp-paper-authors{margin-top:4px;color:#526070;font-size:13px;line-height:1.35;}
.icp-paper-meta-line{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;}
.icp-paper-meta-line span{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  background:#eef4fb;
  color:#17456f;
  padding:4px 8px;
  font-size:11px;
  font-weight:750;
}
.icp-paper-abstract{margin-top:9px;border:1px solid #e5edf6;border-radius:12px;background:#fff;padding:8px 10px;}
.icp-paper-abstract summary{cursor:pointer;font-weight:800;color:#ce6b22;font-size:12px;}
.icp-paper-abstract p{margin:8px 0 0;color:#475569;font-size:13px;line-height:1.5;}
.icp-grid-session .icp-paper-showcase{display:none;}
.icp-card .icp-paper-item-modern{grid-template-columns:84px 1fr;}
@media(max-width:650px){.icp-paper-item-modern{grid-template-columns:1fr}.icp-paper-code{justify-content:flex-start;width:max-content}.icp-paper-meta-line span{font-size:10px}}

/* v1.10 engagement / session attendance */
.icp-profile-modal{position:fixed;inset:0;z-index:99999;background:rgba(15,23,42,.55);display:flex;align-items:center;justify-content:center;padding:18px}.icp-profile-dialog{width:min(520px,100%);background:#fff;border-radius:24px;padding:24px;box-shadow:0 24px 80px rgba(0,0,0,.25);position:relative;border-top:6px solid #ce6b22}.icp-profile-close{position:absolute;right:14px;top:12px;border:0;background:#f1f5f9;border-radius:50%;width:34px;height:34px;cursor:pointer;font-size:22px;line-height:1}.icp-profile-dialog h3{margin:0 40px 8px 0;color:#102f57;font-size:24px}.icp-profile-dialog p{color:#526070;margin:0 0 16px}.icp-profile-dialog label{display:block;font-weight:800;color:#243447;margin:12px 0 0}.icp-profile-dialog input{display:block;width:100%;box-sizing:border-box;margin-top:6px;border:1px solid #d9e1ec;border-radius:14px;padding:12px 14px}.icp-profile-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.icp-profile-actions button{border:0;border-radius:999px;padding:10px 15px;cursor:pointer;font-weight:800}.icp-profile-save{background:#102f57;color:#fff}.icp-profile-cancel{background:#eef4fb;color:#102f57}.icp-profile-error{margin-top:10px;color:#b91c1c;font-weight:800}.icp-attendance-body{margin:0;background:linear-gradient(135deg,#102f57,#1d5e89);min-height:100vh}.icp-attendance-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;font-family:inherit}.icp-attendance-card{width:min(680px,100%);background:#fff;border-radius:30px;padding:34px;box-shadow:0 25px 80px rgba(0,0,0,.28);border-top:8px solid #ce6b22}.icp-attendance-card h1{margin:8px 0 10px;color:#102f57;font-size:clamp(26px,4vw,42px);line-height:1.1}.icp-attendance-time{font-weight:900;color:#ce6b22}.icp-attendance-form{display:grid;gap:12px;margin-top:18px}.icp-attendance-form label{font-weight:850;color:#243447}.icp-attendance-form input{width:100%;box-sizing:border-box;margin-top:6px;border:1px solid #d9e1ec;border-radius:16px;padding:13px 15px;font-size:16px}.icp-attendance-form button{border:0;border-radius:999px;background:#102f57;color:#fff;padding:13px 18px;font-weight:900;cursor:pointer;margin-top:6px}.icp-attendance-result{margin-top:16px;font-size:18px;color:#0f766e;font-weight:900}.icp-attendance-result strong{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;background:#dcfce7;border-radius:50%;margin-right:8px}.icp-my-box:after{content:"Session interest is saved for conference statistics and the optional prize game.";display:block;margin-top:10px;color:#64748b;font-size:12px}

/* v1.11 mobile agenda view for time-grid */
.icp-mobile-agenda{display:none}
@media(max-width:760px){
  .icp-grid-day{overflow:visible;padding-bottom:0}
  .icp-schedule-grid{display:none!important}
  .icp-mobile-agenda{display:grid;gap:16px;margin-top:10px}
  .icp-mobile-time-block{position:relative;display:grid;gap:10px;padding-left:0}
  .icp-mobile-time{
    position:sticky;top:0;z-index:3;
    display:inline-flex;align-items:center;justify-content:center;
    width:max-content;max-width:100%;
    background:#102f57;color:#fff;border-radius:999px;
    padding:8px 13px;font-weight:900;font-size:14px;
    box-shadow:0 8px 22px rgba(16,47,87,.18)
  }
  .icp-mobile-session{
    display:block!important;
    border:1px solid #e4ebf3!important;
    border-left:6px solid var(--icp-accent,#ce6b22)!important;
    border-radius:18px!important;
    padding:14px!important;
    background:#fff!important;
    box-shadow:0 10px 28px rgba(15,23,42,.08)!important;
    min-height:0!important;
  }
  .icp-mobile-session:before{height:3px;border-radius:18px 18px 0 0}
  .icp-mobile-session-head{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}
  .icp-mobile-room,.icp-mobile-type{
    display:inline-flex;align-items:center;border-radius:999px;
    padding:5px 9px;font-size:11px;font-weight:900;line-height:1.2
  }
  .icp-mobile-room{background:#102f57;color:#fff}
  .icp-mobile-type{background:#eef4fb;color:#17456f}
  .icp-mobile-session h4{font-size:17px;line-height:1.25;margin:0 0 8px}
  .icp-mobile-session h4 a{text-decoration:none;color:#111827}
  .icp-mobile-session .icp-speaker,
  .icp-mobile-session .icp-chair,
  .icp-mobile-session .icp-grid-meta{font-size:13px;line-height:1.35;margin:5px 0;color:#526070}
  .icp-mobile-session .icp-grid-actions{margin-top:12px}
  .icp-mobile-session .icp-grid-actions button,
  .icp-mobile-session .icp-grid-actions a{font-size:13px;padding:8px 11px}
  .icp-filters{position:relative;z-index:4}
}
@media(max-width:420px){
  .icp-hero h2{font-size:26px}
  .icp-day-title{font-size:21px;margin:24px 0 12px}
  .icp-mobile-session{border-radius:16px!important;padding:12px!important}
}
