/* Smart Assistant Pro frontend */
.sap-wrapper{--c-title:#3ee36e;--c-text:#fff;--c-btn:#1dd75b;--c-hover:#0b5a26;
  font-family:var(--sap-font); font-size:var(--sap-font-size); font-weight:var(--sap-font-weight);
  border:1px solid rgba(255,255,255,.08); border-radius:12px; overflow:hidden;
  background:#0d1117; color:var(--c-text);
}
.sap-theme-light{background:#ffffff;color:#222;border-color:#e5e7eb}
.sap-theme-light .sap-title{color:#0a7a2e}
.sap-wrapper .sap-header{padding:16px;text-align:center}
.sap-title{margin:0;color:var(--c-title)}
.sap-subtitle{opacity:.8;font-size:.9em}
.sap-tabs{display:flex;gap:8px;padding:8px; border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06)}
.sap-tab{background:transparent;border:1px solid rgba(255,255,255,.1);color:inherit;border-radius:8px;padding:8px 12px;cursor:pointer}
.sap-tab.is-active{background:var(--c-btn); color:#062a12; border-color:transparent}
.sap-body{display:grid;grid-template-columns:1fr; gap:16px; padding:12px}
.sap-col.hidden{display:none}
/* Chat */
.sap-messages{height:45vh; overflow:auto; padding:8px; background:rgba(255,255,255,.03); border-radius:8px}
.sap-msg{display:flex;margin:8px 0;gap:8px}
.sap-msg.user{justify-content:flex-end}
.sap-bubble{padding:8px 12px;border-radius:12px;max-width:75%}
.sap-msg.user .sap-bubble{background:linear-gradient(90deg,var(--c-btn),#8af0b8);color:#053819}
.sap-msg.assistant .sap-bubble{background:rgba(255,255,255,.06)}
.sap-toolbar{display:flex;gap:8px;margin-top:8px;align-items:center}
.sap-upload input{display:none}
.sap-upload span{border:1px dashed rgba(255,255,255,.3); padding:6px 10px; border-radius:8px; cursor:pointer}
.sap-input{display:flex;gap:8px;margin-top:8px; align-items:flex-end}
.sap-input textarea{flex:1;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1); border-radius:8px; color:inherit;padding:10px; resize:vertical}
.sap-send{background:var(--c-btn); color:#062a12; border:none; border-radius:8px; padding:10px 14px; cursor:pointer}
.sap-send:hover{background:var(--c-hover); color:#fff}
/* History */
.sap-filter{display:flex;gap:8px; align-items:center; margin-bottom:8px}
#sapHistory .item{padding:8px;border:1px solid rgba(255,255,255,.08); border-radius:8px;margin-bottom:6px}
/* Notes */
.sap-notes-top{display:flex;gap:8px;align-items:center;margin-bottom:8px}
.sap-editor{min-height:160px;border:1px solid rgba(255,255,255,.12); border-radius:8px; padding:8px; background:rgba(255,255,255,.03)}
.sap-editor-toolbar{display:flex;gap:6px;margin:6px 0}
.sap-editor-toolbar button{border:1px solid rgba(255,255,255,.2); background:transparent; color:inherit;border-radius:6px;padding:4px 8px;cursor:pointer}
.sap-note-card{border:1px solid rgba(255,255,255,.1); border-radius:10px; padding:8px; margin-bottom:8px; background:rgba(0,0,0,.04)}
.sap-note-actions{display:flex;gap:8px;margin-top:6px}
.sap-note-actions .outline{background:transparent;border:1px solid rgba(255,255,255,.2)}
.sap-note-section h4{margin:8px 0 4px 0; opacity:.8}
/* Light overrides */
.sap-theme-light .sap-messages, .sap-theme-light .sap-editor{background:#f8fafc;border-color:#e5e7eb}
.sap-theme-light .sap-upload span{border-color:#cbd5e1}
.sap-theme-light .sap-note-card{background:#f8fafc;border-color:#e5e7eb}
/* Responsive */
@media (min-width: 900px){
  .sap-body{grid-template-columns:2fr 1fr;}
  .sap-col[data-view=notes]{grid-column:2}
}


/* Container full width */
.sap-wrapper{width:100%; box-sizing:border-box}

/* 70/30 layout when there is a pinned note in chat */
.sap-wrapper.sap-has-pinned .sap-body{grid-template-columns:70% 30%}
.sap-pinned-aside{border-left:1px solid rgba(255,255,255,.08); padding-left:12px}
.sap-pinned-aside.hidden{display:none}

/* Notes grid fills space */
.sap-note-list{display:grid; grid-template-columns:repeat(auto-fill, minmax(220px, 1fr)); gap:12px}
.sap-note-card{background:#fffbe6; color:#222; border:none; box-shadow:0 6px 18px rgba(0,0,0,.12); transform:rotate(-0.25deg);}
.sap-note-card .title{font-weight:700; margin-bottom:6px}
.sap-note-card .meta{opacity:.65; font-size:12px; margin-bottom:6px}
.sap-note-card .pin{font-size:18px; line-height:1; cursor:pointer;}

/* Editor improvements */
.sap-editor{min-height:180px}
.sap-editor-toolbar{display:flex; flex-wrap:wrap; gap:8px; margin-bottom:8px}
.sap-editor-toolbar .sap-upload{align-items:center}

/* Drag & drop for image upload */
.sap-upload{display:inline-flex; align-items:center; gap:8px}
.sap-upload input[type=file]{display:none}
.sap-upload span{display:inline-block; padding:6px 10px; border:1px dashed rgba(255,255,255,.25); border-radius:8px}
.sap-upload.dragover span{outline:2px dashed var(--c-btn)}

/* Light theme adjustments for sticky notes */
.sap-theme-light .sap-note-card{background:#fff9c2; color:#111}


/* Appearance variables */
.sap-wrapper{ --sap-radius: 12px; --sap-padding: 12px; --sap-shadow: 0 8px 20px rgba(0,0,0,.15); }
.sap-wrapper{ border-radius: var(--sap-radius); }
.sap-wrapper .sap-body{ padding: var(--sap-padding); }
.mbp-shadow-none{ box-shadow: none; }
.mbp-shadow-soft{ box-shadow: 0 4px 12px rgba(0,0,0,.12); }
.mbp-shadow-medium{ box-shadow: 0 8px 20px rgba(0,0,0,.16); }
.mbp-shadow-strong{ box-shadow: 0 14px 32px rgba(0,0,0,.22); }

.sap-editor-toolbar select.sap-select{padding:6px 8px;border:1px solid var(--c-border);border-radius:8px;margin-right:6px}


.sap-notes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.sap-postit{background:#fffce1;border:1px solid rgba(0,0,0,.06);border-radius:12px;box-shadow:0 10px 20px rgba(0,0,0,.09);padding:12px}
.sap-postit .head{font-weight:600;margin-bottom:6px;display:flex;gap:6px;align-items:center}

.sap-editor.dragging, .sap-upload.dragging { outline: 2px dashed var(--c-btn); outline-offset: 4px; }
