:root{--surface:#ffffff;--surface-muted:#f7f8fb;--border:rgba(15,23,42,.12);--text-main:#0f172a;--text-muted:#475569;--primary:#0891b2;--primary-dark:#0e7490;--accent:#22c55e;--shadow-soft:0 12px 34px rgba(2,8,23,.12);--gradient:linear-gradient(135deg,rgba(8,145,178,.12),rgba(34,197,94,.10));--dm-bg:#ffffff;--dm-surface:#ffffff;--dm-surface2:#f7f8fb;--dm-border:rgba(15,23,42,.12);--dm-text:#0f172a;--dm-muted:#475569;--dm-accent:#0891b2;--dm-accent-dim:rgba(8,145,178,.12);--dm-warn:#f59e0b;--dm-danger:#dc2626;--dm-success:#16a34a;--dm-radius:14px;--dm-shadow:0 12px 34px rgba(2,8,23,.12);}
.dm-app{color:var(--dm-text);margin-bottom:2rem;}
.dm-hero-lead{font-size:1.05rem;color:var(--dm-muted);max-width:42rem;margin:0 0 1rem;line-height:1.55;}
.dm-pill-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem;}
.dm-pill{font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:.35rem .7rem;border-radius:999px;background:var(--dm-accent-dim);color:var(--dm-accent);border:1px solid rgba(34,211,238,.25);}
.dm-workspace{display:grid;grid-template-columns:1fr;gap:1rem;}
@media (min-width:992px){.dm-workspace{grid-template-columns:minmax(0,1fr) minmax(320px,400px);align-items:start;gap:1.25rem;}}
.dm-panel{background:var(--dm-surface);border:1px solid var(--dm-border);border-radius:var(--dm-radius);padding:1rem 1.1rem;box-shadow:var(--dm-shadow);}
@media (min-width:992px){.dm-panel--sticky{position:sticky;top:1rem;}}
.dm-panel-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--dm-border);}
.dm-panel-title{font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--dm-muted);margin:0;}
.dm-stepbar{display:flex;gap:.35rem;overflow-x:auto;padding-bottom:.25rem;margin-bottom:1rem;-webkit-overflow-scrolling:touch;scrollbar-width:thin;}
.dm-step{display:flex;align-items:center;gap:.4rem;flex-shrink:0;padding:.45rem .75rem;border-radius:10px;background:var(--dm-surface2);border:1px solid transparent;font-size:.8rem;color:var(--dm-muted);}
.dm-step--on{border-color:var(--dm-accent);color:var(--dm-accent);background:var(--dm-accent-dim);}
.dm-step-num{width:1.35rem;height:1.35rem;border-radius:50%;background:var(--dm-bg);border:1px solid var(--dm-border);display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;color:var(--dm-text);}
.dm-field{margin-bottom:1rem;}
.dm-field:last-child{margin-bottom:0;}
.dm-label{display:block;font-size:.78rem;font-weight:600;color:var(--dm-muted);margin-bottom:.4rem;}
.dm-input,.dm-textarea,.dm-select{width:100%;box-sizing:border-box;background:var(--dm-bg);border:1px solid var(--dm-border);border-radius:10px;color:var(--dm-text);padding:.65rem .85rem;font-size:1rem;line-height:1.4;}
.dm-input:focus,.dm-textarea:focus,.dm-select:focus{outline:none;border-color:var(--dm-accent);box-shadow:0 0 0 3px var(--dm-accent-dim);}
.dm-textarea{min-height:88px;resize:vertical;}
.dm-method-scroll{display:flex;gap:.5rem;overflow-x:auto;padding:.2rem 0 .5rem;-webkit-overflow-scrolling:touch;}
.dm-method-btn{flex-shrink:0;padding:.55rem 1rem;border-radius:999px;border:1px solid var(--dm-border);background:var(--dm-surface2);color:var(--dm-muted);font-size:.85rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,color .15s;}
.dm-method-btn:hover{color:var(--dm-text);border-color:rgba(15,23,42,.18);}
.dm-method-btn--active{background:var(--dm-accent-dim);border-color:var(--dm-accent);color:var(--dm-accent);}
.dm-opt-list{display:flex;flex-direction:column;gap:.5rem;}
.dm-opt-row{display:flex;gap:.5rem;align-items:center;}
.dm-opt-row .dm-input{flex:1;}
.dm-icon-btn{flex-shrink:0;width:2.5rem;height:2.5rem;border-radius:10px;border:1px solid var(--dm-border);background:var(--dm-surface2);color:var(--dm-danger);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.1rem;line-height:1;padding:0;}
.dm-icon-btn:hover{background:rgba(248,113,113,.12);}
.dm-add-row{margin-top:.65rem;}
.dm-btn-ghost{display:inline-flex;align-items:center;gap:.35rem;padding:.5rem .85rem;border-radius:10px;border:1px dashed var(--dm-border);background:transparent;color:var(--dm-accent);font-size:.85rem;font-weight:600;cursor:pointer;}
.dm-btn-ghost:hover{border-style:solid;background:var(--dm-accent-dim);}
.dm-analysis{min-height:220px;background:var(--dm-bg);border:1px solid var(--dm-border);border-radius:12px;padding:1rem;}
.dm-analysis-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:200px;color:var(--dm-muted);gap:.5rem;}
.dm-analysis-empty strong{color:var(--dm-text);font-size:1rem;}
.dm-dock{position:fixed;left:0;right:0;bottom:0;z-index:50;display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center;padding:.65rem max(1rem,env(safe-area-inset-right)) calc(.65rem + env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));background:linear-gradient(180deg,rgba(255,255,255,.55),rgba(255,255,255,.96));border-top:1px solid var(--dm-border);backdrop-filter:blur(10px);}
@media (min-width:992px){.dm-dock{position:static;padding:0;margin-top:1rem;background:transparent;border:none;backdrop-filter:none;justify-content:flex-start;}}
.dm-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.65rem 1.1rem;border-radius:11px;font-size:.88rem;font-weight:700;border:none;cursor:pointer;}
.dm-btn--primary{background:var(--dm-accent);color:#ffffff;}
.dm-btn--primary:hover{filter:brightness(1.08);}
.dm-btn--muted{background:var(--dm-surface2);color:var(--dm-text);border:1px solid var(--dm-border);}
.dm-btn--muted:hover{border-color:rgba(255,255,255,.2);}
.dm-history{margin-top:1.25rem;}
.dm-history-list{max-height:240px;overflow-y:auto;display:flex;flex-direction:column;gap:.5rem;}
.dm-history-item{background:var(--dm-bg);border:1px solid var(--dm-border);border-radius:10px;padding:.65rem .85rem;display:flex;justify-content:space-between;gap:.75rem;align-items:flex-start;}
.dm-history-item h3{font-size:.9rem;margin:0 0 .2rem;color:var(--dm-text);}
.dm-history-meta{font-size:.72rem;color:var(--dm-muted);margin:0;}
.dm-history-del{background:none;border:none;color:var(--dm-danger);cursor:pointer;padding:.2rem;font-size:.85rem;}
.dm-block-title{font-size:1rem;font-weight:700;margin:0 0 .75rem;text-align:center;color:var(--dm-text);}
.dm-card-grid{display:grid;gap:.75rem;}
.dm-option-card{background:var(--dm-surface2);border:1px solid var(--dm-border);border-radius:12px;padding:.85rem;}
.dm-option-card h4{margin:0 0 .65rem;font-size:.92rem;color:var(--dm-accent);}
.dm-pc-cols{display:grid;gap:.65rem;}
@media (min-width:600px){.dm-pc-cols{grid-template-columns:1fr 1fr;}}
.dm-pc-col h5{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;margin:0 0 .4rem;}
.dm-pc-col--pro h5{color:var(--dm-success);}
.dm-pc-col--con h5{color:var(--dm-danger);}
.dm-mini-row{display:flex;gap:.35rem;margin-bottom:.35rem;}
.dm-mini-row .dm-input{font-size:.85rem;padding:.45rem .6rem;}
.dm-linkish{background:none;border:none;color:var(--dm-accent);font-size:.78rem;font-weight:600;cursor:pointer;padding:0;}
.dm-table-wrap{overflow-x:auto;border-radius:10px;border:1px solid var(--dm-border);}
.dm-table{width:100%;border-collapse:collapse;font-size:.8rem;}
.dm-table th,.dm-table td{padding:.5rem .45rem;text-align:center;border-bottom:1px solid var(--dm-border);}
.dm-table th{background:var(--dm-surface2);color:var(--dm-muted);font-weight:600;}
.dm-table td:first-child,.dm-table th:first-child{text-align:left;font-weight:600;}
.dm-table input{width:3rem;padding:.35rem;text-align:center;border-radius:6px;border:1px solid var(--dm-border);background:var(--dm-bg);color:var(--dm-text);}
.dm-eis-grid{display:grid;gap:.5rem;grid-template-columns:1fr 1fr;}
@media (max-width:500px){.dm-eis-grid{grid-template-columns:1fr;}}
.dm-eis-cell{border-radius:12px;padding:.65rem;min-height:100px;border:2px solid var(--dm-border);}
.dm-eis-cell--q1{background:rgba(248,113,113,.08);border-color:rgba(248,113,113,.35);}
.dm-eis-cell--q2{background:rgba(251,191,36,.08);border-color:rgba(251,191,36,.35);}
.dm-eis-cell--q3{background:rgba(96,165,250,.08);border-color:rgba(96,165,250,.35);}
.dm-eis-cell--q4{background:rgba(148,163,184,.1);border-color:rgba(148,163,184,.3);}
.dm-eis-cell h5{margin:0 0 .15rem;font-size:.8rem;}
.dm-eis-cell p{margin:0 0 .4rem;font-size:.68rem;color:var(--dm-muted);}
.dm-drop-zone{min-height:48px;border-radius:8px;border:1px dashed var(--dm-border);padding:.35rem;display:flex;flex-wrap:wrap;gap:.35rem;align-content:flex-start;}
.dm-chip-drag{display:inline-flex;padding:.35rem .65rem;border-radius:999px;background:var(--dm-accent-dim);color:var(--dm-accent);font-size:.78rem;cursor:grab;border:1px solid rgba(8,145,178,.25);}
.dm-chip-drag:active{cursor:grabbing;}
.dm-swot-grid{display:grid;gap:.5rem;}
@media (min-width:640px){.dm-swot-grid{grid-template-columns:1fr 1fr;}}
.dm-swot-box{border-radius:10px;padding:.65rem;border:1px solid var(--dm-border);}
.dm-swot-box--s{background:rgba(74,222,128,.08);}
.dm-swot-box--w{background:rgba(248,113,113,.08);}
.dm-swot-box--o{background:rgba(96,165,250,.08);}
.dm-swot-box--t{background:rgba(251,191,36,.08);}
.dm-swot-box h6{margin:0 0 .4rem;font-size:.75rem;}
.dm-swot-box textarea{min-height:72px;font-size:.85rem;}
.dm-center-actions{text-align:center;margin-top:1rem;}
.dm-article{margin-top:2.5rem;padding-top:2rem;border-top:1px solid rgba(15,23,42,.12);}
.dm-article h2{font-size:1.35rem;margin:2rem 0 .75rem;line-height:1.25;color:#0f172a;}
.dm-article h2:first-child{margin-top:0;}
.dm-article h3{font-size:1.05rem;margin:1.5rem 0 .5rem;color:#0f172a;}
.dm-article p{font-size:1rem;line-height:1.65;color:#475569;margin:0 0 1rem;}
.dm-article p.dm-lead{color:#0f172a;font-size:1.05rem;}
.dm-callout{border-left:3px solid #0891b2;padding:.85rem 1rem;margin:1.25rem 0;background:rgba(8,145,178,.09);border-radius:0 10px 10px 0;}
.dm-callout p{margin:0;font-size:.95rem;color:#0f172a;}
.dm-dl{display:grid;gap:.65rem;margin:1rem 0;}
.dm-dl div{display:grid;gap:.15rem;padding:.65rem 0;border-bottom:1px solid rgba(15,23,42,.1);}
.dm-dl dt{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#64748b;}
.dm-dl dd{margin:0;font-size:.95rem;color:#1e293b;}
.dm-list{margin:0 0 1rem;padding-left:1.2rem;color:#475569;line-height:1.6;}
.dm-list li{margin-bottom:.35rem;}
.dm-cmp-wrap{overflow-x:auto;margin:1rem 0;border-radius:12px;border:1px solid rgba(15,23,42,.12);}
.dm-cmp{width:100%;border-collapse:collapse;font-size:.9rem;}
.dm-cmp th,.dm-cmp td{padding:.65rem .75rem;text-align:left;border-bottom:1px solid rgba(15,23,42,.08);}
.dm-cmp th{background:#f8fafc;color:#475569;font-weight:700;}
.dm-cmp td{color:#1e293b;}
.dm-cmp caption{caption-side:bottom;padding:.5rem 0 0;font-size:.8rem;color:#64748b;text-align:left;}
@media (min-width:992px){body.bmc-productivity .dm-spacer-dock{display:none;}}
@media (max-width:991px){body.bmc-productivity .dm-spacer-dock{height:72px;}}
.dm-mini-rows{display:flex;flex-direction:column;gap:.35rem;}
.dm-toast{position:fixed;left:50%;bottom:calc(5.5rem + env(safe-area-inset-bottom));transform:translateX(-50%) translateY(120%);z-index:60;max-width:min(90vw,360px);padding:.65rem 1rem;border-radius:12px;background:var(--dm-surface);border:1px solid var(--dm-border);color:var(--dm-text);font-size:.88rem;font-weight:600;box-shadow:var(--dm-shadow);opacity:0;transition:opacity .2s,transform .25s;pointer-events:none;}
.dm-toast.dm-toast--show{opacity:1;transform:translateX(-50%) translateY(0);}
@media (min-width:992px){.dm-toast{bottom:2rem;}}
