:root{--navy:#082d47;--navy2:#0e3b58;--ink:#173244;--muted:#6e7d87;--paper:#f4f1e9;--white:#fff;--line:#dbe1e1;--gold:#ad8748;--green:#397865;--red:#a64c4c;--blue:#3e6f8c;--shadow:0 12px 35px rgba(8,45,71,.08)}*{box-sizing:border-box}body{margin:0;font-family:Inter,"Noto Sans JP",system-ui,sans-serif;background:#edf1f1;color:var(--ink);font-size:14px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.app-shell{display:flex;min-height:100vh}.sidebar{width:244px;background:linear-gradient(180deg,#062a43,#0a3854);color:#fff;position:fixed;inset:0 auto 0 0;padding:25px 16px;display:flex;flex-direction:column;z-index:50}.logo{display:flex;gap:12px;align-items:center;padding:2px 10px 27px;border-bottom:1px solid rgba(255,255,255,.12)}.logo-mark{font-size:35px;color:#d1a95e;transform:rotate(-12deg)}.logo b,.logo small{display:block;letter-spacing:.12em}.logo small{font-size:9px;color:rgba(255,255,255,.55);margin-top:3px}.sidebar nav{padding-top:25px;display:grid;gap:6px}.sidebar nav a{padding:12px 13px;border-radius:8px;color:rgba(255,255,255,.7);display:flex;gap:12px;align-items:center;font-weight:600}.sidebar nav a span{width:22px;text-align:center}.sidebar nav a:hover,.sidebar nav a.active{background:rgba(255,255,255,.11);color:#fff}.sidebar-foot{margin-top:auto;border-top:1px solid rgba(255,255,255,.12);padding:19px 8px 0;display:flex;align-items:center;gap:10px}.sidebar-foot .user-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#d1a95e;color:#082d47;font-weight:800}.sidebar-foot b,.sidebar-foot small{display:block;font-size:12px}.sidebar-foot small{color:rgba(255,255,255,.55);font-size:9px}.sidebar-foot>a{margin-left:auto;font-size:20px}.main{margin-left:244px;width:calc(100% - 244px);padding:0 32px 55px}.topbar{min-height:112px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d7dfdf;margin-bottom:26px}.breadcrumb,.panel-head p,.automation-intro p,.campaign-hero p{font-size:9px;letter-spacing:.18em;color:var(--gold);font-weight:800;margin:0 0 5px}.topbar h1{font-family:Georgia,"Noto Serif JP",serif;font-size:28px;margin:0}.top-actions{display:flex;gap:9px}.btn{border:1px solid transparent;border-radius:6px;min-height:40px;padding:0 15px;display:inline-flex;align-items:center;justify-content:center;font-weight:700;cursor:pointer}.btn.primary{background:var(--navy);color:#fff}.btn.ghost{border-color:#cbd4d5;background:#fff;color:var(--ink)}.btn.instagram{background:linear-gradient(135deg,#7647b8,#ca4b75,#e6a23b);color:#fff}.btn.icon{width:36px;padding:0}.flash{padding:12px 15px;border-radius:6px;margin:-12px 0 18px}.flash.success{background:#dcefe8;color:#205e4c}.flash.error{background:#f5dddd;color:#873a3a}.kpi-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-bottom:18px}.kpi{background:#fff;border:1px solid var(--line);border-radius:10px;padding:19px;box-shadow:var(--shadow)}.kpi span,.kpi small{display:block;color:var(--muted);font-size:11px}.kpi strong{font-family:Georgia,serif;font-size:33px;display:block;margin:6px 0}.kpi.alert{border-top:3px solid var(--red)}.dashboard-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.panel{background:#fff;border:1px solid var(--line);border-radius:10px;padding:22px;box-shadow:var(--shadow);min-width:0}.panel.span-2{grid-column:span 2}.panel.span-3{grid-column:span 3}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:18px}.panel-head h2{font-family:Georgia,"Noto Serif JP",serif;margin:0;font-size:20px}.panel-head>a{font-size:11px;color:var(--blue);font-weight:700}.stage-bars{display:grid;grid-template-columns:1fr 1fr;gap:14px 25px}.stage-bars label{display:flex;justify-content:space-between;font-size:11px;margin-bottom:5px}.stage-bars i,.channel-cards i{height:6px;background:#e7ecec;border-radius:999px;display:block;overflow:hidden}.stage-bars em,.channel-cards em{display:block;height:100%;background:linear-gradient(90deg,var(--navy),#6490a4);border-radius:999px}.rank-list>div{display:grid;grid-template-columns:32px 1fr auto;gap:10px;padding:10px 0;border-bottom:1px solid #edf0f0;align-items:center}.rank-list b{color:var(--gold);font-size:10px}.rank-list strong{font-family:Georgia,serif}.table-wrap{overflow:auto}.table-wrap table{width:100%;border-collapse:collapse;white-space:nowrap}.table-wrap th{text-align:left;color:var(--muted);font-size:10px;padding:10px;border-bottom:1px solid var(--line)}.table-wrap td{padding:12px 10px;border-bottom:1px solid #edf0f0;font-size:12px}.table-wrap td small,.table-wrap td b{display:block}.table-wrap td small{color:var(--muted);max-width:230px;overflow:hidden;text-overflow:ellipsis}.badge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-size:10px;font-weight:800;padding:5px 9px}.badge.stage{background:#e8eff2;color:#365d73}.priority-a{background:#f2dede;color:#983e3e}.priority-b{background:#f4e8d2;color:#8a612b}.priority-c{background:#dfeceb;color:#337064}.priority-d{background:#e9ecee;color:#66737a}.score{display:flex;align-items:center;gap:7px}.score:before{content:"";width:55px;height:5px;background:#e5eaea;border-radius:999px}.score i{position:absolute;height:5px;max-width:55px;background:var(--gold);border-radius:999px}.score b{font-size:10px;margin-left:2px}.donut-wrap{display:flex;align-items:center;gap:22px}.donut{width:120px;height:120px;border-radius:50%;background:conic-gradient(var(--navy) 0 38%,var(--gold) 38% 61%,#5c8b84 61% 78%,#b7c5c7 78%);display:grid;place-items:center;position:relative}.donut:after{content:"";position:absolute;inset:18px;background:#fff;border-radius:50%}.donut span{z-index:1;font-family:Georgia;font-size:23px;text-align:center}.donut small{display:block;font-family:inherit;font-size:8px;color:var(--muted)}.legend{flex:1}.legend>div{display:grid;grid-template-columns:9px 1fr auto;gap:8px;padding:5px 0;font-size:11px}.legend i{width:7px;height:7px;border-radius:50%;background:var(--gold);margin-top:5px}.task-list>a{display:grid;grid-template-columns:22px 1fr auto 60px;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid #edf0f0}.task-check{width:17px;height:17px;border:1px solid #b9c5c7;border-radius:4px}.task-list b,.task-list small{display:block}.task-list small{color:var(--muted);font-size:10px}.task-list time{font-size:10px;color:var(--muted)}.task-list em,.task-board em{font-style:normal;font-size:9px;text-align:center;padding:4px;border-radius:999px;background:#e9eeee}.task-high,.task-urgent{color:var(--red)!important}.filters{margin-bottom:16px}.filter-grid{display:grid;grid-template-columns:2fr repeat(4,1fr) auto;gap:9px}.filter-grid input,.filter-grid select,.admin-form input,.admin-form select,.admin-form textarea,.compact-form input,.compact-form select{width:100%;padding:10px 11px;border:1px solid #cfd9da;border-radius:6px;background:#fff;color:var(--ink)}.search{position:relative}.search span{position:absolute;left:12px;top:11px;color:var(--muted)}.search input{padding-left:32px}.bulk-actions{display:flex;gap:8px}.pagination{display:flex;gap:5px;justify-content:center;margin-top:18px}.pagination a{width:34px;height:34px;border:1px solid var(--line);display:grid;place-items:center;border-radius:5px}.pagination a.active{background:var(--navy);color:#fff}.form-panel{max-width:1000px}.admin-form label,.compact-form label{display:block;font-size:11px;font-weight:700;margin-bottom:14px}.admin-form label input,.admin-form label select,.admin-form label textarea,.compact-form label input,.compact-form label select{margin-top:6px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.admin-form fieldset{border:0;padding:0;margin:8px 0 18px}.admin-form legend{font-weight:700;font-size:11px;margin-bottom:8px}.check-row{display:flex;gap:20px}.form-actions{display:flex;justify-content:flex-end;gap:8px}.lead-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:18px}.back{font-size:11px;color:var(--muted)}.lead-title{display:flex;gap:13px;align-items:center;margin-top:10px}.lead-title h2{font-family:Georgia,"Noto Serif JP",serif;font-size:28px;margin:0}.lead-title p{margin:4px 0 0;color:var(--muted)}.lead-actions{display:flex;gap:8px}.lead-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(290px,.8fr);gap:18px}.lead-main,.lead-side{display:grid;gap:18px;align-content:start}.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.contact-grid>div{background:#f5f7f6;border-radius:7px;padding:13px;min-height:87px}.contact-grid span,.contact-grid small{display:block;color:var(--muted);font-size:9px}.contact-grid b{display:block;margin:5px 0;font-size:12px;overflow-wrap:anywhere}.contact-grid a,.mini-copy{font-size:9px;color:var(--blue);border:0;background:none;padding:0;cursor:pointer}.timeline{position:relative}.timeline:before{content:"";position:absolute;left:6px;top:7px;bottom:0;width:1px;background:#d5dddd}.timeline article{display:grid;grid-template-columns:14px 115px 1fr;gap:12px;margin:0 0 20px;position:relative}.timeline article>i{width:13px;height:13px;border:3px solid #fff;background:var(--gold);border-radius:50%;box-shadow:0 0 0 1px #cdd7d8;z-index:1}.timeline time{font-size:9px;color:var(--muted)}.timeline-meta{display:flex;align-items:center;gap:8px}.timeline-meta em{font-size:9px;font-style:normal;color:var(--green)}.timeline p{white-space:normal;margin:9px 0;font-size:12px}.timeline small{color:var(--muted);font-size:9px}.sticky-card{position:sticky;top:18px}.compact-form .btn{width:100%}.detail-list{margin:0}.detail-list>div{padding:10px 0;border-bottom:1px solid #edf0f0}.detail-list dt{font-size:9px;color:var(--muted)}.detail-list dd{margin:4px 0 0;font-size:12px}.detail-list dd small{display:block;color:var(--muted);margin-top:3px}.side-tasks>div{display:flex;gap:9px;padding:9px 0;border-bottom:1px solid #edf0f0}.side-tasks>div>span{width:15px;height:15px;border:1px solid #bdc9ca;border-radius:4px}.side-tasks b,.side-tasks small{display:block;font-size:11px}.side-tasks small{color:var(--muted);font-size:9px}.modal{display:none;position:fixed;inset:0;background:rgba(3,25,39,.55);z-index:100;align-items:center;justify-content:center;padding:20px}.modal.show{display:flex}.modal-card{background:#fff;width:min(650px,100%);max-height:90vh;overflow:auto;border-radius:10px;padding:27px;position:relative}.modal-close{position:absolute;right:14px;top:10px;border:0;background:none;font-size:28px}.modal-card h2{font-family:Georgia,serif}.tabs{display:flex;gap:4px;margin-bottom:16px}.tabs a{background:#fff;border:1px solid var(--line);padding:9px 15px;border-radius:6px}.tabs a.active{background:var(--navy);color:#fff}.task-board article{display:grid;grid-template-columns:36px 1fr 140px 70px;gap:12px;padding:13px;border-bottom:1px solid #edf0f0;align-items:center}.task-board form button{width:28px;height:28px;border:1px solid #c4cecf;background:#fff;border-radius:50%;cursor:pointer}.task-board p,.task-board small{margin:3px 0;color:var(--muted);font-size:10px}.task-board time{font-size:10px}.content-split{display:grid;grid-template-columns:1.5fr .8fr;gap:18px}.template-list{display:grid;gap:12px}.template-list article{border:1px solid var(--line);border-radius:8px;padding:16px}.template-list h3{margin:9px 0 4px}.template-list p{margin:0;color:var(--muted)}.template-list pre{white-space:pre-wrap;background:#f4f6f5;padding:12px;border-radius:5px;font-size:11px;max-height:150px;overflow:auto}.hint{font-size:10px;color:var(--muted)}.automation-intro,.campaign-hero{background:linear-gradient(135deg,var(--navy),#145073);color:#fff;border-radius:11px;padding:28px;margin-bottom:18px;display:flex;justify-content:space-between;align-items:center;gap:25px}.automation-intro h2,.campaign-hero h2{font-family:Georgia,"Noto Serif JP",serif;font-size:28px;margin:5px 0 8px}.automation-intro span,.campaign-hero span{color:rgba(255,255,255,.72)}.automation-flow{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.automation-flow b{font-size:10px;border:1px solid rgba(255,255,255,.25);padding:9px;border-radius:5px}.automation-flow i{font-style:normal;color:#d2ad67}.rule-list article{display:grid;grid-template-columns:45px 1fr 55px;gap:13px;align-items:center;border-bottom:1px solid #edf0f0;padding:15px 0}.rule-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:#f5e9d3;color:#8e6527}.rule-list h3{margin:0 0 4px}.rule-list p{margin:0;color:var(--muted);font-size:10px}.rule-list code{display:inline-block;background:#f3f5f5;font-size:9px;margin:6px 5px 0 0;padding:5px}.rule-list .inactive{opacity:.5}.toggle{width:47px;height:25px;border:0;border-radius:999px;background:#cbd3d4;padding:3px;cursor:pointer}.toggle i{display:block;width:19px;height:19px;border-radius:50%;background:#fff;transition:.2s}.toggle.on{background:var(--green)}.toggle.on i{margin-left:22px}.roadmap{margin-top:18px}.roadmap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.roadmap-grid article{background:#f5f7f6;padding:16px;border-radius:7px}.roadmap-grid ul,.security-list{padding-left:18px;line-height:1.9;font-size:11px}.channel-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.channel-cards article{background:#f5f7f6;padding:16px;border-radius:8px}.channel-cards span{font-size:11px}.channel-cards strong{font-family:Georgia;font-size:30px;display:block;margin:7px 0}.channel-cards p{font-size:10px;color:var(--muted)}.workflow{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;list-style:none;padding:0}.workflow li{background:#f5f7f6;padding:16px;border-radius:7px;position:relative}.workflow li:not(:last-child):after{content:"→";position:absolute;right:-9px;top:43%;z-index:2;color:var(--gold)}.workflow b,.workflow span{display:block}.workflow span{color:var(--muted);font-size:10px;margin-top:8px}.upload-box{border:2px dashed #cad4d5;padding:25px;text-align:center;border-radius:8px}.upload-box label span,.upload-box label small{display:block;margin:7px}.upload-box input{max-width:100%}.csv-columns{margin:15px 0;padding:12px;background:#f5f7f6;border-radius:6px}.csv-columns b,.csv-columns code{display:block}.csv-columns code{font-size:10px;margin-top:5px;overflow-wrap:anywhere}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.integration-list article{display:grid;grid-template-columns:38px 1fr auto;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid #edf0f0}.integration-list article>span{width:34px;height:34px;border-radius:7px;background:#e9eff1;display:grid;place-items:center;font-weight:800}.integration-list b,.integration-list small{display:block}.integration-list small{font-size:9px;color:var(--muted)}.integration-list em{font-style:normal;color:var(--red);font-size:9px}.empty{color:var(--muted)}.login-body{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#062a43,#0d4a69)}.login-card{width:min(430px,calc(100% - 30px));background:#fff;padding:38px;border-radius:12px;box-shadow:0 30px 70px rgba(0,0,0,.22)}.login-brand{text-align:center}.login-brand span{font-size:45px;color:var(--gold)}.login-brand b,.login-brand small{display:block;letter-spacing:.15em}.login-card h1{text-align:center;font-family:Georgia,"Noto Serif JP",serif}.login-card>p{text-align:center;color:var(--muted);font-size:12px}.login-card form label{display:block;font-size:11px;font-weight:700;margin:13px 0}.login-card form input{width:100%;padding:12px;margin-top:6px;border:1px solid #ccd6d7;border-radius:6px}.login-card form .btn{width:100%;margin-top:10px}.demo-note{display:block;color:var(--muted);font-size:9px;text-align:center;margin-top:15px}.mobile-menu{display:none}@media(max-width:1100px){.kpi-grid{grid-template-columns:repeat(3,1fr)}.filter-grid{grid-template-columns:1fr 1fr 1fr}.contact-grid{grid-template-columns:1fr 1fr}.workflow{grid-template-columns:1fr 1fr}.channel-cards{grid-template-columns:1fr 1fr}}@media(max-width:820px){.sidebar{transform:translateX(-100%);transition:.2s}.sidebar.open{transform:translateX(0)}.main{margin-left:0;width:100%;padding:0 16px 35px}.mobile-menu{display:inline;border:0;background:none;font-size:20px}.topbar{min-height:90px}.top-actions{display:none}.kpi-grid,.dashboard-grid,.content-split,.settings-grid,.lead-layout{grid-template-columns:1fr}.panel.span-2,.panel.span-3{grid-column:auto}.kpi-grid{grid-template-columns:1fr 1fr}.stage-bars{grid-template-columns:1fr}.filter-grid{grid-template-columns:1fr}.lead-header{align-items:flex-start}.lead-actions{flex-direction:column}.contact-grid,.form-grid{grid-template-columns:1fr}.roadmap-grid,.channel-cards{grid-template-columns:1fr}.automation-intro,.campaign-hero{align-items:flex-start;flex-direction:column}.workflow{grid-template-columns:1fr}.workflow li:after{display:none}.task-board article{grid-template-columns:32px 1fr}.task-board time,.task-board em{grid-column:2}.timeline article{grid-template-columns:14px 1fr}.timeline time{grid-column:2}.donut-wrap{flex-direction:column}.sticky-card{position:static}}
.field-help{display:block;margin-top:5px;color:var(--muted);font-size:9px;font-weight:400}

label[hidden]{display:none!important}


/* v1.7 — lead detail right rail */
.lead-side{
  position:sticky;
  top:18px;
  align-self:start;
  max-height:calc(100vh - 36px);
  overflow-y:auto;
  overflow-x:hidden;
  padding-right:5px;
  scrollbar-gutter:stable;
}
.lead-side .sticky-card{position:static;top:auto}
.lead-side::-webkit-scrollbar{width:7px}
.lead-side::-webkit-scrollbar-thumb{background:#c3cdcf;border-radius:999px}
.lead-side::-webkit-scrollbar-track{background:transparent}
@media(max-width:820px){
  .lead-side{
    position:static;
    max-height:none;
    overflow:visible;
    padding-right:0;
  }
}


/* v1.8 — safe lead deletion */
.btn.danger{
  background:#fff;
  border-color:#d7a8a8;
  color:var(--red);
}
.btn.danger:hover{
  background:var(--red);
  border-color:var(--red);
  color:#fff;
}
.delete-card{max-width:520px}
.danger-kicker{
  margin:0 0 6px;
  color:var(--red);
  font-size:9px;
  font-weight:800;
  letter-spacing:.18em;
}
.delete-warning{
  color:var(--muted);
  line-height:1.8;
  font-size:12px;
}
.delete-warning b{color:var(--ink)}
.delete-actions{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  margin-top:22px;
}
