/* Ciara's Diary – clean, mobile-first */
.ciaras-diary,.ciaras-diary-calendar{max-width:860px;margin:18px auto;padding:0 12px;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
.cd-card{background:#fff;border:1px solid #e6e6e6;border-radius:16px;box-shadow:0 6px 24px rgba(0,0,0,.06);overflow:hidden}
.cd-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:linear-gradient(90deg,#ff62b3,#4aa7ff);color:#fff}
.cd-title{font-weight:800;letter-spacing:.2px}
.cd-actions{display:flex;gap:8px}
.cd-toolbar{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid #eee;background:#fafafa;flex-wrap:wrap}
.cd-tabs{display:flex;gap:6px;flex-wrap:wrap}
.cd-tab{border:1px solid rgba(0,0,0,.08);background:#fff;border-radius:999px;padding:8px 12px;font-weight:600;cursor:pointer}
.cd-tab.is-active{background:#111;color:#fff;border-color:#111}
.cd-search{flex:1;min-width:200px;max-width:360px}
.cd-input{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:10px;outline:none}
.cd-input:focus{border-color:#111}
.cd-date{max-width:170px}
.cd-btn{border:0;border-radius:10px;padding:10px 12px;font-weight:700;background:#111;color:#fff;cursor:pointer}
.cd-btn-secondary{background:#ffffff;color:#111;border:1px solid rgba(255,255,255,.6)}
.cd-btn-danger{background:#c51d1d;color:#fff}
.cd-iconbtn{border:0;background:transparent;font-size:16px;cursor:pointer;opacity:.85}
.cd-iconbtn:hover{opacity:1}
.cd-iconbtn.has-notes{font-weight:800}
.cd-add-list{display:flex;gap:10px;padding:12px 16px;border-bottom:1px solid #eee;background:#fff;flex-wrap:wrap}
.cd-add-list .cd-input{flex:1;min-width:220px}
.cd-lists{padding:14px 16px;background:#fff}
.cd-loading,.cd-empty{padding:20px;text-align:center;color:#666}
.cd-list{border:1px solid #eee;border-radius:14px;margin-bottom:14px;overflow:hidden}
.cd-list__head{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#f6f7fb}
.cd-list__toggle{border:0;background:#fff;border:1px solid #eee;border-radius:10px;width:34px;height:34px;cursor:pointer}
.cd-list__title{flex:1;font-weight:800;outline:none}
.cd-list.is-locked .cd-list__title{opacity:.9}
.cd-list__count{font-weight:800;color:#555}
.cd-list__body{padding:12px}
.cd-list.is-collapsed .cd-list__body{display:none}
.cd-add-item{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:10px}
.cd-add-item .cd-input{flex:1;min-width:220px}
.cd-items{list-style:none;margin:0;padding:0}
.cd-item{display:flex;gap:10px;align-items:center;padding:10px;border:1px solid #eee;border-radius:12px;margin-bottom:8px;background:#fff}
.cd-item.is-done{opacity:.65}
.cd-item.is-done .cd-item__text{text-decoration:line-through}
.cd-check{display:flex;gap:10px;align-items:center;flex:1}
.cd-item__text{font-weight:650}
.cd-handle{cursor:grab;user-select:none;opacity:.6}
.cd-handle:active{cursor:grabbing}
.cd-pill{font-size:12px;font-weight:800;border-radius:999px;padding:6px 10px;background:#f0f0f0}
.cd-pill.is-overdue{background:#ffe1e1}
.cd-modal{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:9999}
.cd-modal[aria-hidden="true"]{display:none}
.cd-modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.45)}
.cd-modal__panel{position:relative;background:#fff;border-radius:16px;max-width:560px;width:calc(100% - 24px);box-shadow:0 16px 60px rgba(0,0,0,.25);overflow:hidden}
.cd-modal__header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid #eee}
.cd-modal__title{font-weight:900}
.cd-modal__body{padding:14px}
.cd-form .cd-label{display:block;font-weight:800;margin:10px 0 6px}
.cd-textarea{width:100%;min-height:130px;padding:10px 12px;border:1px solid #ddd;border-radius:12px}
.cd-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
.cd-muted{color:#666;font-size:14px}
.cd-templates{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media (max-width:520px){.cd-templates{grid-template-columns:1fr}}
.cd-template{border:1px solid #eee;border-radius:14px;background:#fff;padding:12px;text-align:left;cursor:pointer}
.cd-template__name{font-weight:900}
.cd-template__meta{color:#666;font-size:13px;margin-top:4px}

/* Calendar */
.cd-cal-day{border:1px solid #eee;border-radius:14px;margin-bottom:14px;overflow:hidden}
.cd-cal-head{display:flex;gap:10px;align-items:center;justify-content:flex-start;padding:10px 12px;background:#f6f7fb}
.cd-cal-list{list-style:none;margin:0;padding:10px 12px;background:#fff}
.cd-cal-item{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:10px;border:1px solid #eee;border-radius:12px;margin-bottom:8px}
.cd-cal-item.is-done{opacity:.65}
.cd-cal-item.is-done .cd-cal-text{text-decoration:line-through}
.cd-cal-meta{font-size:12px;font-weight:800;color:#666;background:#f0f0f0;padding:6px 10px;border-radius:999px;white-space:nowrap}

/* Mobile fixes (small screens) */
@media (max-width: 520px){
  .cd-item{
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 8px;
  }
  .cd-check{
    flex: 1 1 100%;
    min-width: 0;
  }
  .cd-item__text{
    display: block;
    white-space: normal;
    word-break: normal;
    overflow-wrap: anywhere;
  }
  .cd-pill{
    order: 3;
    margin-left: 28px;
  }
  .cd-iconbtn{
    order: 4;
  }
  .cd-item .cd-iconbtn{padding:6px 6px}
}
