:root{--t:#5ce1e6;--td:#1cbcc5;--ts:#eafcfd;--p:#ff5aa7;--ps:#fff0f7;--n:#17263b;--tx:#33495a;--m:#83929e;--l:#e6edf0;--bg:#f7fafb;--w:#fff;--sh:0 14px 40px rgba(37,77,92,.08)}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,"Noto Sans JP","Segoe UI",sans-serif;background:var(--bg);color:var(--tx)}button,input,select,textarea{font:inherit}button{cursor:pointer}.sidebar{position:fixed;inset:0 auto 0 0;width:250px;padding:25px 16px 16px;background:linear-gradient(180deg,#c8f8f7,#eafcfc 48%,#f8ffff);display:flex;flex-direction:column;overflow-y:auto;z-index:50}.brand{padding:0 14px 20px}.logo{font-size:31px;font-weight:950;letter-spacing:-2px;color:#121d2c}.logo span{color:var(--p)}.product{color:#1aaeb7;font-size:12px;font-weight:900;letter-spacing:3px}.brand small{color:#708c93;font-size:9px}.sidebar nav{display:grid;gap:5px}.nav-item{border:0;background:transparent;border-radius:16px;padding:10px 12px;display:grid;grid-template-columns:28px 1fr;gap:9px;align-items:center;text-align:left;min-height:52px;color:#405666;transition:.18s;position:relative}.nav-item:hover,.nav-item.active{background:#fff;box-shadow:0 9px 26px rgba(35,135,143,.12);transform:translateY(-1px)}.nav-item.active:before{content:"";position:absolute;left:0;width:4px;height:28px;border-radius:5px;background:linear-gradient(var(--p),var(--t))}.nav-item i{font-style:normal;width:28px;height:28px;border-radius:9px;background:rgba(255,255,255,.65);display:grid;place-items:center;color:#18acb5}.nav-item b{font-size:11px;display:block}.nav-item small{font-size:8px;color:#7f969d;display:block;margin-top:3px}.sidebar-bottom{margin-top:auto;padding-top:18px}.profile{background:rgba(255,255,255,.85);border:1px solid #fff;border-radius:17px;padding:11px;display:flex;gap:9px;align-items:center;box-shadow:0 8px 22px rgba(40,140,148,.08)}.avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--t),var(--p));color:#fff;font-weight:900}.profile b,.profile small{display:block}.profile b{font-size:9px}.profile small{font-size:8px;color:#82949b;margin-top:2px}.profile em{display:inline-block;font-style:normal;font-size:7px;color:#d73b82;background:var(--ps);padding:2px 7px;border-radius:20px;margin-top:3px}.sidebar footer{display:flex;justify-content:space-between;padding:10px 4px 0;color:#7d9399;font-size:7px}.sidebar footer b{color:#1aa7b0}.main{margin-left:250px;min-height:100vh}.topbar{height:118px;background:#fff;border-bottom:1px solid #eef3f5;padding:23px 34px;display:flex;justify-content:space-between;align-items:center;gap:20px;position:sticky;top:0;z-index:30}.topbar p,.label{margin:0;color:var(--p);font-size:8px;font-weight:900;letter-spacing:1.4px}.topbar h1{margin:3px 0 2px;font-size:31px;color:var(--n);letter-spacing:-1px}.topbar small{font-size:10px;color:#8b99a4}.top-actions{display:flex;gap:8px;align-items:center}.btn{border:0;border-radius:12px;padding:10px 14px;font-size:10px;font-weight:850}.btn.light{background:#fff;border:1px solid #dfe8eb;color:#4d6372}.btn.grad{background:linear-gradient(110deg,var(--td),var(--t) 55%,#ff78b8);color:#fff;box-shadow:0 8px 20px rgba(65,202,208,.2)}.btn.danger{background:#ef476f;color:#fff}.btn.wide{width:100%;margin-top:13px}.bell{width:38px;height:38px;border-radius:12px;border:1px solid #e4ecef;background:#fff;position:relative}.bell span{position:absolute;right:-4px;top:-5px;width:17px;height:17px;border-radius:50%;background:var(--p);color:#fff;display:grid;place-items:center;font-size:7px}.content{padding:25px 34px 44px}.page{display:none}.page.active{display:block}.hero{background:#fff;border:1px solid var(--l);border-radius:25px;padding:28px 31px;display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:30px;align-items:center;box-shadow:var(--sh);overflow:hidden}.hero h2,.inq-hero h2{color:var(--n);margin:6px 0 11px;font-size:34px;letter-spacing:-1.6px}.hero h2 span,.inq-hero h2 span{color:var(--p)}.hero>div>p:not(.label){font-size:11px;color:#7d8d99;line-height:1.8}.ok{display:block;margin-top:15px;color:#5e7881!important}.ok:first-letter{color:#27bb83}.score{display:grid;grid-template-columns:140px 1fr;gap:17px;align-items:center}.ring{width:136px;height:136px;border-radius:50%;padding:11px;background:conic-gradient(var(--p) 0 30%,var(--td) 30% 82%,#e9eff1 82%)}.ring>div{height:100%;border-radius:50%;background:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center}.ring small{font-size:7px;color:#8696a0}.ring b{font-size:34px;color:var(--p);line-height:1}.ring span{font-size:8px;color:#8f9ca6}.ring em{font-style:normal;font-size:7px;color:#1f9e72;background:#e8f9f2;padding:2px 7px;border-radius:20px;margin-top:4px}.forecast{padding-left:17px;border-left:1px solid var(--l)}.forecast small{display:block;color:#8796a1;font-size:8px}.forecast b{display:block;color:var(--n);font-size:19px;margin:6px 0}.forecast span{font-size:8px;color:#22a777;font-weight:800}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin:16px 0}.kpis article{background:#fff;border:1px solid var(--l);border-radius:18px;padding:16px;display:flex;gap:11px;align-items:center;box-shadow:0 8px 22px rgba(46,78,92,.04)}.kpis i{font-style:normal;width:39px;height:39px;border-radius:12px;background:var(--ts);display:grid;place-items:center;color:#18adb6}.kpis small{display:block;color:#8796a1;font-size:8px}.kpis b{display:block;font-size:22px;color:var(--n)}.kpis span{font-size:7px;color:#55a77f}.dash-grid{display:grid;grid-template-columns:1.45fr .75fr;gap:16px}.panel{background:#fff;border:1px solid var(--l);border-radius:20px;box-shadow:0 8px 24px rgba(46,78,92,.04)}.dash-grid>.panel{padding:19px}.panel-head{display:flex;justify-content:space-between;align-items:center}.panel-head h3{margin:3px 0 0;color:var(--n);font-size:15px}.badge{background:var(--ts);color:#18a7b0;padding:4px 9px;border-radius:20px;font-size:9px;font-weight:900}.mission-list{display:grid;gap:8px;margin-top:13px}.mission{border:1px solid #eef2f4;border-radius:14px;padding:10px 11px;display:grid;grid-template-columns:33px 1fr auto;gap:9px;align-items:center}.mission i{font-style:normal;width:33px;height:33px;border-radius:10px;background:#f0fbfc;display:grid;place-items:center}.mission b{font-size:10px;display:block}.mission small{font-size:8px;color:#8b99a4}.mission em{font-style:normal;background:var(--ps);color:#d83c83;border-radius:20px;padding:3px 8px;font-size:7px;font-weight:850}.spark{color:var(--p);font-size:18px}.ai-box{margin-top:13px;padding:15px;border-radius:16px;background:linear-gradient(140deg,#effeff,#fff2f8)}.ai-box b{font-size:10px}.ai-box p{font-size:9px;color:#607780;line-height:1.6}.ai-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:10px}.ai-metrics div{border:1px solid #edf2f4;border-radius:11px;padding:9px;text-align:center}.ai-metrics small{font-size:7px;color:#8897a2;display:block}.ai-metrics b{font-size:17px;color:var(--n)}.inq-hero{background:linear-gradient(115deg,#fff,#f3ffff 70%,#fff1f8);border:1px solid var(--l);border-radius:23px;padding:21px 25px;display:flex;align-items:center;justify-content:space-between;gap:20px}.inq-hero h2{font-size:27px}.inq-hero p:not(.label){font-size:10px;color:#7f8e99}.inq-kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin:14px 0}.inq-kpis article{background:#fff;border:1px solid var(--l);border-radius:15px;padding:13px 15px}.inq-kpis small{display:block;color:#8796a1;font-size:8px}.inq-kpis b{font-size:23px;color:var(--n)}.filters{padding:11px;display:grid;grid-template-columns:minmax(230px,1fr) 165px 145px 145px auto;gap:7px}.search{height:37px;border:1px solid #dde6ea;border-radius:10px;padding:0 10px;display:flex;align-items:center;gap:6px;color:#83939d;background:#fbfcfd}.search input{border:0;outline:0;background:transparent;width:100%;font-size:9px}.filters select{height:37px;border:1px solid #dde6ea;border-radius:10px;background:#fff;padding:0 8px;color:#526775;font-size:9px}.table-card{margin-top:11px;overflow:hidden}.table-head{padding:16px 18px;border-bottom:1px solid #edf2f4}.table-head>div:last-child{display:flex;align-items:center;gap:8px;color:#8797a2;font-size:8px}.mini{border:1px solid #dfe7ea;background:#fff;border-radius:8px;padding:5px 9px;font-size:8px;color:#506574}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:1010px}th{text-align:left;background:#fafcfd;color:#82919c;font-size:7px;padding:9px 11px;border-bottom:1px solid #edf2f4}td{padding:10px 11px;border-bottom:1px solid #f0f3f5;font-size:9px}tbody tr:hover{background:#fbffff}.company b{display:block;color:#263a4b;font-size:9px}.company small,.sub{display:block;color:#8998a3;font-size:7px;margin-top:3px}.priority{font-size:7px;font-weight:850;display:inline-flex;gap:4px;align-items:center}.priority:before{content:"";width:6px;height:6px;border-radius:50%}.priority.high{color:#d83c83}.priority.high:before{background:var(--p)}.priority.medium{color:#bd8717}.priority.medium:before{background:#f0b73c}.priority.low{color:#218fa4}.priority.low:before{background:var(--td)}.status{display:inline-block;border-radius:20px;padding:3px 7px;font-size:7px;font-weight:850}.new{background:#fff0f7;color:#d63e82}.working{background:#eafcfc;color:#168f98}.meeting{background:#f3efff;color:#7259c4}.won{background:#eaf9f1;color:#21976a}.hold{background:#fff8e7;color:#ad7816}.lost{background:#f1f3f4;color:#737f87}.row-btn{border:1px solid #e0e8eb;background:#fff;border-radius:7px;padding:5px 7px;font-size:7px;color:#516572;margin-right:3px}.empty{text-align:center;padding:38px}.empty b{color:#526674}.empty p{font-size:9px;color:#8e9da7}.placeholder{background:#fff;border:1px solid var(--l);border-radius:23px;padding:48px;text-align:center}.placeholder h2{font-size:30px;color:var(--n);margin:7px}.placeholder p:not(.label){font-size:10px;color:#8998a3}.drawer-bg{position:fixed;inset:0;background:rgba(13,29,40,.25);opacity:0;visibility:hidden;z-index:80;transition:.2s}.drawer-bg.open{opacity:1;visibility:visible}.drawer{position:fixed;right:0;top:0;bottom:0;width:min(510px,94vw);background:#fff;z-index:90;box-shadow:-18px 0 55px rgba(20,44,58,.18);transform:translateX(105%);transition:.24s;overflow-y:auto}.drawer.open{transform:none}.drawer-head,.modal-head{padding:20px 22px;border-bottom:1px solid var(--l);display:flex;justify-content:space-between;align-items:flex-start;position:sticky;top:0;background:#fff;z-index:2}.drawer-head h2,.modal-head h2{font-size:20px;color:var(--n);margin:4px 0 0}.close{border:1px solid #e0e8eb;background:#fff;border-radius:10px;width:33px;height:33px;font-size:17px;color:#72828d}.drawer-body{padding:19px 22px 30px}.summary{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.summary div,.info div{background:#f8fafb;border-radius:11px;padding:9px}.summary small,.info small{display:block;font-size:7px;color:#8998a3}.summary b,.info b{display:block;font-size:9px;margin-top:3px}.ai-suggest{margin-top:13px;background:linear-gradient(135deg,#effeff,#fff2f8);border-radius:14px;padding:13px}.ai-suggest b{font-size:9px}.ai-suggest p,.note{font-size:9px;line-height:1.6;color:#5f7480}.detail{border-top:1px solid #edf2f4;padding-top:14px;margin-top:14px}.detail h3{font-size:11px;color:#2a3f50}.info{display:grid;grid-template-columns:1fr 1fr;gap:8px}.note{background:#f8fafb;border-radius:11px;padding:10px;white-space:pre-wrap}.activity{border-left:2px solid var(--t);padding-left:9px;margin:8px 0}.activity b{display:block;font-size:9px}.activity small{font-size:7px;color:#8a99a4}.drawer-actions{display:flex;gap:7px;margin-top:17px}.modal-bg,.confirm-bg{position:fixed;inset:0;background:rgba(15,31,43,.35);display:flex;align-items:center;justify-content:center;z-index:120;opacity:0;visibility:hidden;transition:.18s;padding:20px}.modal-bg.open,.confirm-bg.open{opacity:1;visibility:visible}.modal{width:min(670px,96vw);max-height:92vh;overflow:auto;background:#fff;border-radius:21px;box-shadow:0 30px 85px rgba(20,45,60,.25)}.modal form{padding:19px 22px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.form-grid label{font-size:8px;color:#607482;font-weight:800;display:grid;gap:5px}.form-grid .full{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea{border:1px solid #dce5e9;border-radius:9px;padding:9px;outline:none;color:#3c5160;font-size:9px}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:var(--td);box-shadow:0 0 0 3px rgba(92,225,230,.14)}.modal-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:15px}.confirm{width:min(410px,94vw);background:#fff;border-radius:19px;padding:23px;box-shadow:0 30px 80px rgba(20,45,60,.24)}.confirm h3{color:var(--n);margin:0}.confirm p{font-size:9px;color:#84929d}.confirm>div{display:flex;justify-content:flex-end;gap:7px}.toast{position:fixed;right:22px;bottom:22px;background:#173c46;color:#fff;padding:10px 14px;border-radius:11px;font-size:9px;z-index:200;opacity:0;transform:translateY(15px);transition:.2s}.toast.show{opacity:1;transform:none}@media(max-width:1100px){.hero{grid-template-columns:1fr}.score{max-width:420px}.dash-grid{grid-template-columns:1fr}.kpis{grid-template-columns:repeat(2,1fr)}.filters{grid-template-columns:1fr 1fr}.search{grid-column:1/-1}.inq-kpis{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.sidebar{width:205px}.main{margin-left:205px}.topbar{height:auto;padding:17px}.top-actions{flex-wrap:wrap;justify-content:flex-end}.content{padding:17px}.hero h2{font-size:27px}.inq-hero{align-items:flex-start;flex-direction:column}.inq-kpis{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}}

/* v0.7 Sales Pipeline */
.pipeline-hero{background:linear-gradient(115deg,#fff,#f3ffff 70%,#fff1f8);border:1px solid var(--l);border-radius:23px;padding:21px 25px;display:flex;align-items:center;justify-content:space-between;gap:20px}.pipeline-hero h2{color:var(--n);margin:6px 0 8px;font-size:27px;letter-spacing:-1.2px}.pipeline-hero h2 span{color:var(--p)}.pipeline-hero p:not(.label){font-size:10px;color:#7f8e99}.pipeline-kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin:14px 0}.pipeline-kpis article{background:#fff;border:1px solid var(--l);border-radius:15px;padding:13px 15px}.pipeline-kpis small{display:block;color:#8796a1;font-size:8px}.pipeline-kpis b{font-size:23px;color:var(--n)}.pipeline-toolbar{padding:13px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:11px}.pipeline-toolbar h3{margin:3px 0 0;color:var(--n);font-size:15px}.pipeline-tools{display:flex;gap:7px}.pipeline-tools input,.pipeline-tools select{height:36px;border:1px solid #dce6ea;border-radius:10px;background:#fff;padding:0 10px;font-size:9px;color:#526775;outline:none}.pipeline-tools input{width:230px}.pipeline-board{display:grid;grid-template-columns:repeat(5,minmax(210px,1fr));gap:10px;overflow-x:auto;padding-bottom:8px}.pipe-stage{background:#f4f8f9;border:1px solid #e4ecef;border-radius:17px;min-height:410px;padding:10px;transition:.15s}.pipe-stage.drag-over{border-color:var(--td);background:#edffff;box-shadow:0 0 0 3px rgba(92,225,230,.12)}.pipe-stage-head{display:flex;align-items:center;justify-content:space-between;padding:4px 3px 10px}.pipe-stage-head h3{font-size:10px;color:#304959;margin:0}.pipe-stage-head span{min-width:22px;height:22px;border-radius:20px;background:#fff;color:#6e818d;display:grid;place-items:center;font-size:8px;font-weight:900}.pipe-list{display:grid;gap:8px}.pipe-card{background:#fff;border:1px solid #e5ecef;border-radius:13px;padding:11px;box-shadow:0 5px 16px rgba(46,78,92,.04);cursor:grab}.pipe-card:active{cursor:grabbing}.pipe-card.hot{border-top:3px solid var(--p)}.pipe-card h4{margin:0;color:#263c4d;font-size:10px}.pipe-card .pipe-product{font-size:8px;color:#68808d;margin:5px 0}.pipe-card-meta{display:flex;justify-content:space-between;gap:6px;font-size:7px;color:#8a99a4}.pipe-card-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #f0f3f4;margin-top:8px;padding-top:8px}.pipe-score{font-size:7px;font-weight:900;color:#d93d83;background:#fff0f7;padding:3px 7px;border-radius:20px}.pipe-open{border:0;background:transparent;color:#159ca6;font-size:8px;font-weight:850}.pipe-empty{border:1px dashed #d9e4e8;border-radius:12px;padding:18px 8px;text-align:center;color:#9aa8b0;font-size:8px}.transfer-confirm{border-top:4px solid var(--t)}
@media(max-width:1100px){.pipeline-kpis{grid-template-columns:repeat(3,1fr)}.pipeline-board{grid-template-columns:repeat(5,230px)}}

.deals-hero{display:flex;align-items:center;justify-content:space-between;padding:28px 32px;border:1px solid #e3ebee;border-radius:20px;background:linear-gradient(115deg,#fff 0%,#f2ffff 62%,#fff3f8 100%);margin-bottom:14px}.deals-hero h2{font-size:28px;margin:7px 0;color:#0d2944}.deals-hero h2 span{color:var(--p)}.deals-hero p{font-size:10px;color:#6b7f8b}.deals-kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:14px}.deals-kpis article{background:#fff;border:1px solid #e3ebee;border-radius:16px;padding:15px 17px}.deals-kpis small{display:block;color:#7d8f99;font-size:8px}.deals-kpis b{display:block;color:#102d48;font-size:20px;margin-top:4px}.deals-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.deal-tools{display:flex;gap:8px}.deal-tools input,.deal-tools select{height:38px;border:1px solid #dce6ea;border-radius:11px;background:#fff;padding:0 11px;font-size:9px;outline:none}.deal-tools input{width:250px}.deal-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.deal-card{background:#fff;border:1px solid #e2eaed;border-radius:17px;padding:16px;box-shadow:0 7px 22px rgba(46,78,92,.04)}.deal-card.won{border-top:3px solid #21b889}.deal-card.lost{opacity:.72}.deal-card-top{display:flex;justify-content:space-between;gap:12px}.deal-card-top h3{font-size:14px;margin:7px 0 3px;color:#17344d}.deal-card-top p{font-size:9px;color:#6d818d;margin:0}.deal-card-top>b{font-size:17px;color:#17344d}.deal-status{display:inline-block;font-size:7px;font-weight:900;padding:4px 8px;border-radius:20px;background:#e9fbfc;color:#0a9ba5}.deal-status.won{background:#e9faf3;color:#15986f}.deal-status.lost{background:#f1f2f4;color:#7d8790}.deal-progress{height:6px;background:#eef2f4;border-radius:10px;overflow:hidden;margin:14px 0 11px}.deal-progress span{display:block;height:100%;background:linear-gradient(90deg,var(--t),var(--p));border-radius:10px}.deal-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;font-size:8px;color:#7b8c96}.deal-meta b{color:#344e60}.deal-card-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #eef2f4;margin-top:12px;padding-top:11px}.deal-card-bottom small{font-size:8px;color:#d63f83;font-weight:800}.deal-empty{grid-column:1/-1;text-align:center;background:#fff;border:1px dashed #d9e4e8;border-radius:17px;padding:45px;color:#84959f}.deal-empty b{color:#324d60}.deal-empty p{font-size:9px}.deal-modal{max-width:650px}@media(max-width:1100px){.deals-kpis{grid-template-columns:repeat(3,1fr)}.deal-cards{grid-template-columns:1fr}}

/* v0.9 Clients + Contracts */
.module-hero{padding:28px 32px;border:1px solid #e3ebee;border-radius:20px;background:linear-gradient(115deg,#fff 0%,#f2ffff 62%,#fff3f8 100%);margin-bottom:14px}.module-hero h2{font-size:28px;margin:7px 0;color:#0d2944}.module-hero h2 span{color:var(--p)}.module-hero p:not(.label){font-size:10px;color:#6b7f8b}.module-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}.module-kpis.four{grid-template-columns:repeat(4,1fr)}.module-kpis article{background:#fff;border:1px solid #e3ebee;border-radius:16px;padding:15px 17px}.module-kpis small{display:block;color:#7d8f99;font-size:8px}.module-kpis b{display:block;color:#102d48;font-size:20px;margin-top:4px}.module-toolbar{display:flex;justify-content:space-between;align-items:center;padding:14px 17px;margin-bottom:12px}.module-toolbar h3{margin:3px 0 0;color:#17344d}.module-toolbar input{width:280px;height:38px;border:1px solid #dce6ea;border-radius:11px;padding:0 11px;font-size:9px;outline:none}.client-cards,.contract-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.client-card,.contract-card{background:#fff;border:1px solid #e2eaed;border-radius:17px;padding:16px;box-shadow:0 7px 22px rgba(46,78,92,.04)}.client-card h3,.contract-card h3{margin:7px 0 3px;color:#17344d;font-size:14px}.client-card p,.contract-card p{margin:0;color:#6d818d;font-size:9px}.client-status,.contract-status{display:inline-block;font-size:7px;font-weight:900;padding:4px 8px;border-radius:20px;background:#fff4df;color:#a87316}.client-status.active,.contract-status.active{background:#e9faf3;color:#15986f}.client-info{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:14px}.client-info span,.contract-meta span{font-size:8px;color:#7b8c96}.client-info b,.contract-meta b{display:block;color:#344e60;margin-top:2px}.contract-top{display:flex;justify-content:space-between;gap:12px}.contract-top>b{font-size:17px;color:#17344d}.contract-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;border-top:1px solid #eef2f4;border-bottom:1px solid #eef2f4;margin:13px 0;padding:11px 0}.module-empty{grid-column:1/-1;text-align:center;background:#fff;border:1px dashed #d9e4e8;border-radius:17px;padding:45px;color:#84959f}.module-empty b{color:#324d60}.module-empty p{font-size:9px}@media(max-width:1100px){.module-kpis,.module-kpis.four{grid-template-columns:repeat(2,1fr)}.client-cards,.contract-cards{grid-template-columns:1fr}}
/* v1.0 UI polish */
.card-actions{display:flex;justify-content:flex-end;align-items:center;margin-top:10px}.card-actions .row-btn{margin-right:0;font-size:9px;font-weight:800;padding:7px 10px;color:#168f98}.contract-meta span{font-size:9px;font-weight:700;color:#718692}.contract-meta b{font-size:11px;font-weight:900;color:#17344d}.contract-meta b.unset{color:#e09a24}.contract-card h3{font-size:16px}.contract-top>b{font-size:20px}.contract-status,.client-status,.revenue-status{font-size:8px;padding:5px 9px}.contract-status.preparing{background:#fff4df;color:#a87316}.contract-status.ended{background:#eef2f4;color:#61727e}.contract-status.cancelled{background:#fff0f3;color:#d64967}.revenue-status{display:inline-block;border-radius:20px;font-weight:900;background:#fff4df;color:#a87316}.revenue-status.paid{background:#e9faf3;color:#15986f}.revenue-status.partial{background:#eafcfc;color:#168f98}.date-quick{display:flex;gap:5px;align-items:center;flex-wrap:wrap}.date-quick input{min-width:145px;flex:1}.date-quick button{border:1px solid #cfe7e9;background:#f1ffff;color:#168f98;border-radius:8px;padding:8px 9px;font-size:8px;font-weight:900;white-space:nowrap}.date-quick button:hover{background:#dffbfc}.revenue-status.unpaid{background:#fff0f7;color:#d63e82}

/* v1.1 Analytics + AI Manager */
.analytics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.analytics-panel{padding:18px}.funnel-chart{display:grid;gap:12px;margin-top:16px}.funnel-row{display:grid;grid-template-columns:72px 1fr 34px;align-items:center;gap:10px;font-size:9px;color:#607783}.funnel-row>div{height:10px;background:#eef4f5;border-radius:20px;overflow:hidden}.funnel-row i{display:block;height:100%;background:linear-gradient(90deg,var(--t),var(--p));border-radius:20px}.funnel-row b{text-align:right;color:#17344d}.ranking-list{display:grid;gap:8px;margin-top:14px}.rank-row{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:9px;padding:10px;border:1px solid #edf2f3;border-radius:12px}.rank-row em{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#e9fbfc;color:#148e97;font-style:normal;font-weight:900;font-size:8px}.rank-row span{font-size:9px;font-weight:800;color:#344e60}.rank-row b{font-size:10px;color:#17344d}.payment-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:15px}.payment-summary>div:not(.payment-meter){padding:12px;border-radius:12px;background:#f8fbfc}.payment-summary small{display:block;font-size:8px;color:#7a8e99}.payment-summary b{display:block;margin-top:4px;color:#17344d}.payment-meter{grid-column:1/-1;height:9px;background:#eef2f4;border-radius:20px;overflow:hidden}.payment-meter i{display:block;height:100%;background:linear-gradient(90deg,var(--t),var(--p))}.ai-manager-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:12px}.ai-brief{background:linear-gradient(145deg,#fff,#f2ffff 65%,#fff2f8)}.ai-brief-text{padding:16px;border:1px solid #e3edef;border-radius:15px;background:rgba(255,255,255,.75);margin-top:14px}.ai-brief-text h4{font-size:17px;color:#17344d;margin:0 0 9px}.ai-brief-text p{font-size:10px;line-height:1.8;color:#607783}.ai-brief-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}.ai-brief-metrics span{padding:10px;background:#fff;border-radius:11px;font-size:8px;color:#748792}.ai-brief-metrics b{display:block;color:#17344d;font-size:13px;margin-top:3px}.ai-action-list{display:grid;gap:8px;margin-top:14px}.ai-action{display:grid;grid-template-columns:30px 1fr;gap:10px;padding:11px;border:1px solid #e9eff1;border-radius:12px}.ai-action em{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:#e9fbfc;color:#148e97;font-style:normal;font-weight:900}.ai-action.high{border-left:4px solid var(--p)}.ai-action.urgent{border-left:4px solid #e04a72;background:#fff7fa}.ai-action b{font-size:10px;color:#263f52}.ai-action p{font-size:8px;color:#70838f;margin:4px 0 0}.activity-timeline{display:grid;gap:8px}.activity-row{display:grid;grid-template-columns:18px 1fr;gap:10px;background:#fff;border:1px solid #e3ebee;border-radius:14px;padding:13px 15px}.activity-dot{width:10px;height:10px;border-radius:50%;background:var(--t);box-shadow:0 0 0 4px #eaffff;margin-top:4px}.activity-row small{font-size:8px;color:#899aa4}.activity-row b{display:block;font-size:11px;color:#263f52;margin-top:3px}.activity-row p{font-size:9px;color:#687c88;margin:4px 0 0}.mini-empty{padding:24px;text-align:center;color:#8b9aa3;font-size:9px;border:1px dashed #dce6e9;border-radius:12px}@media(max-width:1100px){.analytics-grid,.ai-manager-grid{grid-template-columns:1fr}}

/* v1.2 Documents Center */
.documents-hero{display:flex;justify-content:space-between;align-items:center}.document-tools{display:flex;gap:8px}.document-tools input,.document-tools select{height:38px;border:1px solid #dce6ea;border-radius:11px;background:#fff;padding:0 11px;font-size:9px;outline:none}.document-tools input{width:280px}.document-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.document-card{background:#fff;border:1px solid #e2eaed;border-radius:18px;padding:17px;box-shadow:0 8px 24px rgba(34,75,91,.05)}.document-card-head{display:flex;justify-content:space-between;gap:14px}.document-card-head h3{margin:8px 0 3px;font-size:16px;color:#17344d}.document-card-head p{margin:0;font-size:9px;color:#6d818d}.document-card-head>b{font-size:9px;color:#76909b;white-space:nowrap}.document-type{display:inline-flex;padding:5px 9px;border-radius:20px;font-size:8px;font-weight:900}.document-type.estimate{background:#e9fbfc;color:#168f98}.document-type.contract{background:#fff3df;color:#ad7416}.document-type.invoice{background:#fff0f7;color:#d63e82}.document-amount{display:flex;justify-content:space-between;align-items:end;padding:16px 0 13px;border-bottom:1px solid #edf2f3}.document-amount small{font-size:8px;color:#7b8e99}.document-amount strong{font-size:22px;color:#17344d}.document-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:13px 0}.document-meta span{font-size:8px;color:#7b8e99}.document-meta b{display:block;margin-top:3px;font-size:10px;color:#344e60}.document-actions{display:flex;justify-content:flex-end;align-items:center;gap:7px;border-top:1px solid #edf2f3;padding-top:12px}.document-actions .convert{background:#eaffff;color:#168f98;border-color:#bfe9ec}.document-actions .row-btn{margin-left:auto}.document-total-preview{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(110deg,#efffff,#fff2f8);border:1px solid #dceff0;border-radius:14px;padding:15px 17px;margin-top:14px}.document-total-preview span{font-size:10px;font-weight:800;color:#54707e}.document-total-preview b{font-size:22px;color:#17344d}.document-modal{max-width:720px}@media(max-width:1100px){.document-cards{grid-template-columns:1fr}.documents-hero{align-items:flex-start;gap:18px}.document-tools{flex-wrap:wrap}.document-tools input{width:220px}}

/* v1.2.1 Revenue KPI refinement */
.kpis .revenue-kpi{align-items:flex-start}.kpis .revenue-kpi>div{min-width:0;flex:1}.kpis .revenue-kpi b{font-size:20px;line-height:1.25;letter-spacing:-.45px;white-space:nowrap;margin:2px 0 5px}.kpis .revenue-kpi .revenue-target,.kpis .revenue-kpi .revenue-rate{display:block;font-size:7px;line-height:1.55}.kpis .revenue-kpi .revenue-target{color:#718995}.kpis .revenue-kpi .revenue-rate{color:#20a776;font-weight:900}.kpis .revenue-kpi i{margin-top:1px}@media(max-width:1280px){.kpis .revenue-kpi b{font-size:17px}}@media(max-width:1100px){.kpis .revenue-kpi b{font-size:21px}}

/* v1.2.2 Sidebar readability upgrade */
.sidebar{width:278px;padding:25px 16px 16px}
.main{margin-left:278px}
.brand{padding-left:17px;padding-right:17px}
.logo{font-size:34px}
.product{font-size:13px;letter-spacing:3.2px}
.brand small{font-size:10px}
.sidebar nav{gap:7px}
.nav-item{grid-template-columns:38px 1fr;gap:12px;min-height:64px;padding:11px 14px;border-radius:18px}
.nav-item i{width:38px;height:38px;border-radius:12px;font-size:18px}
.nav-item b{font-size:14px;line-height:1.25;letter-spacing:-.15px}
.nav-item small{font-size:10px;line-height:1.3;margin-top:4px}
.nav-item.active:before{height:36px;width:5px}
.profile{padding:13px;gap:11px;border-radius:19px}
.avatar{width:43px;height:43px}
.profile b{font-size:11px}
.profile small{font-size:9px}
.profile em{font-size:8px;padding:3px 8px}
.sidebar footer{font-size:8px;padding-top:12px}
@media(max-width:900px){.sidebar{width:238px}.main{margin-left:238px}.nav-item{grid-template-columns:34px 1fr;min-height:58px;padding:10px 11px}.nav-item i{width:34px;height:34px;font-size:16px}.nav-item b{font-size:12px}.nav-item small{font-size:9px}}


/* v1.2.3 Final sidebar scale + command center polish */
.sidebar{
  width:306px;
  padding:28px 18px 18px;
  background:linear-gradient(180deg,#bff7f6 0%,#dcfbfb 46%,#f5ffff 100%);
  box-shadow:12px 0 34px rgba(34,150,157,.08);
}

/* v1.0.101: 営業パイプラインは契約までの4段階 */
.pipeline-kpis{grid-template-columns:repeat(4,minmax(0,1fr)) !important}
.pipeline-board{grid-template-columns:repeat(4,minmax(0,1fr)) !important}
@media(max-width:1100px){.pipeline-board{grid-template-columns:repeat(4,230px) !important}}
.main{margin-left:306px}
.brand{padding:0 18px 22px}
.logo{font-size:38px;line-height:1;font-weight:950}
.product{font-size:14px;letter-spacing:3.5px;margin-top:5px}
.brand small{font-size:11px;line-height:1.55}
.sidebar nav{gap:9px}
.nav-item{
  grid-template-columns:46px 1fr;
  gap:14px;
  min-height:76px;
  padding:13px 16px;
  border-radius:21px;
  border:1px solid rgba(255,255,255,.38);
}
.nav-item:hover,.nav-item.active{
  background:rgba(255,255,255,.96);
  box-shadow:0 13px 30px rgba(24,139,147,.16);
  transform:translateY(-2px);
}
.nav-item.active{border-color:rgba(92,225,230,.48)}
.nav-item.active:before{height:44px;width:6px;left:-1px}
.nav-item i{
  width:46px;height:46px;border-radius:15px;
  font-size:22px;
  background:rgba(255,255,255,.8);
  box-shadow:inset 0 0 0 1px rgba(92,225,230,.18);
}
.nav-item b{font-size:17px;line-height:1.2;letter-spacing:-.25px;font-weight:900}
.nav-item small{font-size:12px;line-height:1.35;margin-top:5px;font-weight:650;color:#718b94}
.profile{padding:15px;gap:13px;border-radius:21px}
.avatar{width:48px;height:48px;font-size:14px}
.profile b{font-size:13px}
.profile small{font-size:10px;margin-top:3px}
.profile em{font-size:9px;padding:4px 9px;margin-top:5px}
.sidebar footer{font-size:9px;padding:13px 5px 0}

.kpis article{min-height:104px;padding:18px 17px;gap:13px}
.kpis i{width:44px;height:44px;border-radius:14px;font-size:17px}
.kpis small{font-size:9px}
.kpis b{font-size:26px;line-height:1.15}
.kpis span{font-size:8px}
.kpis .revenue-kpi b{font-size:22px;margin:2px 0 4px}
.kpis .revenue-kpi .revenue-target,.kpis .revenue-kpi .revenue-rate{font-size:8px}
.revenue-progress{height:7px;background:#edf3f4;border-radius:999px;overflow:hidden;margin-top:8px;width:100%}
.revenue-progress i{display:block;width:79%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--td),var(--t) 62%,var(--p));box-shadow:none}

.dash-grid>.panel{padding:22px}
.panel-head h3{font-size:17px}
.mission{min-height:62px;padding:12px 13px;grid-template-columns:40px 1fr auto}
.mission i{width:40px;height:40px;border-radius:12px;font-size:16px}
.mission b{font-size:11px}
.mission small{font-size:9px;line-height:1.5}
.mission em{font-size:8px;padding:4px 9px}
.ai-box{padding:18px}
.ai-box b{font-size:11px}
.ai-box p{font-size:10px}
.ai-metrics div{padding:11px}
.ai-metrics small{font-size:8px}
.ai-metrics b{font-size:19px}

@media(max-width:1280px){
  .sidebar{width:286px;padding-left:15px;padding-right:15px}
  .main{margin-left:286px}
  .nav-item{grid-template-columns:42px 1fr;min-height:70px;padding:11px 13px}
  .nav-item i{width:42px;height:42px;font-size:20px}
  .nav-item b{font-size:15px}
  .nav-item small{font-size:11px}
  .kpis .revenue-kpi b{font-size:19px}
}
@media(max-width:900px){
  .sidebar{width:250px}
  .main{margin-left:250px}
  .nav-item{grid-template-columns:36px 1fr;min-height:60px}
  .nav-item i{width:36px;height:36px;font-size:17px}
  .nav-item b{font-size:13px}
  .nav-item small{font-size:9px}
}


/* v1.2.4 Practical command center */
.mission-list{gap:9px}
.mission-rich{grid-template-columns:72px minmax(210px,1fr) 82px 76px 58px 88px;gap:10px;min-height:74px;padding:10px 12px}
.mission-priority{display:flex;flex-direction:column;gap:3px}.mission-priority strong{font-size:9px;letter-spacing:.4px;color:#a8b4ba}.mission-priority.high strong{color:var(--p)}.mission-priority.medium strong{color:#f0a225}.mission-priority span{font-size:8px;font-weight:900;color:#718692}.mission-main b{font-size:11px}.mission-main small{display:block;margin-top:4px}.mission-owner{display:flex;align-items:center;gap:6px}.mission-owner>span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--t),var(--p));color:white;font-size:9px;font-weight:900}.mission-owner b{font-size:9px;white-space:nowrap}.mission-deadline,.mission-time{display:flex;flex-direction:column}.mission-deadline small,.mission-time small{font-size:7px;color:#8a99a3}.mission-deadline b,.mission-time b{font-size:9px;margin-top:3px;color:#365165}.mission-deadline.urgent b{color:#e74486}.mission-action{border:1px solid #7edee2;background:#fff;color:#16aab2;border-radius:9px;padding:7px 8px;font-size:8px;font-weight:900;white-space:nowrap}.mission-action:hover{background:#eaffff;transform:translateY(-1px)}
.ai-metrics-four{grid-template-columns:repeat(4,1fr)}.ai-metrics div{position:relative}.ai-metrics span{display:block;font-size:7px;color:#8b9aa4}.ai-metrics .money{font-size:13px;color:#14a8b0}.ai-suggestion-list{display:grid;gap:7px;margin-top:11px}.ai-suggestion-list button{display:grid;grid-template-columns:24px 1fr;gap:8px;text-align:left;border:1px solid #edf1f3;border-radius:11px;background:#fff;padding:8px}.ai-suggestion-list button:hover{background:#f8ffff}.ai-suggestion-list i{font-style:normal;color:#13aab3;font-weight:900}.ai-suggestion-list span{font-size:8px;color:#637984;line-height:1.45}.ai-suggestion-list b{display:block;color:#263f52;font-size:9px;margin-bottom:2px}.ai-empty{font-size:8px;color:#82929d}.topbar h1{font-size:34px}.topbar small{font-size:11px}
@media(max-width:1450px){.mission-rich{grid-template-columns:64px minmax(180px,1fr) 70px 66px 50px 78px}.mission-owner b{display:none}.mission-action{font-size:7px;padding:7px 5px}}
@media(max-width:1180px){.mission-rich{grid-template-columns:58px 1fr 64px 72px}.mission-time,.mission-owner{display:none}.ai-metrics-four{grid-template-columns:repeat(2,1fr)}}

/* v2.0 operational additions */
.btn.compact{padding:10px 14px;font-size:13px;white-space:nowrap}.bell{min-width:54px}.bell #storageStatus{font-size:9px}.revenue-target strong,.revenue-rate strong{font:inherit}.document-card{transition:.2s transform,.2s box-shadow}.document-card:hover{transform:translateY(-2px)}@media(max-width:1180px){.top-actions .compact{display:none}}


/* v2.0.2 approved Command Center master design */
.kpis-six{grid-template-columns:repeat(6,minmax(0,1fr));gap:11px}.kpis-six article{min-width:0}.kpis-six article:nth-child(4){grid-column:auto}.kpis i.purple{background:#f4efff;color:#6d2bd8}.kpis i.green{background:#ebfaf3;color:#0ba66b}.kpis i.pink{background:#fff0f7;color:#f22883}.kpis i.orange{background:#fff5e9;color:#f28b00}.kpis .unit{display:inline;font-size:9px;color:inherit}.pink-text{color:#f22883!important}.orange-text{color:#ef8500!important}.teal-text{color:#08a7b1!important}.forecast span{display:block;margin-top:5px}.forecast .forecast-compare{border-top:1px dashed #dce5e9;padding-top:8px;margin-top:10px;color:#667d89}.approved-dashboard-grid{grid-template-columns:minmax(0,1.55fr) minmax(340px,.72fr);align-items:stretch}.dashboard-left-stack{display:grid;gap:14px;min-width:0}.mission-panel{min-height:415px}.mission-table-head{display:grid;grid-template-columns:68px minmax(190px,1fr) 56px 72px 52px 42px 42px 84px;gap:8px;padding:12px 10px 6px;color:#758894;font-size:7px;font-weight:850;border-bottom:1px solid #edf2f4;margin-top:10px}.mission-table-head span{text-align:center}.mission-table-head span:nth-child(2){text-align:left}.mission-table{gap:0;margin-top:0}.mission-master{grid-template-columns:68px minmax(190px,1fr) 56px 72px 52px 42px 42px 84px;gap:8px;border:0;border-bottom:1px solid #edf2f4;border-radius:0;min-height:68px;padding:9px 10px}.mission-master:last-child{border-bottom:0}.mission-priority strong{font-size:11px;letter-spacing:-1px}.mission-priority.high strong{color:#ff348f}.mission-priority.medium strong{color:#f39a00}.mission-priority.low strong{color:#10aeb6}.mission-priority span{display:block;font-size:7px;font-weight:900;margin-top:2px}.mission-main b{font-size:9px}.mission-main small{font-size:7px}.mission-owner{display:grid;place-items:center}.mission-owner span{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:8px;font-weight:900;box-shadow:0 4px 10px rgba(40,70,90,.14)}.owner-blue{background:#168df0}.owner-green{background:#04ad67}.owner-purple{background:#7020c7}.owner-orange{background:#ff7b00}.owner-pink{background:#f13a91}.owner-teal{background:#08aab4}.mission-deadline,.mission-time{text-align:center}.mission-deadline b,.mission-time b{font-size:8px}.mission-deadline.urgent b{color:#ff377f}.mission-contact{border:0;background:transparent;color:#acb7bd;text-decoration:none;display:grid;place-items:center;font-size:15px;pointer-events:none}.mission-contact.active{color:#05a643;pointer-events:auto}.mission-contact.mail.active{color:#168df0}.mission-action{border:1px solid #24c1ca;background:#fff;color:#0aa6af;border-radius:8px;padding:7px 5px;font-size:7px;font-weight:900}.mission-all{display:block;margin:9px auto 0;border:0;background:transparent;color:#0aa8b1;font-size:8px;font-weight:900}.approved-ai{display:flex;flex-direction:column;padding:22px!important}.morning-brief{margin-top:14px;padding:16px;border-radius:15px;background:linear-gradient(135deg,#f0fbfd,#fff7fb)}.morning-brief>b{font-size:12px;color:#079eaa}.morning-brief p{font-size:8px;color:#607681;margin:7px 0}.morning-brief ul{padding-left:16px;margin:0;display:grid;gap:5px}.morning-brief li{font-size:8px;line-height:1.45;color:#344d5c}.approved-ai .ai-metrics{margin-top:11px}.approved-ai .ai-metrics div{padding:10px 5px}.approved-ai .ai-metrics b{font-size:16px}.approved-ai .ai-metrics .money{font-size:12px}.ai-recommend{border:1px solid #edf2f4;border-radius:12px;padding:11px;margin-top:11px;flex:1}.ai-recommend>b{font-size:9px}.approved-ai .ai-suggestion-list{margin-top:7px}.approved-ai .ai-suggestion-list button{padding:6px;border:0}.approved-ai .ai-suggestion-list button span{font-size:7px}.today-schedule-panel{padding:13px 16px}.today-schedule-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:7px;margin-top:9px}.today-schedule-grid button{border:1px solid #edf2f4;background:#fff;border-radius:12px;padding:9px 7px;display:grid;grid-template-columns:auto 1fr;gap:3px 5px;align-items:center;text-align:left}.today-schedule-grid i{font-style:normal;color:#0ca9b2}.today-schedule-grid i.purple{color:#6d2bd8}.today-schedule-grid i.green{color:#0ba66b}.today-schedule-grid i.orange{color:#f28b00}.today-schedule-grid span{font-size:7px;font-weight:850}.today-schedule-grid b{grid-column:1/-1;font-size:17px;color:#17263b;text-align:center}.today-schedule-grid b small{font-size:7px;margin-left:2px}.today-schedule-grid em{grid-column:1/-1;font-style:normal;font-size:6px;color:#0aa7b0;text-align:center;font-weight:850}
@media(max-width:1450px){.kpis-six{grid-template-columns:repeat(3,1fr)}.mission-table-head,.mission-master{grid-template-columns:62px minmax(170px,1fr) 48px 66px 46px 36px 36px 74px}.approved-dashboard-grid{grid-template-columns:minmax(0,1.35fr) minmax(320px,.75fr)}}
@media(max-width:1180px){.approved-dashboard-grid{grid-template-columns:1fr}.today-schedule-grid{grid-template-columns:repeat(3,1fr)}.mission-table-head{display:none}.mission-master{grid-template-columns:62px 1fr 50px 70px 74px}.mission-time,.mission-contact{display:none}.kpis-six{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.today-schedule-grid{grid-template-columns:repeat(2,1fr)}.mission-master{grid-template-columns:58px 1fr 44px 70px}.mission-deadline{display:none}}


/* v2.0.5 approved master stability fix */
.approved-ai .ai-suggestion-list button{grid-template-columns:22px minmax(0,1fr);width:100%;align-items:start}
.approved-ai .ai-suggestion-list button i{display:grid;place-items:center;width:22px;height:22px;color:#08a7b1;font-style:normal;font-weight:900}
.approved-ai .ai-suggestion-list button span{min-width:0;white-space:normal;word-break:normal;overflow-wrap:anywhere;writing-mode:horizontal-tb;line-height:1.55}
.approved-ai .ai-suggestion-list button b{white-space:normal;word-break:keep-all}


/* v2.5.0 Sales-ready product master / shot-stock revenue */
.hero-actions,.revenue-tools{display:flex;gap:10px;align-items:center}.revenue-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:14px 0}.revenue-kpis article{background:#fff;border-radius:16px;padding:17px;box-shadow:0 8px 24px rgba(29,74,91,.07);border:1px solid #edf4f5}.revenue-kpis small{font-size:10px;color:#728994;font-weight:850}.revenue-kpis b{display:block;margin-top:7px;font-size:22px;color:#1e3447}.revenue-type{display:inline-flex;border-radius:999px;padding:5px 10px;font-size:9px;font-weight:900}.revenue-type.shot{background:#fff0f7;color:#e42b80}.revenue-type.stock{background:#eafafa;color:#079fa8}.revenue-card .contract-meta{grid-template-columns:repeat(4,1fr)}.stock-fields{display:none;border:1px solid #dff0f2;background:#f7fdfd;padding:14px;border-radius:14px}.stock-fields.show{display:block}.check-label{display:flex!important;flex-direction:row!important;align-items:center;gap:8px;padding-top:25px}.check-label input{width:auto!important}.revenue-calc-preview{display:flex;justify-content:space-between;align-items:center;margin-top:14px;padding:14px 18px;border-radius:14px;background:linear-gradient(135deg,#eafafa,#fff3f8)}.revenue-calc-preview span{font-size:11px;font-weight:850;color:#607884}.revenue-calc-preview b{font-size:25px;color:#08a7b1}.product-master-modal{max-width:980px}.product-master-layout{display:grid;grid-template-columns:minmax(340px,.85fr) minmax(380px,1.15fr);gap:20px}.product-master-form{padding-right:18px;border-right:1px solid #edf2f4}.product-list-head{display:flex;justify-content:space-between;margin-bottom:10px;color:#314b5c}.product-master-list{display:grid;gap:9px;max-height:480px;overflow:auto;padding-right:5px}.product-master-card{display:flex;justify-content:space-between;gap:12px;align-items:center;border:1px solid #eaf1f3;border-radius:13px;padding:12px;background:#fff}.product-master-card h4{margin:6px 0 2px;font-size:13px}.product-master-card p{margin:0;color:#798d97;font-size:9px}.product-master-card>div:last-child{display:flex;gap:6px}.danger-text{color:#dc3d78!important;border-color:#f5b7d1!important}.payment-status{font-size:9px;font-weight:900;border-radius:999px;padding:5px 9px}.payment-status.paid{background:#e9f9f1;color:#079d62}.payment-status.partial{background:#fff6e8;color:#d67a00}.payment-status.unpaid{background:#fff0f5;color:#d73175}.revenue-payment{display:flex;justify-content:space-between;align-items:center;margin-top:12px}.revenue-payment small{color:#758994;font-size:9px}@media(max-width:1200px){.revenue-kpis{grid-template-columns:repeat(3,1fr)}.product-master-layout{grid-template-columns:1fr}.product-master-form{border-right:0;border-bottom:1px solid #edf2f4;padding:0 0 18px}.revenue-card .contract-meta{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.revenue-kpis{grid-template-columns:repeat(2,1fr)}.hero-actions,.revenue-tools{flex-wrap:wrap}.revenue-tools input{width:100%}}


/* v2.7.0 production finish */
.revenue-kpi-body{min-width:0}.revenue-breakdown{display:flex;gap:8px;flex-wrap:wrap;margin:4px 0 3px}.revenue-breakdown span{font-size:6.5px!important;color:#718792!important;white-space:nowrap}.revenue-breakdown strong{color:#1e4455;font-size:7px}.revenue-kpi .revenue-rate{margin-top:0!important}.ai-action-card span{display:block;min-width:0}.ai-action-card em{display:block;font-style:normal;color:#e13b82;font-size:7px;font-weight:850;margin:2px 0}.ai-action-card small{display:block;color:#637984;font-size:7px;line-height:1.45}.mission-master[data-status="new"]{background:linear-gradient(90deg,rgba(255,244,249,.65),#fff 18%)}.mission-master[data-status="working"]{background:linear-gradient(90deg,rgba(238,251,252,.75),#fff 18%)}


/* v3.0.0 operational completion: client 360, notifications, durability */
.notification-count{position:absolute;right:-4px;top:-6px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:#ff3f91;color:#fff!important;display:grid;place-items:center;font-size:8px!important;font-weight:900;box-shadow:0 4px 10px rgba(255,63,145,.28)}
.bell{position:relative}.notification-modal{max-width:720px}.notification-list{display:grid;gap:10px;max-height:65vh;overflow:auto;padding:2px}.notification-item{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid #e7f0f2;border-radius:14px;padding:13px;background:#fff}.notification-item i{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font-style:normal;background:#eafafa;color:#08a7b1;font-weight:900}.notification-item.urgent i{background:#fff0f6;color:#ee3b85}.notification-item.warning i{background:#fff7e9;color:#e98a00}.notification-item b{display:block;font-size:12px;color:#1d3447}.notification-item p{margin:4px 0 0;font-size:9px;line-height:1.5;color:#6f8590}.notification-item button{border:1px solid #25bec7;background:#fff;color:#079fa8;border-radius:9px;padding:7px 10px;font-size:9px;font-weight:900}.client-card{cursor:pointer}.client-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(29,74,91,.1)}.client-detail-modal{max-width:1060px}.client-360-head{display:grid;grid-template-columns:minmax(0,1fr) repeat(3,minmax(130px,.3fr));gap:12px;margin-bottom:18px}.client-360-title{padding:17px;border-radius:16px;background:linear-gradient(135deg,#ebfbfc,#fff5fa)}.client-360-title h3{margin:0 0 5px;font-size:21px}.client-360-title p{margin:0;color:#718691}.client-360-metric{border:1px solid #e7f0f2;border-radius:16px;padding:14px;background:#fff}.client-360-metric small{font-size:9px;color:#748993}.client-360-metric b{display:block;margin-top:7px;font-size:19px;color:#153247}.client-360-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.client-360-section{border:1px solid #e7f0f2;border-radius:16px;padding:16px;background:#fff;min-width:0}.client-360-section.full{grid-column:1/-1}.client-360-section h4{margin:0 0 12px;font-size:13px}.service-chip{display:flex;justify-content:space-between;gap:10px;align-items:center;border-bottom:1px solid #edf2f4;padding:10px 0}.service-chip:last-child{border-bottom:0}.service-chip span{font-size:10px;color:#617985}.service-chip b{font-size:11px}.timeline-list{display:grid;gap:8px;max-height:260px;overflow:auto}.timeline-item{display:grid;grid-template-columns:90px 70px 1fr;gap:10px;padding:9px;border-radius:10px;background:#f8fbfc}.timeline-item small{color:#718691;font-size:8px}.timeline-item b{font-size:9px}.timeline-item p{margin:0;font-size:9px;color:#506975}.client-contact-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.client-contact-actions a,.client-contact-actions button{border:1px solid #20bdc6;border-radius:9px;background:#fff;color:#079fa8;text-decoration:none;padding:8px 11px;font-size:9px;font-weight:900}.client-card .client-open-hint{display:block;margin-top:9px;color:#09a7b0;font-size:8px;font-weight:900}
@media(max-width:900px){.client-360-head{grid-template-columns:1fr 1fr}.client-360-title{grid-column:1/-1}.client-360-grid{grid-template-columns:1fr}.client-360-section.full{grid-column:auto}.notification-item{grid-template-columns:34px minmax(0,1fr)}.notification-item button{grid-column:2}}


/* v3.1.0 Settings / master management */
.settings-hero{display:flex;justify-content:space-between;align-items:center;padding:30px 34px;border-radius:24px;background:linear-gradient(135deg,#f0fffe,#fff4fb);border:1px solid rgba(35,203,196,.2);box-shadow:0 16px 40px rgba(30,120,125,.08);margin-bottom:22px}.settings-hero h2{font-size:28px;margin:5px 0 8px}.settings-hero h2 span{color:#1cc7c2}.settings-hero p{color:#617579}.master-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:22px}.master-card{border:1px solid rgba(30,190,185,.18);background:#fff;border-radius:19px;min-height:112px;padding:18px;display:grid;grid-template-columns:48px 1fr auto;gap:13px;align-items:center;text-align:left;box-shadow:0 9px 25px rgba(43,114,120,.08);transition:.2s}.master-card:hover{transform:translateY(-3px);box-shadow:0 15px 32px rgba(43,114,120,.14)}.master-card i{font-style:normal;font-size:28px;width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(135deg,#d9fffc,#fff0fa)}.master-card b{display:block;font-size:16px;color:#173b40}.master-card small{display:block;margin-top:5px;color:#789094}.master-card em{font-style:normal;color:#ff4da6;font-weight:800}.company-settings-panel{padding:24px}.company-settings-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;align-items:end}.company-settings-form label{font-size:13px;font-weight:700;color:#466065}.company-settings-form input,.company-settings-form select{width:100%;margin-top:7px}.master-modal{width:min(1040px,94vw)}.master-editor-layout{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(400px,1.1fr);gap:22px}.master-list{max-height:520px;overflow:auto;display:flex;flex-direction:column;gap:9px}.master-list-row{display:grid;grid-template-columns:1fr auto auto auto;gap:10px;align-items:center;padding:13px 14px;border:1px solid #e2f1f1;border-radius:14px;background:#fbffff}.master-list-row b{display:block;color:#21454a}.master-list-row small{display:block;color:#7a9093;margin-top:3px}.master-active{font-size:11px;font-weight:800;color:#1b9e79;background:#e7fff7;padding:5px 8px;border-radius:999px}.master-active.off{color:#899497;background:#f0f2f3}.date-quick{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-top:6px}.date-quick input{flex:1;min-width:150px;margin-top:0!important}.date-quick button{border:1px solid #bfe7e5;background:#effdfc;color:#148a87;border-radius:8px;padding:7px 9px;font-size:11px;font-weight:800;white-space:nowrap}.date-quick button:hover{background:#d7faf7;transform:translateY(-1px)}
@media(max-width:1100px){.master-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.company-settings-form{grid-template-columns:repeat(2,minmax(0,1fr))}.master-editor-layout{grid-template-columns:1fr}}
@media(max-width:720px){.settings-hero{align-items:flex-start;gap:18px;flex-direction:column}.master-grid,.company-settings-form{grid-template-columns:1fr}.master-card{grid-template-columns:44px 1fr auto}}

/* v1.0.128: 管理マスタ画面の文字サイズと配置を見やすく調整 */
.master-modal .modal-head .label{font-size:11px;letter-spacing:.16em}
.master-modal .modal-head h2{font-size:25px}
.master-modal .form-grid label{font-size:14px;font-weight:850;color:#314e5c}
.master-modal .form-grid input,.master-modal .form-grid select,.master-modal .form-grid textarea{font-size:15px;font-weight:700;padding:14px 15px}
.master-modal .check-label{font-size:14px!important}
.master-modal .product-list-head b{font-size:20px}
.master-modal .product-list-head span{font-size:15px;font-weight:800}
.master-modal .master-list-row b{font-size:17px}
.master-modal .master-list-row small{font-size:13px;font-weight:700}
.master-modal .master-active{font-size:13px;padding:7px 11px}
.master-modal .row-btn{font-size:12px;padding:8px 11px}
.master-modal .btn{font-size:13px;padding:12px 17px}
.master-editor-layout.single-settings{align-content:start;padding-top:28px}
.master-editor-layout.single-settings form{margin:0 auto}

/* v1.0.129: 営業担当者ごとの権限割り当て */
.role-assignment-intro{grid-column:1/-1;padding:17px 19px;border-radius:15px;background:linear-gradient(135deg,#ebfbfb,#fff4fa);border:1px solid #dceff0}
.role-assignment-intro b{font-size:18px;color:#173e4d}.role-assignment-intro p{margin:5px 0 0;font-size:13px;font-weight:700;color:#617b86}
.role-assignment-list{grid-column:1/-1;display:grid;gap:11px;margin-top:4px}
.role-assignment-row{display:grid!important;grid-template-columns:minmax(220px,1fr) minmax(190px,.65fr) minmax(230px,1fr);align-items:center;gap:16px;padding:15px 17px;border:1px solid #dfecee;border-radius:15px;background:#fff}
.role-assignment-row span b{display:block;font-size:16px;color:#183b4b}.role-assignment-row span small{display:block;margin-top:5px;font-size:12px;color:#718791}
.role-assignment-row select{margin:0!important}.role-assignment-row em{font-style:normal;font-size:12px;font-weight:750;color:#55727d}
.role-assignment-empty{grid-column:1/-1;padding:34px;text-align:center;border:1px dashed #cadfe2;border-radius:16px}.role-assignment-empty b{font-size:17px}.role-assignment-empty p{font-size:13px;color:#6c818a}
@media(max-width:800px){.role-assignment-row{grid-template-columns:1fr}.role-assignment-row em{margin-top:-7px}}

/* v1.0.130: 権限ごとの利用範囲を画面内に表示 */
.role-permission-guide{grid-column:1/-1;margin-top:8px;padding:18px 20px;border:1px solid #dfeaec;border-radius:17px;background:#fbfefe}
.role-permission-guide h3{margin:0 0 13px;font-size:17px;color:#1d4050}
.role-permission-guide>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.role-permission-guide article{padding:14px 15px;border-radius:13px;border:1px solid #e3edef;background:#fff}
.role-permission-guide article b{display:block;font-size:15px;margin-bottom:6px}.role-permission-guide article p{margin:0;font-size:12px;font-weight:700;line-height:1.65;color:#5c7580}
.role-permission-guide .admin{border-left:5px solid #4e65d6}.role-permission-guide .admin b{color:#4256bd}
.role-permission-guide .manager{border-left:5px solid #10aaa6}.role-permission-guide .manager b{color:#078b88}
.role-permission-guide .sales{border-left:5px solid #ff4c9a}.role-permission-guide .sales b{color:#dc327d}
.role-permission-guide .viewer{border-left:5px solid #82929a}.role-permission-guide .viewer b{color:#5e7079}
@media(max-width:800px){.role-permission-guide>div{grid-template-columns:1fr}}

/* v1.0.131: 権限説明の下に担当者を配置し、設定画面内を確実にスクロール */
.master-editor-layout.single-settings{overflow-y:auto;overscroll-behavior:contain;padding-bottom:24px}
.master-editor-layout.single-settings>form{overflow:visible;min-height:max-content;padding-bottom:30px}
.role-assignment-list>h3{margin:4px 0 2px;font-size:17px;color:#1d4050}

/* v1.0.132: マスタ入力欄の横切れ防止と編集状態の明示 */
.master-editor-layout:not(.single-settings){grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)}
.master-editor-layout>form,.master-modal .form-grid,.master-modal .form-grid>label{min-width:0}
.master-modal .form-grid input,.master-modal .form-grid select,.master-modal .form-grid textarea{display:block;width:100%;min-width:0;max-width:100%}
.master-editor-layout>form{overflow-x:hidden}
.master-editor-layout>form.is-editing{box-shadow:inset 4px 0 0 rgba(28,188,197,.45)}
@media(max-width:900px){.master-editor-layout:not(.single-settings){grid-template-columns:1fr}.master-list-pane{padding:0 18px 18px}}

/* v3.1.1 Settings balance finish */
.settings-page{padding-top:0!important}.settings-overview{padding:26px 28px 30px;border-radius:24px;background:#fff;box-shadow:0 16px 42px rgba(31,93,105,.08);border:1px solid #e7f0f2}.settings-overview-head{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:18px;align-items:center;margin-bottom:24px}.settings-overview-icon{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;font-size:28px;color:#0aa8b0;background:linear-gradient(135deg,#e9fbfb,#fff2fa)}.settings-overview-head h2{margin:3px 0 5px;font-size:25px;color:#0ea7a7}.settings-overview-head p:last-child{margin:0;color:#627985}.master-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin:0}.master-card{position:relative;min-height:210px;padding:20px;border:1px solid #dfeaec;background:#fff;border-radius:17px;display:flex;flex-direction:column;align-items:flex-start;gap:0;text-align:left;box-shadow:0 8px 20px rgba(40,88,99,.045);transition:.2s}.master-card:hover{transform:translateY(-3px);border-color:#b9dddd;box-shadow:0 14px 30px rgba(40,88,99,.11)}.master-card i{font-style:normal;width:50px;height:50px;border-radius:15px;display:grid;place-items:center;font-size:25px;margin-bottom:14px}.master-card b{display:block;font-size:16px;line-height:1.35;color:#152f43}.master-card small{display:block;margin-top:8px;font-size:11px;line-height:1.6;color:#647b86}.master-card em{margin-top:auto;font-style:normal;font-size:15px;font-weight:900;color:#ff3f91}.master-card strong{position:absolute;right:18px;bottom:17px;font-size:25px;font-weight:400;color:#23445c}.master-card.tone-purple i{background:#f0eafa;color:#6e2ca3}.master-card.tone-teal i{background:#e4fafa;color:#0aa5a4}.master-card.tone-blue i{background:#e9f6fb;color:#11a2c6}.master-card.tone-pink i{background:#fff0f7;color:#eb3f8c}.master-card.tone-green i{background:#eaf9ef;color:#09a95e}.master-card.tone-cyan i{background:#e7fafa;color:#0aa9b7}.master-card.tone-sky i{background:#eaf7fb;color:#0da6c7}.master-card.tone-indigo i{background:#eef0fb;color:#4b5ec8}.master-card.tone-link i{background:#edf6ff;color:#328ed1}.master-card.tone-orange i{background:#fff3ea;color:#ff7f1d}.master-card.tone-ai i{background:#edf4ff;color:#3979d9}.master-card.tone-company i{background:#e9fbf7;color:#13aa95}.master-editor-layout.single-settings{grid-template-columns:1fr}.master-editor-layout .hidden{display:none}.master-editor-layout.single-settings form{max-width:760px;margin:auto;width:100%}
@media(max-width:1500px){.master-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:1180px){.master-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:860px){.master-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-overview-head{grid-template-columns:52px 1fr}.settings-overview-head .btn{grid-column:1/-1;justify-self:start}}@media(max-width:560px){.master-grid{grid-template-columns:1fr}.master-card{min-height:175px}.settings-overview{padding:20px}.settings-overview-head{grid-template-columns:1fr}.settings-overview-icon{display:none}}


/* v3.2.1 product master modal finish */
.product-master-badges{display:flex;align-items:center;gap:7px;margin-bottom:7px}.product-master-card.is-disabled{opacity:.68;background:#f7f9fa}.product-master-card.is-disabled h4{color:#718087}.product-master-form select[name="active"]{font-weight:800}.master-list-row,.product-master-card{transition:transform .18s ease,box-shadow .18s ease}.master-list-row:hover,.product-master-card:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(40,88,99,.08)}

/* v3.2.1 Product Master modal finish */
.product-master-modal{
  width:min(1320px,calc(100vw - 48px));
  max-width:none;
  height:min(860px,calc(100vh - 48px));
  max-height:none;
  overflow:hidden;
  display:flex;
  flex-direction:column;
}
.product-master-modal .modal-head{flex:0 0 auto}
.product-master-layout{
  min-height:0;
  flex:1 1 auto;
  display:grid;
  grid-template-columns:minmax(420px,44%) minmax(0,56%);
  gap:0;
  overflow:hidden;
}
.product-master-form{
  min-width:0;
  height:100%;
  overflow-y:auto;
  overflow-x:hidden;
  padding:26px 28px 22px!important;
  border-right:1px solid #e8eff2;
}
.product-master-results{
  min-width:0;
  height:100%;
  display:flex;
  flex-direction:column;
  padding:18px 24px 16px;
  overflow:hidden;
}
.product-list-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:0 0 12px;
  color:#213a4d;
}
.product-list-head>b{font-size:18px;white-space:nowrap}
.product-master-tools{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0}
.product-search{
  width:min(300px,34vw);
  height:40px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 12px;
  border:1px solid #dce7eb;
  border-radius:12px;
  background:#fff;
}
.product-search span{color:#8aa0ab;font-size:18px;line-height:1}
.product-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#314b5c;font-size:12px}
.product-master-tools select,.product-master-pagination select{
  height:40px;
  border:1px solid #dce7eb;
  border-radius:12px;
  background:#fff;
  color:#314b5c;
  padding:0 12px;
  font-weight:800;
  font-size:11px;
}
.product-master-list{
  flex:1 1 auto;
  min-height:0;
  display:flex;
  flex-direction:column;
  gap:10px;
  max-height:none;
  overflow-y:auto;
  overflow-x:hidden;
  padding:2px 5px 8px 0;
}
.product-master-card{
  flex:0 0 auto;
  width:100%;
  min-width:0;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  padding:13px 14px 13px 16px;
  border-radius:15px;
}
.product-master-card>div:first-child{min-width:0}
.product-master-card h4{margin:7px 0 3px;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.product-master-card p{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.product-master-card>div:last-child{display:flex;align-items:center;gap:7px;white-space:nowrap}
.product-master-card .row-btn{font-size:9px;padding:7px 10px;margin:0}
.product-master-price{font-size:13px;font-weight:900;color:#20384b;white-space:nowrap;margin-left:auto}
.product-master-card-actions{display:grid!important;grid-template-columns:auto auto;gap:7px!important;align-items:center}
.product-master-card-actions .product-master-price{grid-column:1/-1;text-align:right}
.product-master-pagination{
  flex:0 0 auto;
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding-top:11px;
  border-top:1px solid #edf2f4;
}
.product-master-pagination>button{
  width:34px;height:34px;border:1px solid #dbe7ea;border-radius:10px;background:#fff;color:#526b78;font-size:19px
}
.product-master-pagination>button:disabled{opacity:.35;cursor:not-allowed}
.product-master-pagination>span{min-width:60px;text-align:center;color:#1aa7b0;font-size:11px;font-weight:900}
.product-master-pagination>label{position:absolute;right:24px;display:flex;align-items:center;gap:7px;color:#5d7580;font-size:10px;font-weight:800}
.product-master-pagination select{height:34px;padding:0 8px}
.product-master-pagination{display:none!important}
.product-master-notes{margin-top:20px;padding-top:14px;border-top:1px solid #edf2f4;color:#5d7580;font-size:10px;line-height:1.6}
.product-master-notes p{margin:3px 0}
.product-master-form .form-grid{gap:14px}
.product-master-form .form-grid label{font-size:10px}
.product-master-form .form-grid input,.product-master-form .form-grid select,.product-master-form .form-grid textarea{font-size:12px;padding:12px;border-radius:12px}
.product-master-form .modal-actions{margin-top:18px}
.product-master-empty{display:grid;place-items:center;min-height:220px;text-align:center;color:#81939c}

@media(max-width:1100px){
  .product-master-modal{width:min(960px,calc(100vw - 28px));height:min(900px,calc(100vh - 28px));overflow:auto}
  .product-master-layout{grid-template-columns:1fr;overflow:visible}
  .product-master-form{height:auto;overflow:visible;border-right:0;border-bottom:1px solid #e8eff2}
  .product-master-results{height:560px;overflow:hidden}
  .product-master-pagination>label{position:static;margin-left:auto}
}
@media(max-width:700px){
  .product-master-modal{width:calc(100vw - 16px);height:calc(100vh - 16px)}
  .product-master-form,.product-master-results{padding-left:15px!important;padding-right:15px!important}
  .product-list-head{align-items:flex-start;flex-direction:column}
  .product-master-tools{width:100%}
  .product-search{width:100%}
  .product-master-card{grid-template-columns:1fr}
  .product-master-card-actions{grid-template-columns:1fr 1fr!important}
  .product-master-card-actions .product-master-price{text-align:left}
  .product-master-pagination{justify-content:flex-start;flex-wrap:wrap}
  .product-master-pagination>label{width:100%;margin-left:0}
}

/* v3.4.0 CSV import + inquiry routing */
.import-modal,.routing-modal{width:min(1120px,calc(100vw - 40px));max-height:calc(100vh - 40px);overflow:hidden}
.import-body{padding:22px 26px 26px;overflow:auto;max-height:calc(100vh - 130px)}
.import-step{display:grid;grid-template-columns:220px minmax(320px,1fr);gap:14px 18px;align-items:end}
.import-step label,.csv-mapping-fields label,.routing-form label{display:flex;flex-direction:column;gap:7px;color:#405c69;font-size:11px;font-weight:850}
.import-step input,.import-step select,.csv-mapping-fields select,.routing-form input,.routing-form select{height:42px;border:1px solid #dce7eb;border-radius:12px;background:#fff;padding:0 12px;color:#314b5c;font:inherit}
.import-help{grid-column:1/-1;margin:0;color:#7c909a;font-size:10px;line-height:1.7}
.csv-mapping-area{margin-top:20px;padding-top:18px;border-top:1px solid #edf2f4}
.csv-mapping-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0 20px}
.csv-preview-wrap{max-height:250px;border:1px solid #e8eff2;border-radius:14px}
.csv-preview-wrap table{min-width:700px}
.routing-layout{display:grid;grid-template-columns:360px minmax(0,1fr);min-height:520px}
.routing-form{padding:24px;border-right:1px solid #e8eff2;overflow:auto}
.routing-form .form-grid{grid-template-columns:1fr}
.routing-results{padding:22px 24px;min-width:0;overflow:auto}
.routing-list{display:flex;flex-direction:column;gap:10px}
.routing-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:10px;align-items:center;padding:13px 14px;border:1px solid #e7eef1;border-radius:14px;background:#fff}
.routing-row>div{min-width:0}.routing-row b{display:block;color:#254252;font-size:13px}.routing-row small{display:block;margin-top:3px;color:#80929b;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:900px){.csv-mapping-fields{grid-template-columns:1fr 1fr}.routing-layout{grid-template-columns:1fr}.routing-form{border-right:0;border-bottom:1px solid #e8eff2}.import-step{grid-template-columns:1fr}}
@media(max-width:620px){.csv-mapping-fields{grid-template-columns:1fr}.routing-row{grid-template-columns:1fr auto}.routing-row .row-btn{grid-row:2}}

/* v3.6.0 Import Center */
.import-template-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:4px}.import-template-actions .btn{min-height:40px}.import-template-link{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.import-step{gap:14px}.import-step>label{min-width:240px}

/* v1.0.63 Import Center layout containment */
.import-modal{width:min(920px,calc(100vw - 32px));max-width:920px;max-height:calc(100vh - 32px);box-sizing:border-box;overflow:hidden}
.import-modal .modal-head{box-sizing:border-box}
.import-modal .import-body{width:100%;min-width:0;box-sizing:border-box;overflow-x:hidden;overflow-y:auto}
.import-modal .import-step{width:100%;min-width:0;grid-template-columns:minmax(190px,220px) minmax(0,1fr);align-items:end}
.import-modal .import-step>label{width:100%;min-width:0;max-width:100%;box-sizing:border-box}
.import-modal .import-step select,.import-modal .import-step input[type="file"]{display:block;width:100%;min-width:0;max-width:100%;box-sizing:border-box}
.import-modal .import-step input[type="file"]{padding:7px 10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.import-modal .import-step input[type="file"]::file-selector-button{max-width:150px;margin-right:10px}
.import-modal .import-template-actions,.import-modal .import-help{grid-column:1/-1;min-width:0}
.import-modal .csv-mapping-area,.import-modal .csv-mapping-fields{min-width:0;max-width:100%}
.import-modal .csv-preview-wrap{width:100%;max-width:100%;overflow:auto}
@media(max-width:720px){
  .import-modal{width:calc(100vw - 16px);max-height:calc(100vh - 16px)}
  .import-modal .modal-head{padding-left:18px;padding-right:18px}
  .import-modal .import-body{padding:18px}
  .import-modal .import-step{grid-template-columns:minmax(0,1fr)}
  .import-modal .import-template-actions,.import-modal .import-help{grid-column:1}
  .import-modal .import-template-actions .btn,.import-modal .import-template-actions .import-template-link{width:100%;box-sizing:border-box}
}

/* v3.7.0 Independent Import Center */
.import-history-list article .import-undo{margin-left:auto;flex:0 0 auto;color:#d83c83;border-color:#ffc3df;background:#fff7fb}
.import-page{padding-top:0}.import-center-hero{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:30px 34px;margin-bottom:20px;border-radius:24px;background:linear-gradient(135deg,#effffe,#fff4fb);border:1px solid rgba(35,203,196,.2);box-shadow:0 16px 40px rgba(30,120,125,.08)}.import-center-hero h2{font-size:28px;margin:5px 0 8px;color:#173b40}.import-center-hero h2 span{color:#18bfb5}.import-center-hero p{color:#617579}.import-center-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.import-feature-card{display:grid;grid-template-columns:70px 1fr;gap:20px;padding:24px;border-radius:22px;background:#fff;border:1px solid #e1eeee;box-shadow:0 10px 28px rgba(40,88,99,.07)}.import-feature-card.apocket{background:linear-gradient(135deg,#fff,#fff4fa)}.import-icon{width:64px;height:64px;border-radius:19px;display:grid;place-items:center;font-size:27px;font-weight:900;color:#fff;background:linear-gradient(135deg,#ff69b1,#ff3f91)}.import-icon.teal{background:linear-gradient(135deg,#36d8d0,#18bfb5)}.import-feature-card h3{margin:4px 0 8px;font-size:20px;color:#173b40}.import-feature-card p{margin:0;color:#6d8189;line-height:1.65}.import-feature-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.import-types-panel,.import-history-panel{padding:24px;margin-bottom:18px}.import-type-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.import-type-grid button{border:1px solid #e1ecee;background:#fff;border-radius:16px;padding:17px;text-align:left;display:grid;grid-template-columns:42px 1fr;column-gap:12px;align-items:center;transition:.18s}.import-type-grid button:hover{transform:translateY(-2px);border-color:#bde4e2;box-shadow:0 10px 24px rgba(38,100,105,.09)}.import-type-grid i{grid-row:1/3;width:42px;height:42px;border-radius:12px;display:grid;place-items:center;font-style:normal;background:#eafaf9;color:#0a9e9a;font-size:20px}.import-type-grid b{font-size:14px;color:#173b40}.import-type-grid small{font-size:10px;color:#7b8f96}.import-history-list{display:flex;flex-direction:column;gap:9px}.import-history-list article{display:grid;grid-template-columns:34px 1fr;gap:12px;align-items:center;padding:12px 14px;border:1px solid #e7eff1;border-radius:13px;background:#fbffff}.import-history-list i{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;font-style:normal;color:#159b7d;background:#e8fff8}.import-history-list b{display:block;color:#24434d}.import-history-list small{display:block;color:#7d9098;margin-top:3px}@media(max-width:1050px){.import-center-grid{grid-template-columns:1fr}.import-type-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.import-center-hero{align-items:flex-start;flex-direction:column;padding:22px}.import-type-grid{grid-template-columns:1fr}.import-feature-card{grid-template-columns:1fr}.import-icon{width:54px;height:54px}}


/* v3.8.0 Inquiry Hub source overview */
.inquiry-source-panel{margin:16px 0 18px;padding:18px 20px}.inquiry-source-panel .panel-head{margin-bottom:12px}.inquiry-source-panel .panel-head small{font-weight:800;color:#1f827f;background:#e8fbf8;border:1px solid #c6f2ec;border-radius:999px;padding:7px 11px}.inquiry-source-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.source-summary-card{border:1px solid #e6ecee;border-radius:15px;padding:12px 14px;background:#fff;box-shadow:0 8px 20px rgba(32,87,87,.05);min-width:0}.source-summary-card b{display:block;font-size:20px;margin-top:4px;color:#243246}.source-summary-card small{display:block;color:#78868d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.source-summary-card.external{background:linear-gradient(135deg,#effffd,#fff5fb);border-color:#d4f5ef}.source-summary-card .new-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#ff5da2;margin-right:6px}.inquiry-new-row{background:linear-gradient(90deg,rgba(92,225,230,.10),rgba(255,255,255,0))}.inquiry-new-badge{display:inline-flex;align-items:center;gap:4px;margin-left:6px;padding:2px 7px;border-radius:999px;font-size:10px;font-weight:900;background:#ffedf6;color:#d92f7a}.notification-item.new-inquiry i{background:#e9fffb;color:#148f87}.notification-item.new-inquiry{border-color:#ccf3ed}@media(max-width:1200px){.inquiry-source-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.inquiry-source-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v1.0.3 Command Center balance fix — approved design preserved */
.approved-dashboard-grid{gap:18px;align-items:start}
.dashboard-left-stack{gap:18px}
.mission-panel{min-height:0;padding-top:24px!important;overflow:hidden}
.mission-panel .panel-head{margin:0 0 4px;align-items:flex-start}
.mission-panel .panel-head .label{margin:0 0 7px;line-height:1.2}
.mission-panel .panel-head h3{margin:0;line-height:1.25}
.mission-table-head{margin-top:14px}
.approved-ai{align-self:stretch;margin:0;min-width:0}
@media(max-width:1180px){.approved-dashboard-grid{gap:16px}.dashboard-left-stack{gap:16px}}


/* v1.0.4 targeted fix: TODAY'S MISSION containment only */
.mission-panel{
  padding:24px 0 0!important;
  overflow:hidden;
  min-width:0;
}
.mission-panel .panel-head{
  padding:0 22px;
  margin:0 0 4px;
  align-items:flex-start;
  min-width:0;
}
.mission-panel .panel-head>div{min-width:0}
.mission-panel .panel-head .label{
  margin:0 0 7px;
  line-height:1.2;
}
.mission-panel .panel-head h3{
  margin:0;
  line-height:1.25;
}
.mission-table-head,
.mission-master{
  width:100%;
  min-width:0;
  grid-template-columns:64px minmax(0,1fr) 52px 66px 42px 38px 38px 78px;
  gap:6px;
  padding-left:22px;
  padding-right:22px;
}
.mission-table-head{margin-top:14px}
.mission-master>*{min-width:0}
.mission-main{overflow:hidden}
.mission-main b,
.mission-main small{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.mission-action{
  width:100%;
  min-width:0;
  white-space:nowrap;
  padding:7px 3px;
}
.mission-all{margin:12px auto 16px}
@media(max-width:1450px){
  .mission-table-head,.mission-master{
    grid-template-columns:58px minmax(0,1fr) 48px 62px 38px 34px 34px 72px;
    gap:5px;
    padding-left:16px;
    padding-right:16px;
  }
  .mission-panel .panel-head{padding-left:16px;padding-right:16px}
}
@media(max-width:1180px){
  .mission-panel{padding-top:20px!important}
  .mission-panel .panel-head{padding-left:18px;padding-right:18px}
  .mission-master{
    grid-template-columns:58px minmax(0,1fr) 48px 64px 72px;
    padding-left:18px;
    padding-right:18px;
  }
}


/* v1.0.5 targeted layout fix: mission title + right action visibility */
.approved-dashboard-grid{grid-template-columns:minmax(0,1.52fr) minmax(330px,.72fr);gap:20px;align-items:start}
.mission-panel{padding:26px 0 0!important;overflow:hidden;min-width:0}
.mission-panel .panel-head{padding:0 28px!important;margin:0 0 6px!important;align-items:flex-start}
.mission-panel .panel-head .label{margin:0 0 8px!important;line-height:1.15!important;position:static!important;transform:none!important}
.mission-panel .panel-head h3{margin:0!important;line-height:1.25!important}
.mission-table-head,.mission-master{box-sizing:border-box;width:100%;min-width:0;grid-template-columns:54px minmax(0,1fr) 46px 60px 36px 30px 30px 90px;gap:5px;padding-left:28px;padding-right:28px}
.mission-table-head{margin-top:16px}
.mission-action{width:100%;max-width:90px;justify-self:end;overflow:visible;text-overflow:clip;font-size:7px;padding:7px 4px}
.mission-all{margin:14px auto 18px}
@media(max-width:1450px){
  .approved-dashboard-grid{grid-template-columns:minmax(0,1.48fr) minmax(320px,.72fr);gap:18px}
  .mission-panel .panel-head{padding-left:24px!important;padding-right:24px!important}
  .mission-table-head,.mission-master{grid-template-columns:50px minmax(0,1fr) 44px 56px 34px 28px 28px 88px;gap:4px;padding-left:24px;padding-right:24px}
  .mission-action{max-width:88px}
}
@media(max-width:1180px){
  .approved-dashboard-grid{grid-template-columns:1fr}
  .mission-panel .panel-head{padding-left:22px!important;padding-right:22px!important}
  .mission-table-head{display:none}
  .mission-master{grid-template-columns:54px minmax(0,1fr) 48px 66px 86px;padding-left:22px;padding-right:22px}
  .mission-action{max-width:86px}
}

/* Inquiry Hub action buttons: approved layout preserved, actions color-coded for clarity */
#inquiryTableBody .inquiry-detail-btn{background:#eafcfc;border-color:#8edfe3;color:#118b94;font-weight:900;min-width:42px;transition:.16s ease}
#inquiryTableBody .inquiry-detail-btn:hover{background:#d8f8f9;border-color:#5ce1e6;box-shadow:0 4px 12px rgba(28,188,197,.14)}
#inquiryTableBody .inquiry-edit-btn{background:#fff0f7;border-color:#ffb3d5;color:#d83c83;font-weight:900;min-width:42px;transition:.16s ease}
#inquiryTableBody .inquiry-edit-btn:hover{background:#ffe2ef;border-color:#ff78b8;box-shadow:0 4px 12px rgba(216,60,131,.12)}

/* v1.0.18 overdue alert: additive only; existing approved layout unchanged */
.overdue-alert-bg{position:fixed;inset:0;z-index:1300;background:rgba(20,39,58,.28);backdrop-filter:blur(3px);display:none;align-items:center;justify-content:center;padding:24px}.overdue-alert-bg.open{display:flex}.overdue-alert{width:min(560px,100%);max-height:min(720px,88vh);overflow:auto;background:#fff;border:1px solid #dcebee;border-radius:24px;box-shadow:0 24px 70px rgba(25,55,75,.22);padding:26px}.overdue-alert-head{display:flex;gap:14px;align-items:center}.overdue-alert-icon{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:#fff0f7;color:#d83c83;font-size:24px;font-weight:950}.overdue-alert-head p{margin:0 0 3px;color:#d83c83;font-size:11px;font-weight:900;letter-spacing:.12em}.overdue-alert-head h3{margin:0;color:#18324a;font-size:22px}.overdue-alert-summary{display:flex;justify-content:space-between;gap:12px;margin:20px 0 12px;padding:13px 15px;border-radius:14px;background:#f4fbfb;color:#18324a}.overdue-alert-summary b{color:#d83c83}.overdue-alert-list{display:grid;gap:8px}.overdue-alert-row{width:100%;border:1px solid #e4edef;background:#fff;border-radius:14px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:14px;text-align:left;cursor:pointer}.overdue-alert-row:hover{border-color:#8edfe3;background:#f7ffff}.overdue-alert-row span{min-width:0;display:grid;gap:3px}.overdue-alert-row b{color:#18324a}.overdue-alert-row small{color:#6c7d89;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.overdue-alert-row em{font-style:normal;white-space:nowrap;color:#d83c83;font-weight:900}.overdue-alert-more{text-align:center;margin:8px 0 0;color:#6c7d89;font-size:12px}.overdue-alert-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.pipe-card.overdue-focus{outline:3px solid rgba(216,60,131,.32);box-shadow:0 0 0 6px rgba(216,60,131,.08),0 10px 28px rgba(24,50,74,.14)}
@media(max-width:640px){.overdue-alert{padding:20px;border-radius:20px}.overdue-alert-summary{display:grid}.overdue-alert-actions{display:grid}.overdue-alert-actions .btn{width:100%}}

/* v1.0.20 - AI Manager panel spacing balance only */
.ai-manager-grid>.panel{padding:22px 24px}
.ai-manager-grid>.panel .panel-head{margin:0 0 2px}
.ai-manager-grid>.panel .panel-head .label{margin:0 0 7px;line-height:1.2}
.ai-manager-grid>.panel .panel-head h3{margin:0;line-height:1.3}
@media(max-width:760px){.ai-manager-grid>.panel{padding:20px}}


/* v1.0.21 - AI Manager header spacing; cache-busted in dashboard.html */
.ai-manager-grid > .panel{padding:28px 26px 24px!important}
.ai-manager-grid > .panel .panel-head{margin:0 0 4px!important;align-items:flex-start!important}
.ai-manager-grid > .panel .panel-head .label{margin:0 0 9px!important;line-height:1.2!important}
.ai-manager-grid > .panel .panel-head h3{margin:0!important;line-height:1.3!important}
@media(max-width:760px){.ai-manager-grid > .panel{padding:24px 22px!important}}
/* v1.0.22 AI Manager functional action rows; approved layout retained */
.ai-action-open{width:100%;text-align:left;cursor:pointer;font-family:inherit}.ai-action-open small{display:block;margin-top:4px;font-size:7px;color:#82939d;font-weight:700}.ai-action-open:hover{transform:translateY(-1px)}

/* v1.0.24 AI action execution button — existing card design preserved */
.ai-action.ai-action-with-done{display:flex;align-items:stretch;padding:0;overflow:hidden}
.ai-action-with-done .ai-action-main{display:flex;align-items:flex-start;gap:12px;flex:1;min-width:0;border:0;background:transparent;text-align:left;padding:16px 14px;cursor:pointer;color:inherit;font:inherit}
.ai-action-with-done .ai-action-main>div{min-width:0;flex:1}
.ai-action-with-done .ai-action-main em{flex:0 0 auto}
.ai-action-with-done .ai-action-done{flex:0 0 88px;border:0;border-left:1px solid rgba(24,50,74,.08);background:rgba(255,255,255,.72);color:#d83c83;font-weight:850;font-size:12px;cursor:pointer}
.ai-action-with-done .ai-action-done:hover{background:#fff;color:#b8296d}

/* v1.0.25 AI case-state labels: layout preserved */
.ai-case-state{display:inline-flex;align-items:center;margin-left:8px;padding:2px 8px;border-radius:999px;font-size:10px;font-weight:800;line-height:1.5;vertical-align:middle;white-space:nowrap}
.ai-case-state.overdue{background:#fff0f5;color:#e83e79}.ai-case-state.unhandled{background:#eefafb;color:#139eaa}.ai-case-state.done{background:#eef8f2;color:#28865a}.ai-case-state.waiting{background:#f3f4f7;color:#697386}
.ai-action-done:disabled{opacity:.55;cursor:default;filter:none}

/* v1.0.27 Sales result selector — functional addition only */
.ai-action-with-done .ai-action-result{flex-basis:112px;padding:0 10px;line-height:1.35}
.ai-outcome-modal{max-width:620px}.ai-outcome-company{margin:-2px 0 16px;padding:12px 14px;border-radius:12px;background:#f5fbfb;font-weight:850;color:#18324a}
.ai-outcome-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ai-outcome-choice{border:1px solid #dce9ec;border-radius:14px;background:#fff;padding:14px;text-align:left;cursor:pointer;font:inherit;color:#18324a}.ai-outcome-choice:hover{border-color:#38cbd1;background:#f3fcfc;transform:translateY(-1px)}.ai-outcome-choice b{display:block;font-size:14px;margin-bottom:4px}.ai-outcome-choice small{display:block;color:#7c8f99;font-size:11px;line-height:1.5}.ai-outcome-choice.lost:hover{border-color:#ef5a8a;background:#fff6f9}
@media(max-width:620px){.ai-outcome-grid{grid-template-columns:1fr}.ai-action-with-done .ai-action-result{flex-basis:96px}}

/* v1.0.30 lost management */
.lost-reason-backdrop{position:fixed;inset:0;background:rgba(17,38,56,.38);z-index:9999;display:flex;align-items:center;justify-content:center;padding:24px}.lost-reason-modal{width:min(460px,100%);background:#fff;border-radius:22px;padding:28px;box-shadow:0 24px 70px rgba(17,38,56,.2)}.lost-reason-modal>small,.lost-analytics-head small{color:#ff4f91;font-weight:800;letter-spacing:.16em}.lost-reason-modal h3{margin:7px 0 6px;color:#18324a;font-size:22px}.lost-reason-modal p{margin:0 0 18px;color:#718391}.lost-reason-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.lost-reason-grid button{border:1px solid #d9e7e9;background:#f8fbfb;color:#18324a;border-radius:12px;padding:12px;font-weight:800;cursor:pointer}.lost-reason-grid button:hover{border-color:#ff4f91;background:#fff5f9}.lost-cancel{width:100%;margin-top:14px;border:0;background:transparent;color:#718391;padding:10px;cursor:pointer}.client-status.lost{background:#fff0f5!important;color:#e83e7d!important}.client-lost-info{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding-top:10px;border-top:1px solid #edf2f3;color:#718391;font-size:12px}.client-lost-info button{border:1px solid #bde8e8;background:#effcfc;color:#168c92;border-radius:9px;padding:7px 10px;font-weight:800;cursor:pointer}.lost-analytics-panel{margin-top:18px;background:#fff;border:1px solid #e5edef;border-radius:18px;padding:22px}.lost-analytics-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.lost-analytics-head h3{margin:5px 0 0;color:#18324a}.lost-kpis{display:flex;gap:12px;flex-wrap:wrap}.lost-kpis span,.lost-reason-list span{background:#f8fbfb;border-radius:10px;padding:10px 13px;color:#718391}.lost-kpis b,.lost-reason-list b{color:#18324a;margin-left:6px}.lost-reason-list{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}

/* v1.0.31 Analytics intelligence */
.analytics-growth-grid{margin-top:12px}.analytics-performance-list{display:grid;gap:9px;margin-top:14px}.analytics-performance-row{display:grid;grid-template-columns:minmax(110px,1fr) 70px 70px 82px;gap:10px;align-items:center;padding:11px 12px;border:1px solid #edf2f3;border-radius:12px}.analytics-performance-row>span{font-size:9px;font-weight:800;color:#344e60;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analytics-performance-row small{font-size:8px;color:#7a8e99;text-align:right}.analytics-performance-row b{font-size:10px;color:#17344d;text-align:right}.analytics-performance-row.head{background:#f8fbfc;border:0;padding-top:8px;padding-bottom:8px}.analytics-performance-row.head span,.analytics-performance-row.head small,.analytics-performance-row.head b{font-size:7px;color:#81939d;font-weight:800}.analytics-insight-panel{margin-top:12px;padding:18px}.analytics-ai-insight{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.analytics-insight-card{padding:14px;border:1px solid #e7eff1;border-radius:14px;background:#fbfefe}.analytics-insight-card.warn{border-left:4px solid #ff4f91;background:#fff8fb}.analytics-insight-card.good{border-left:4px solid #33b9bd}.analytics-insight-card small{display:block;font-size:7px;letter-spacing:.12em;font-weight:900;color:#83959f}.analytics-insight-card b{display:block;margin-top:6px;font-size:11px;color:#17344d}.analytics-insight-card p{margin:6px 0 0;font-size:8px;line-height:1.65;color:#6d818d}@media(max-width:1100px){.analytics-ai-insight{grid-template-columns:1fr}.analytics-performance-row{grid-template-columns:minmax(100px,1fr) 58px 58px 70px}}

/* v1.0.32 daily-operation filter controls */
.so32-tools{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.so32-tools input{min-width:250px}.so32-filter{min-height:42px;border:1px solid #d8e7e9;border-radius:12px;background:#fff;padding:0 12px;color:#29475b;font-weight:700}.pipeline-tools,.deal-tools{flex-wrap:wrap}.pipe-card[hidden],.deal-card[hidden],.client-card[hidden]{display:none!important}@media(max-width:900px){.so32-tools{width:100%;justify-content:stretch}.so32-tools input,.so32-filter{flex:1 1 180px;min-width:0}}

/* v1.0.33 notification-center operational detail only */
.notification-item small{display:block;margin-bottom:3px;font-size:9px;font-weight:900;letter-spacing:.06em;color:#d83c83}.notification-item.warning small{color:#b77a19}.overdue-alert-row em{max-width:112px;text-align:right}

/* v1.0.34 read-only data integrity diagnostics */
.so34-integrity-panel{margin-top:12px}.so34-integrity-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.so34-integrity-head h3{margin:4px 0 5px;color:#18324a}.so34-integrity-head>div>p:last-child{margin:0;color:#718391;font-size:10px;line-height:1.6}.so34-integrity-kpis{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.so34-integrity-kpis span{padding:9px 12px;border-radius:10px;background:#f7fbfb;color:#718391;font-size:9px}.so34-integrity-kpis b{margin-left:5px;color:#18324a;font-size:11px}.so34-integrity-kpis .critical{background:#fff1f5;color:#c8336d}.so34-integrity-kpis .warning{background:#fff8eb;color:#a76b13}.so34-integrity-kpis .ok{background:#eef9f5;color:#287a59}.so34-integrity-list{display:grid;gap:8px;margin-top:14px}.so34-integrity-row{display:flex;gap:12px;align-items:flex-start;padding:11px 12px;border:1px solid #edf2f3;border-radius:12px;background:#fff}.so34-integrity-row>em{flex:0 0 46px;border-radius:999px;padding:4px 6px;text-align:center;font-style:normal;font-size:8px;font-weight:900}.so34-integrity-row.critical>em{background:#fff0f5;color:#d83c83}.so34-integrity-row.warning>em{background:#fff7e7;color:#aa6d12}.so34-integrity-row small{display:block;color:#8a9aa3;font-size:8px}.so34-integrity-row b{display:block;margin-top:2px;color:#18324a;font-size:10px}.so34-integrity-row p{margin:3px 0 0;color:#6e818c;font-size:9px;line-height:1.5}.so34-integrity-empty{padding:18px;border-radius:12px;background:#f1faf6;text-align:center;color:#39785e}.so34-integrity-empty b{font-size:11px}.so34-integrity-empty p{margin:5px 0 0;font-size:9px}.so34-integrity-more{text-align:center;color:#718391;font-size:9px}@media(max-width:700px){.so34-integrity-head{flex-direction:column}.so34-integrity-head .btn{width:100%}}

/* v1.0.36 visual polish: KPI labels + Deals list spacing only */
.deals-kpis small,
.module-kpis small,
.inq-kpis small{
  font-size:10px;
  font-weight:850;
  line-height:1.45;
  color:#607784;
}
.deals-toolbar{
  min-height:72px;
  padding:15px 18px;
}
.deals-toolbar > div:first-child{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:40px;
}
.deals-toolbar h3{
  margin:5px 0 0;
  line-height:1.35;
}

/* v1.0.37 KPI label typography correction — all KPI cards */
.kpis article > div > small:first-child,
.inq-kpis article > small:first-child,
.pipeline-kpis article > small:first-child,
.deals-kpis article > small:first-child,
.module-kpis article > small:first-child {
  font-size:10px !important;
  font-weight:850 !important;
  line-height:1.45 !important;
  color:#607784 !important;
}


/* v1.0.38: compact one-row management lists + pagination */
.so38-list-wrap{display:block!important}.so38-list{display:block;background:#fff;border:1px solid #e3ecef;border-radius:17px;overflow:hidden;box-shadow:0 7px 22px rgba(46,78,92,.04)}
.so38-list-head,.so38-list-row{display:grid;align-items:center;gap:12px;padding:0 16px}.so38-list-head{min-height:39px;background:#f8fbfc;border-bottom:1px solid #e8f0f2;color:#738892;font-size:9px;font-weight:900}.so38-list-row{min-height:66px;border:0;border-bottom:1px solid #edf2f4;border-radius:0!important;box-shadow:none!important;background:#fff;padding-top:9px;padding-bottom:9px;transition:background .15s ease}.so38-list-row:last-child{border-bottom:0}.so38-list-row:hover{background:#fbfeff;transform:none!important}.so38-list-row>span{min-width:0;font-size:10px;color:#4b6272}.so38-list-row .so38-main b{display:block;font-size:12px;color:#18364e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.so38-list-row .so38-main small{display:block;margin-top:3px;font-size:8px;color:#7c909a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.so38-money{font-size:13px!important;font-weight:900;color:#17344d!important}.so38-actions{text-align:right}.so38-actions .row-btn{margin:0;white-space:nowrap}.so38-due{color:#e33d7f!important;font-weight:900}.so38-email{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.so38-mini-progress{display:block;height:4px;margin-top:5px;border-radius:999px;background:#edf2f4;overflow:hidden}.so38-mini-progress>i{display:block;height:100%;background:linear-gradient(90deg,var(--t),var(--p));border-radius:999px}.so38-list-row em{font-style:normal}
.so38-deals-list .so38-list-head,.so38-deals-list .so38-list-row{grid-template-columns:85px minmax(180px,1.7fr) 105px 95px 100px 95px minmax(120px,1fr) 90px}.so38-clients-list .so38-list-head,.so38-clients-list .so38-list-row{grid-template-columns:90px minmax(180px,1.6fr) 105px 105px 120px minmax(155px,1.2fr) 105px 95px}.so38-contracts-list .so38-list-head,.so38-contracts-list .so38-list-row{grid-template-columns:90px minmax(180px,1.7fr) 110px 100px 95px 95px 95px 90px}.so38-revenue-list .so38-list-head,.so38-revenue-list .so38-list-row{grid-template-columns:90px minmax(180px,1.7fr) 110px 100px 105px 105px 105px 90px}
.so38-pager{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:10px 14px;background:#fff;border:1px solid #e3ecef;border-radius:14px}.so38-page-size,.so38-page-nav{display:flex;align-items:center;gap:8px}.so38-page-size span,.so38-page-info,.so38-page-nav span{font-size:9px;color:#718692;font-weight:800}.so38-page-size select{height:32px;border:1px solid #d8e7e9;border-radius:9px;background:#fff;padding:0 9px;color:#29475b;font-size:9px;font-weight:800}.so38-page-nav button{height:32px;border:1px solid #d8e7e9;border-radius:9px;background:#fff;padding:0 11px;color:#168f98;font-size:9px;font-weight:900}.so38-page-nav button:disabled{opacity:.38;cursor:default}.so38-page-nav button:not(:disabled):hover{background:#effcfd}
@media(max-width:1180px){.so38-list{overflow-x:auto}.so38-list-head,.so38-list-row{min-width:960px}.so38-pager{flex-wrap:wrap}}
@media(max-width:700px){.so38-pager{align-items:stretch}.so38-page-info{order:3;width:100%;text-align:center}}

/* v1.0.40 readability enhancement — small metadata / dates / detail text only */
.activity-row small{
  font-size:13px !important;
  font-weight:800;
  line-height:1.55;
  color:#607784;
}
.activity-row b{
  font-size:15px !important;
  line-height:1.45;
}
.activity-row p{
  font-size:13px !important;
  line-height:1.65;
  color:#536b79;
}

/* v1.0.67: モーダル表示中は背景ページを固定 */
html.modal-scroll-lock,
html.modal-scroll-lock body{
  overflow:hidden!important;
  overscroll-behavior:none!important;
}
.modal-bg.open,
.confirm-bg.open,
.drawer-bg.open{
  overscroll-behavior:contain;
}
.modal,
.drawer,
.client-detail-modal,
.import-modal{
  overscroll-behavior:contain;
}

/* v1.0.68: Client 360を広く、法人名と店舗名を分離表示 */
.client-detail-modal{
  width:min(1500px,calc(100vw - 24px))!important;
  max-width:none!important;
  height:calc(100vh - 24px);
  max-height:none!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
}
.client-detail-modal .modal-head{padding:16px 24px}
.client-detail-modal #clientDetailContent{padding:18px 24px 28px}
.client-detail-modal .client-360-head{grid-template-columns:minmax(320px,1.45fr) repeat(3,minmax(150px,.55fr));gap:16px}
.client-detail-modal .client-360-title h3{font-size:25px;line-height:1.25}
.client-corp-name{display:flex;align-items:center;gap:8px!important;margin:7px 0 8px!important;color:#405b69!important;font-size:12px!important;font-weight:800}
.client-corp-name span{display:inline-flex;border-radius:20px;padding:4px 8px;background:#e9fafa;color:#078f99;font-size:9px;font-weight:900}
.corporation-name{display:block!important;margin-top:4px!important;color:#6f8490!important;font-size:9px!important}
.metric-products{font-size:11px;font-weight:800;color:#607985;white-space:normal}
.client-360-metric>b{display:flex!important;align-items:baseline;gap:7px;flex-wrap:wrap}.client-360-metric>b em{font-style:normal;font-size:9px;color:#718691}.metric-breakdown{display:grid;gap:5px;margin-top:18px;padding-top:12px;border-top:1px solid #e8f0f2}.metric-breakdown>strong{font-size:9px;color:#718691}.metric-breakdown>span{display:block;font-size:10px;color:#526c79;line-height:1.5}.metric-breakdown>span b{display:inline!important;margin:0!important;font-size:11px!important;color:#17344d}.metric-breakdown>span.empty{color:#9aa7ad}
.client-detail-modal small,.client-detail-modal p,.client-detail-modal em,.client-detail-modal .service-chip span,.client-detail-modal .timeline-item small,.client-detail-modal .timeline-item p,.client-detail-modal .client-contract-list article>small,.client-detail-modal .client-contract-list article>div small,.client-detail-modal .metric-breakdown>span,.client-detail-modal .metric-breakdown>strong{font-weight:800!important}
.contract-stock-editor{margin:6px 0;padding:16px;border:1px solid #dbeff1;border-radius:14px;background:#f7fdfd}.contract-stock-editor h3{margin:0 0 4px;color:#20394b;font-size:14px}.contract-stock-editor>p{margin:0 0 12px;color:#607b86;font-size:10px;font-weight:800}
@media(max-width:900px){.client-detail-modal .client-360-head{grid-template-columns:1fr 1fr}.client-detail-modal .client-360-title{grid-column:1/-1}}
.so38-list-head{
  font-size:12px !important;
}
.so38-list-row>span{
  font-size:13px !important;
  line-height:1.5;
}
.so38-list-row .so38-main small{
  font-size:12px !important;
  line-height:1.45;
}
.company small,.sub{
  font-size:12px !important;
  line-height:1.45;
}
th{
  font-size:12px !important;
  font-weight:850;
}
td{
  font-size:13px !important;
  line-height:1.5;
}
.table-head>div:last-child,
.mini{
  font-size:12px !important;
}
.row-btn{
  font-size:11px !important;
  line-height:1.4;
}

/* v1.0.41: requested thin Deals dividers + comprehensive small-text readability */
.so38-deals-list .deal-card.won{
  border-top:0 !important;
  border-bottom:1px solid #edf2f4 !important;
}
.so38-deals-list .deal-card.won:last-child{
  border-bottom:0 !important;
}
.so38-list-row .so38-main b{
  font-size:14px !important;
  line-height:1.45;
}
.so38-list-row .deal-status,
.so38-list-row .client-status,
.so38-list-row .contract-status,
.so38-list-row .revenue-type,
.so38-list-row .payment-status{
  font-size:11px !important;
}
.so38-pager span,
.so38-pager select,
.so38-pager button{
  font-size:11px !important;
}
.analytics-performance-row>span,
.analytics-performance-row small,
.analytics-performance-row b{
  font-size:12px !important;
  line-height:1.5;
}
.analytics-performance-row.head span,
.analytics-performance-row.head small,
.analytics-performance-row.head b{
  font-size:11px !important;
}
.analytics-insight-card small{
  font-size:10px !important;
}
.analytics-insight-card b{
  font-size:14px !important;
}
.analytics-insight-card p{
  font-size:12px !important;
}
.so34-integrity-head>div>p:last-child{
  font-size:12px !important;
}
.so34-integrity-kpis span,
.so34-integrity-more{
  font-size:11px !important;
}
.so34-integrity-kpis b{
  font-size:13px !important;
}
.so34-integrity-row>em,
.so34-integrity-row small{
  font-size:11px !important;
}
.so34-integrity-row b{
  font-size:13px !important;
}
.so34-integrity-row p,
.so34-integrity-empty p{
  font-size:12px !important;
}
.so34-integrity-empty b{
  font-size:14px !important;
}
.mission-table-head{
  font-size:11px !important;
}
.mission-priority span{
  font-size:10px !important;
}
.mission-main b{
  font-size:13px !important;
}
.mission-main small{
  font-size:11px !important;
}
.mission-deadline b,
.mission-time b{
  font-size:11px !important;
}
.mission-action{
  font-size:11px !important;
}
.kpis .revenue-kpi .revenue-target,
.kpis .revenue-kpi .revenue-rate{
  font-size:11px !important;
}
.revenue-breakdown span,
.revenue-breakdown strong{
  font-size:10px !important;
}
.morning-brief>b{
  font-size:14px !important;
}
.morning-brief p,
.morning-brief li{
  font-size:11px !important;
  line-height:1.6;
}
.ai-recommend>b{
  font-size:12px !important;
}
.ai-action-card b{
  font-size:12px !important;
}
.ai-action-card em{
  font-size:10px !important;
}
.ai-action-card small,
.ai-action-open small{
  font-size:11px !important;
}
.funnel-row,
.rank-row span,
.rank-row b,
.payment-summary small{
  font-size:12px !important;
}
.rank-row em{
  font-size:10px !important;
}
.topbar small,
.deals-hero p,
.inq-hero p:not(.label),
.hero>div>p:not(.label){
  font-size:12px !important;
}

/* v1.0.42: KPI, today's schedule, and search/filter readability */
.kpis article small,
.kpis-six article small,
.inq-kpis article small,
.pipeline-kpis article small,
.deals-kpis article small,
.module-kpis article small{
  font-size:12px !important;
  line-height:1.5;
}
.kpis article span,
.kpis-six article span{
  font-size:11px !important;
  line-height:1.5;
}
.today-schedule-panel .label{
  font-size:10px !important;
}
.today-schedule-grid span{
  font-size:11px !important;
  line-height:1.4;
}
.today-schedule-grid b small{
  font-size:10px !important;
}
.today-schedule-grid em{
  font-size:10px !important;
  line-height:1.4;
}
.search input,
.filters select,
.filters .btn,
.so32-tools input,
.so32-tools select,
.so32-filter,
.deal-tools input,
.deal-tools select,
.pipeline-tools input,
.pipeline-tools select,
.revenue-tools input,
.revenue-tools select{
  font-size:12px !important;
}

/* v1.0.43: requested gray metadata readability only */
.pipe-card .pipe-product{
  font-size:11px !important;
  line-height:1.5;
}
.pipe-card-meta{
  font-size:11px !important;
  line-height:1.5;
}
.pipe-score,
.pipe-open{
  font-size:10px !important;
}
.ai-brief-text p{
  font-size:13px !important;
  line-height:1.8;
}
.ai-brief-metrics span{
  font-size:12px !important;
  line-height:1.5;
}

/* v1.0.46: preserve the complete approved UI and fit list pages at 100% */
#inquiryTableBody .company small span{display:block}

.pipeline-board{
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:8px;
  overflow-x:hidden;
}
.pipe-stage{min-width:0;padding:8px}
.pipe-card{min-width:0;padding:9px}
.pipe-card h4,.pipe-card .pipe-product,.pipe-card-meta span{overflow-wrap:anywhere}
.pipe-card-footer{
  display:grid;
  grid-template-columns:auto minmax(58px,1fr) auto;
  gap:4px;
}
.pipe-card-footer .pipe-stage-select{
  width:100%;min-width:0;padding:6px 4px !important;font-size:10px !important;
}
.pipe-card-footer .pipe-score{padding:3px 5px;white-space:nowrap}
.pipe-card-footer .pipe-open{white-space:nowrap}

.so38-list{width:100%;overflow:hidden}
.so38-list-head,.so38-list-row{
  width:100%;min-width:0 !important;gap:6px;padding-left:10px;padding-right:10px;
}
.so38-deals-list .so38-list-head,.so38-deals-list .so38-list-row{
  grid-template-columns:72px minmax(120px,1.7fr) 92px 82px 74px 70px minmax(92px,1fr) 82px;
}
.so38-clients-list .so38-list-head,.so38-clients-list .so38-list-row{
  grid-template-columns:76px minmax(120px,1.5fr) 82px 76px 92px minmax(105px,1.15fr) 78px 78px;
}
.so38-contracts-list .so38-list-head,.so38-contracts-list .so38-list-row{
  grid-template-columns:78px minmax(120px,1.6fr) 94px 72px 72px 72px 72px 82px;
}
.so38-revenue-list .so38-list-head,.so38-revenue-list .so38-list-row{
  grid-template-columns:76px minmax(120px,1.6fr) 94px 72px 80px 88px 82px 82px;
}
.so38-list-row>span{overflow:hidden;text-overflow:ellipsis}
.so38-actions{overflow:visible !important}
.so38-actions .row-btn{width:100%;padding-left:4px;padding-right:4px}

#inquiryPage .table-wrap{overflow-x:hidden}
#inquiryPage table{min-width:0;width:100%;table-layout:fixed}
#inquiryPage th,#inquiryPage td{
  padding-left:7px;padding-right:7px;overflow:hidden;text-overflow:ellipsis;
}
#inquiryPage th:nth-child(1){width:7%}
#inquiryPage th:nth-child(2){width:21%}
#inquiryPage th:nth-child(3){width:21%}
#inquiryPage th:nth-child(4){width:10%}
#inquiryPage th:nth-child(5){width:10%}
#inquiryPage th:nth-child(6){width:9%}
#inquiryPage th:nth-child(7){width:12%}
#inquiryPage th:nth-child(8){width:10%}
#inquiryPage td:last-child .row-btn{
  display:block;width:100%;margin:2px 0;padding-left:3px;padding-right:3px;
}
@media(max-width:1180px){
  .pipeline-board{grid-template-columns:repeat(5,minmax(0,1fr)) !important}
  .so38-list{overflow:hidden}
  .so38-list-head,.so38-list-row{min-width:0 !important}
}

/* v1.0.47: source cards show all channels and keep count + unit together */
.inquiry-source-summary{
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.source-summary-card b{
  display:flex;
  align-items:baseline;
  gap:3px;
  white-space:nowrap;
}
.source-summary-card b .source-count-unit{
  display:inline !important;
  font-size:13px !important;
  font-weight:850;
  line-height:1;
  color:#687f8c;
  overflow:visible;
}
@media(max-width:1200px){
  .inquiry-source-summary{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:760px){
  .inquiry-source-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* v1.0.48: inquiry priority and status readability */
#inquiryTableBody .priority{
  font-size:11px !important;
  line-height:1.35;
  gap:5px;
  white-space:nowrap;
}
#inquiryTableBody .priority:before{
  width:8px;
  height:8px;
  flex:0 0 8px;
}
#inquiryTableBody .status{
  font-size:11px !important;
  line-height:1.25;
  padding:5px 9px;
  white-space:nowrap;
}

/* v1.0.49: use the full page width consistently across every module */
.content{
  padding:16px 16px 32px !important;
}
.topbar{
  padding-left:18px !important;
  padding-right:18px !important;
}
@media(max-width:760px){
  .content{padding:12px 10px 24px !important}
  .topbar{padding-left:12px !important;padding-right:12px !important}
}

/* v1.0.50: recognizable icon for every inquiry source channel */
.source-summary-label{display:flex;align-items:center;gap:8px;min-width:0}
.source-summary-label>small{min-width:0;font-size:11px;font-weight:750}
.source-channel-icon{width:25px;height:25px;flex:0 0 25px;border-radius:8px;display:grid;place-items:center;background:#eef7f8;color:#26727c;font-size:13px;font-style:normal;font-weight:950;line-height:1;box-shadow:inset 0 0 0 1px rgba(23,68,77,.06)}
.source-channel-icon.instagram{background:linear-gradient(135deg,#7b4de3,#ec3f83 55%,#ff9f35);color:#fff;font-size:17px}
.source-channel-icon.facebook{background:#1877f2;color:#fff;font-family:Arial,sans-serif;font-size:20px;align-items:end;padding-top:5px}
.source-channel-icon.x{background:#111;color:#fff;font-family:Arial,sans-serif;font-size:13px}
.source-channel-icon.tiktok{background:#111;color:#fff;text-shadow:-1px 0 #24f4ee,1px 0 #fe2c55;font-size:18px}
.source-channel-icon.line{background:#06c755;color:#fff;font-family:Arial,sans-serif;font-size:7px;letter-spacing:-.4px}
.source-channel-icon.web{background:#e6f8fb;color:#0697ab;font-size:19px}
.source-channel-icon.gbp{background:linear-gradient(135deg,#4285f4,#34a853);color:#fff;font-size:17px}
.source-channel-icon.phone{background:#e8f8f2;color:#13966d;font-size:15px}
.source-channel-icon.referral{background:#fff3e8;color:#e57923;font-size:17px}
.source-channel-icon.client{background:#f0edff;color:#7056c7;font-size:15px}
.source-channel-icon.list{background:#fff0f6;color:#d73e82;font-size:16px}
.source-channel-icon.other{background:#f1f4f5;color:#687b85;font-size:9px;letter-spacing:-1px}

/* v1.0.51: client lifecycle visibility */
.module-kpis.five{grid-template-columns:repeat(5,minmax(0,1fr))}
.client-status.ended{background:#eef2f4!important;color:#61727e!important}
.client-status.cancelled{background:#fff0f3!important;color:#d64967!important}
@media(max-width:1100px){.module-kpis.five{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.module-kpis.five{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v1.0.53: complete contract lifecycle overview */
.module-kpis.six{grid-template-columns:repeat(6,minmax(0,1fr))}
@media(max-width:1250px){.module-kpis.six{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.module-kpis.six{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v1.0.55: year-one / year-two recurring revenue */
.stock-year-help{margin:0;padding:9px 11px;border-radius:10px;background:#f1fbfb;color:#54727a;font-size:10px;line-height:1.6}

/* v1.0.80: Client 360 contact layout and bounded growing lists */
.client-contact-details{display:grid;gap:5px;margin:9px 0 10px}.client-contact-details p{margin:0!important;font-size:13px!important;line-height:1.55;color:#536b79!important}.client-contact-details b{color:#28495a;font-weight:900}.client-contact-details span{padding:0 4px;color:#a0adb3}
.bounded-detail-list{max-height:190px;overflow-y:auto;overscroll-behavior:contain;padding-right:5px}
.bounded-contract-list{max-height:330px;overflow-y:auto;overscroll-behavior:contain;padding-right:5px}
.bounded-service-list{max-height:330px;overflow-y:auto;overscroll-behavior:contain}
.bounded-detail-list::-webkit-scrollbar,.bounded-contract-list::-webkit-scrollbar,.bounded-service-list::-webkit-scrollbar{width:6px}.bounded-detail-list::-webkit-scrollbar-thumb,.bounded-contract-list::-webkit-scrollbar-thumb,.bounded-service-list::-webkit-scrollbar-thumb{background:#c9e7e9;border-radius:10px}

/* v1.0.85: full product scroll and actionable renewal list */
.renewal-chip{border:0;cursor:pointer}.renewal-chip.active{background:#ffdeed;color:#bd286c;box-shadow:0 0 0 2px rgba(238,65,139,.12)}.contract-renewal-actions .cancel-renewal{border-color:#f2b3c7!important;color:#d63b68!important;background:#fff!important}.renewal-window-note{display:block!important;margin-top:4px!important;color:#69808c!important;font-weight:800}.product-master-results{padding-bottom:20px}
.product-code-feedback{display:none;margin-top:5px;color:#d83c68;font-size:10px;font-weight:900}.product-code-feedback.show{display:block}.product-master-form input.is-duplicate{border-color:#ef7098!important;background:#fff5f8!important;box-shadow:0 0 0 3px rgba(239,112,152,.12)}

/* v1.0.90: master editor scroll and add flow */
.master-modal{height:min(760px,calc(100vh - 28px));max-height:calc(100vh - 28px);overflow:hidden;display:flex;flex-direction:column}.master-modal>.modal-head{flex:0 0 auto}.master-editor-layout{flex:1;min-height:0;overflow:hidden;padding-bottom:18px}.master-editor-layout>form{min-height:0;overflow-y:auto;overscroll-behavior:contain}.master-list-pane{min-height:0;display:flex;flex-direction:column;overflow:hidden;padding:19px 18px 0 0}.master-list-pane .product-list-head{flex:0 0 auto}.master-list-pane .master-list{flex:1;min-height:0;max-height:none;overflow-y:auto;overscroll-behavior:contain;scroll-behavior:auto;padding-right:6px}.master-list-pane .master-list::-webkit-scrollbar,.master-editor-layout>form::-webkit-scrollbar{width:7px}.master-list-pane .master-list::-webkit-scrollbar-thumb,.master-editor-layout>form::-webkit-scrollbar-thumb{background:#b9dfe1;border-radius:10px}

/* v1.0.81: editable, clearly separated client contact numbers */
.client-contact-details .contact-empty{color:#9aaab2;font-weight:750}.client-contact-edit{margin-top:3px;border:1px solid #7fdde2;border-radius:8px;background:#fff;color:#079fa8;padding:6px 10px;font-size:9px;font-weight:900}.client-contact-editor{margin:10px 0 12px;padding:13px;border:1px solid #dcebed;border-radius:14px;background:#f9fcfc}.client-contact-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.client-contact-editor label{display:grid;gap:5px;color:#476471;font-size:10px;font-weight:900}.client-contact-editor input{width:100%;border:1px solid #d6e5e8;border-radius:9px;background:#fff;padding:9px 10px;color:#17344d;font-size:11px;font-weight:750}.client-contact-editor-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:11px}.client-contact-editor-actions button{border-radius:9px;padding:8px 13px;font-size:9px;font-weight:900}.client-contact-cancel{border:1px solid #dce7ea;background:#fff;color:#607985}.client-contact-save{border:0;background:linear-gradient(110deg,var(--td),var(--t) 58%,#ff78b8);color:#fff}@media(max-width:700px){.client-contact-editor-grid{grid-template-columns:1fr}}

/* v1.0.56: duplicate-client confirmation */
.duplicate-client-bg{position:fixed;inset:0;z-index:10050;background:rgba(17,38,56,.42);display:flex;align-items:center;justify-content:center;padding:20px}.duplicate-client-dialog{width:min(570px,96vw);background:#fff;border-radius:22px;padding:25px;box-shadow:0 28px 85px rgba(17,38,56,.25);border-top:5px solid var(--p)}.duplicate-client-dialog>small{color:var(--p);font-size:9px;font-weight:900;letter-spacing:.15em}.duplicate-client-dialog h3{margin:6px 0;color:#18324a;font-size:21px}.duplicate-client-dialog>p{margin:0 0 15px;color:#657c88;font-size:11px}.duplicate-compare{display:grid;grid-template-columns:1fr 1fr;gap:10px}.duplicate-compare>div{padding:13px;border:1px solid #e2ebee;border-radius:13px;background:#f9fcfc}.duplicate-compare small{display:block;color:#7b8f99;font-size:9px}.duplicate-compare b{display:block;margin:4px 0 7px;color:#17344d;font-size:13px}.duplicate-compare span{display:block;color:#657c88;font-size:10px;line-height:1.6}.duplicate-match{margin:12px 0;padding:9px 11px;border-radius:10px;background:#fff1f7;color:#c93477;font-size:10px;font-weight:800}.duplicate-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.duplicate-actions .same-client{background:linear-gradient(110deg,var(--td),var(--t) 55%,#ff78b8);color:#fff;border:0}.duplicate-actions .separate-client{background:#fff;border:1px solid #dce7ea;color:#425d6d}.duplicate-actions .cancel-client{background:transparent;border:0;color:#7b8f99}@media(max-width:620px){.duplicate-compare{grid-template-columns:1fr}.duplicate-actions button{width:100%}}

/* v1.0.57: Client 360 multiple-contract management */
.client-contact-actions button.primary,.client-section-head button{border-color:transparent;background:linear-gradient(110deg,var(--td),var(--t) 58%,#ff78b8);color:#fff}.client-contract-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:-6px 0 15px}.client-contract-summary span{display:flex;align-items:center;justify-content:space-between;padding:10px 13px;border:1px solid #e5eef1;border-radius:12px;background:#f9fcfc;color:#657c88;font-size:10px}.client-contract-summary b{color:#17344d;font-size:15px}.client-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}.client-section-head h4{margin:0}.client-section-head button{border-radius:9px;padding:8px 12px;font-size:9px;font-weight:900}.client-contract-list{display:grid;gap:8px}.client-contract-list article{display:grid;grid-template-columns:92px minmax(190px,1fr) 110px 145px 80px;gap:10px;align-items:center;padding:11px 12px;border:1px solid #e7f0f2;border-radius:12px;background:#fbfdfd}.client-contract-list article>div b{display:block;color:#17344d;font-size:11px}.client-contract-list article>div small{display:block;margin-top:4px;color:#718691;font-size:9px}.client-contract-list article>strong{color:#17344d;font-size:12px;text-align:right}.client-contract-list article>small{color:#647b88;font-size:9px;text-align:center}.client-contract-list article>button{border:1px solid #21bec7;border-radius:8px;background:#fff;color:#079fa8;padding:7px 8px;font-size:9px;font-weight:900}@media(max-width:820px){.client-contract-summary{grid-template-columns:1fr 1fr}.client-contract-list article{grid-template-columns:88px 1fr}.client-contract-list article>strong,.client-contract-list article>small{text-align:left}.client-contract-list article>button{grid-column:2}}

/* v1.0.58: permanent one-time customer status */
.client-status.shot_customer{background:#eafcfc!important;color:#078f99!important}.client-retention-note{display:flex;align-items:center;gap:9px;margin-top:12px;padding:9px 11px;border-radius:11px;background:#f5f9fa}.client-retention-note span{flex:0 0 auto;border-radius:20px;padding:5px 9px;background:#eef2f4;color:#61727e;font-size:9px;font-weight:900}.client-retention-note p{margin:0!important;color:#617985!important;font-size:9px!important;line-height:1.45}.client-retention-note.shot_customer{background:#eafcfc}.client-retention-note.shot_customer span{background:#fff;color:#078f99}.client-retention-note.active{background:#e9faf3}.client-retention-note.active span{background:#fff;color:#15986f}.client-retention-note.contracting{background:#fff8e9}.client-retention-note.contracting span{background:#fff;color:#a87316}

/* v1.0.59: renewal alerts and actions */
.renewal-chip{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;border-radius:20px;padding:8px 10px;background:#fff1f7;color:#c93477;font-size:9px;font-weight:800}.renewal-chip b{font-size:12px}.contract-renewal-note{display:block!important;width:max-content;max-width:100%;margin-top:5px!important;border-radius:20px;padding:3px 7px;font-size:8px!important;font-weight:800}.contract-renewal-note.overdue{background:#fff0f3;color:#d64967!important}.contract-renewal-note.due30{background:#fff7e9;color:#c47b08!important}.contract-renewal-note.future{background:#eafcfc;color:#078f99!important}.contract-renewal-note.none{background:#f1f4f5;color:#71818b!important}.contract-renewal-note.closed{background:#eef2f4;color:#61727e!important}.contract-renewal-actions{display:flex!important;flex-direction:column;align-items:stretch!important;gap:4px}.contract-renewal-actions .renew{border-color:#ff9ac4!important;color:#d53b7b!important;background:#fff5f9!important}@media(max-width:1180px){#contractsPage .so32-tools{flex-wrap:wrap}.renewal-chip{order:3}}
.product-code-compose{display:flex;align-items:center;width:100%;margin-top:8px;border:1px solid #d9e6eb;border-radius:12px;background:#fff;overflow:hidden;transition:.2s}
.product-code-compose:focus-within{border-color:#22c7c9;box-shadow:0 0 0 3px rgba(34,199,201,.12)}
.product-code-compose b{align-self:stretch;display:flex;align-items:center;padding:0 12px;background:#effafa;border-right:1px solid #d9e6eb;color:#28515d;font-size:13px;white-space:nowrap}
.product-code-compose input[name="codeNumber"]{min-width:0;margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding-left:12px!important}
.product-code-preview{display:block;margin-top:6px;color:#607b84;font-weight:700;font-size:11px}
.direct-contract-add{white-space:nowrap;padding:10px 16px!important}

/* v1.0.101: 営業パイプラインは契約までの4段階 */
.pipeline-kpis{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.pipeline-board{grid-template-columns:repeat(4,minmax(0,1fr))!important}
@media(max-width:1100px){.pipeline-board{grid-template-columns:repeat(4,230px)!important}}

/* v1.0.103: 変動ストック */
.revenue-type.commission{background:#fff1f8!important;color:#c93477!important}
.commission-fields{padding:13px;border:1px solid #f3d8e6;border-radius:14px;background:#fff8fb}
.product-commission-field[hidden],.contract-commission-field[hidden],.commission-fields[hidden]{display:none!important}

/* v1.0.104: 顧客詳細からの契約追加では顧客選択欄を表示しない */
.direct-contract-client[hidden]{display:none!important}

/* v1.0.107: 顧客詳細の契約商品区分 */
.client-contract-product-type{display:inline-flex!important;width:max-content;margin:4px 0 2px;padding:3px 8px;border-radius:999px;background:#eafafa;color:#087d79;font-size:11px!important;font-weight:900!important;line-height:1.2}.client-contract-product-type.commission{background:#fff0f6;color:#dc3f83}.client-contract-product-type.shot{background:#eef3ff;color:#4562b4}

/* v1.0.109: Client 360はポップアップ全体を1本のスクロールで操作 */
.client-detail-modal .bounded-detail-list,.client-detail-modal .bounded-contract-list,.client-detail-modal .bounded-service-list{max-height:none!important;overflow:visible!important;overscroll-behavior:auto!important;padding-right:0!important}.client-detail-modal{scroll-behavior:auto!important;overscroll-behavior:contain!important}.client-detail-modal #clientDetailContent{min-height:0}

/* v1.0.110: Client 360の金額がカード右端に詰まらないよう余白を確保 */
.client-detail-modal .client-360-metric{box-sizing:border-box;padding:16px 20px 18px!important;overflow:hidden}
.client-detail-modal .client-360-metric>b{max-width:100%;padding-right:4px;overflow-wrap:anywhere}
.client-detail-modal .metric-breakdown{padding-right:4px}

/* v1.0.111: 導入・提案商材の右余白を復元 */
.client-detail-modal .client-360-section.bounded-service-list{padding-right:16px!important}
.client-detail-modal .service-chip>b{flex:0 0 auto;margin-right:2px}

/* v1.0.112: 商品マスタのドラッグ並び替え */
#productMasterList .product-master-card[data-product-drag]{position:relative;grid-template-columns:34px minmax(0,1fr) auto;transition:opacity .15s,transform .15s,border-color .15s,box-shadow .15s}
#productMasterList .product-drag-handle{width:30px;height:46px;display:grid;place-items:center;border:1px solid #cae5e7;border-radius:10px;background:#effbfb;color:#159da6;font-size:22px;font-weight:900;line-height:1;cursor:grab;user-select:none;touch-action:none}
#productMasterList .product-drag-handle:hover{border-color:var(--td);background:#e4fbfc;box-shadow:0 4px 12px rgba(28,188,197,.16)}
#productMasterList .product-drag-handle:active{cursor:grabbing}
#productMasterList .product-master-card.is-dragging{opacity:.42;transform:scale(.99)}
#productMasterList .product-master-card.drag-before{border-top:3px solid var(--td);box-shadow:0 -5px 12px rgba(28,188,197,.14)}
#productMasterList .product-master-card.drag-after{border-bottom:3px solid var(--td);box-shadow:0 5px 12px rgba(28,188,197,.14)}

/* v1.0.114: カーソル追従型ドラッグ */
body.product-pointer-sorting{cursor:grabbing!important;user-select:none!important}
#productMasterList .product-master-card.is-pointer-source{opacity:.22;background:#effcfc;border-style:dashed}
.product-drag-ghost{position:fixed!important;z-index:20000!important;pointer-events:none!important;opacity:.94!important;transform:scale(1.01);box-shadow:0 18px 44px rgba(30,76,91,.2)!important;background:#fff!important;transition:none!important}

/* v1.0.117: 営業パイプライン詳細編集 */
.pipeline-detail-modal{width:min(760px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow:auto}
.pipeline-detail-history{margin-top:18px;padding:16px;border:1px solid #dcebed;border-radius:15px;background:#f8fcfc}
.pipeline-detail-history h3{margin:0 0 10px;color:#173047;font-size:15px}
.pipeline-detail-history>div{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-top:1px solid #e2edef}
.pipeline-detail-history>div:first-of-type{border-top:0}.pipeline-detail-history b{color:#2b4656;font-size:12px}.pipeline-detail-history small{flex:0 0 auto;color:#718793;font-size:10px;font-weight:800}.pipeline-detail-history p{margin:0;color:#718793;font-size:12px;font-weight:700}

/* v1.0.118: 入金ステータス */
.payment-status.unconfirmed{background:#eef4f6!important;color:#657b87!important}.payment-status.waiting{background:#fff5df!important;color:#b87400!important}.payment-status.none{background:#f2f5f6!important;color:#7b8b93!important}

/* v1.0.134: 担当者ログイン・権限制御 */
body.auth-locked{overflow:hidden}.auth-locked .app-shell{visibility:hidden}.auth-screen{position:fixed;inset:0;z-index:50000;display:grid;place-items:center;padding:24px;background:linear-gradient(145deg,#dffafa 0%,#f7ffff 48%,#fff0f7 100%)}body:not(.auth-locked) .auth-screen{display:none}.auth-card{width:min(460px,calc(100vw - 32px));padding:34px 38px 30px;border:1px solid rgba(28,188,197,.22);border-radius:25px;background:rgba(255,255,255,.97);box-shadow:0 30px 80px rgba(29,74,91,.18)}.auth-brand{display:flex;align-items:baseline;gap:10px;margin-bottom:25px}.auth-brand b{font-size:34px;letter-spacing:-2px;color:#16263a}.auth-brand b span{color:var(--p)}.auth-brand small{font-size:10px;font-weight:900;letter-spacing:2px;color:#13aeb7}.auth-card h1{margin:7px 0 8px;font-size:27px;color:#17263b}.auth-card>p:not(.label){margin:0 0 22px;color:#6d818c;font-size:13px;font-weight:700}.auth-card form{display:grid;gap:15px}.auth-card form label{display:grid;gap:7px;font-size:13px;font-weight:850;color:#314e5c}.auth-card input{width:100%;border:1px solid #d6e5e8;border-radius:12px;padding:14px 15px;font-size:15px;font-weight:700;outline:none}.auth-card input:focus{border-color:var(--td);box-shadow:0 0 0 4px rgba(92,225,230,.16)}.auth-card form .btn{width:100%;margin-top:5px;padding:14px;font-size:14px}.auth-error{min-height:18px;color:#d93672;font-size:12px;font-weight:800}.auth-first-guide{display:block;margin-top:15px;padding:10px 12px;border-radius:10px;background:#f4fafa;color:#647b85;font-size:11px;font-weight:800}.auth-card label small{color:#758991;font-size:10px}.profile{position:relative}.profile-copy{min-width:0;flex:1}.logout-btn{width:30px;height:30px;flex:0 0 auto;border:1px solid #d7e9eb;border-radius:9px;background:#fff;color:#168f98;font-size:16px;font-weight:900}.logout-btn:hover{background:#eefcfc}.master-list-row.has-password-action{grid-template-columns:minmax(0,1fr) auto auto auto auto}.password-reset-btn{color:#168f98!important;border-color:#bfe5e7!important}.role-viewer .btn.grad,.role-viewer .btn.danger,.role-viewer [data-master-delete],.role-viewer [data-contract-renew],.role-viewer [data-contract-cancel-renewal],.role-viewer [data-import-undo],.role-viewer .product-drag-handle{display:none!important}.role-viewer input:not([type="search"]),.role-viewer textarea,.role-viewer select{pointer-events:none}.role-viewer form .modal-actions{display:none!important}.auth-page-blocked{display:none!important}@media(max-width:760px){.auth-card{padding:27px 23px}.master-list-row.has-password-action{grid-template-columns:1fr auto auto}.master-list-row.has-password-action>div{grid-column:1/-1}}
.role-viewer input,.role-viewer textarea,.role-viewer select{pointer-events:auto!important}
