:root{--bg: #0f1115;--panel: #181b22;--panel-2: #1f232c;--border: #2a2f3a;--text: #e6e9ef;--muted: #9aa4b2;--accent: #6d8bff;--ok: #3ecf8e;--warn: #f0b429;--err: #ff6b6b;--radius: 10px}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text)}.app{max-width:960px;margin:0 auto;padding:24px 20px 60px}header h1{font-size:20px;margin:0 0 4px}header p{color:var(--muted);margin:0 0 20px;font-size:14px}.app-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.logout{background:transparent;border:1px solid var(--border);color:var(--muted);padding:7px 12px;border-radius:var(--radius);cursor:pointer;font-size:13px;flex-shrink:0}.logout:hover{color:var(--text)}.login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}.login-card{width:100%;max-width:360px;margin:0}.login-card h1{font-size:20px;margin:0 0 4px}.login-card p{margin:0 0 8px}.login-card .primary{width:100%}nav{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:24px;border-bottom:1px solid var(--border);padding-bottom:12px}nav button{background:transparent;border:1px solid transparent;color:var(--muted);padding:8px 14px;border-radius:var(--radius);cursor:pointer;font-size:14px}nav button.active{background:var(--panel-2);color:var(--text);border-color:var(--border)}nav.subnav{margin-top:-12px;margin-bottom:20px;border-bottom:1px solid var(--border);padding-bottom:10px}nav.subnav button{padding:6px 12px;font-size:13px}nav.subnav button.active{background:var(--accent);color:#0b1020;border-color:transparent}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:18px;margin-bottom:16px}.card h2{margin:0 0 12px;font-size:16px}label{display:block;font-size:13px;color:var(--muted);margin:10px 0 4px}input,textarea,select{width:100%;background:var(--panel-2);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:9px 10px;font-size:14px;font-family:inherit}textarea{min-height:90px;resize:vertical}button.primary{margin-top:14px;background:var(--accent);color:#0b1020;border:none;padding:10px 16px;border-radius:8px;font-weight:600;cursor:pointer;font-size:14px}button.primary:disabled{opacity:.5;cursor:not-allowed}.segmented{display:flex;gap:4px;padding:4px;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:18px}.segmented button{flex:1;background:transparent;border:none;color:var(--muted);padding:9px 12px;border-radius:7px;cursor:pointer;font-size:14px;font-weight:600;transition:background .15s ease,color .15s ease}.segmented button:hover{color:var(--text)}.segmented button.active{background:var(--accent);color:#0b1020}.btn-ghost{background:transparent;border:1px solid var(--border);color:var(--text);padding:10px 16px;border-radius:8px;font-weight:600;cursor:pointer;font-size:14px}.btn-ghost:hover:not(:disabled){border-color:var(--muted)}.btn-ghost:disabled{opacity:.5;cursor:not-allowed}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;padding:20px;z-index:100;animation:modal-fade .12s ease}.modal{width:100%;max-width:420px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:22px;box-shadow:0 20px 60px #00000080;animation:modal-pop .14s ease}.modal-title{margin:0 0 8px;font-size:18px}.modal-message{margin:0 0 14px;font-size:14px;color:var(--muted);line-height:1.5}.modal-preview{background:var(--panel-2);border:1px solid var(--border);border-radius:8px;padding:10px;margin-bottom:16px}.modal-preview-img{display:block;width:100%;max-height:220px;object-fit:cover;border-radius:6px}.modal-preview-caption{margin:8px 0 0;font-size:13px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.modal-actions{display:flex;justify-content:flex-end;gap:10px}.modal-actions .primary{margin-top:0}@keyframes modal-fade{0%{opacity:0}}@keyframes modal-pop{0%{opacity:0;transform:translateY(8px) scale(.98)}}.checkbox-row{display:flex;align-items:flex-start;gap:9px;margin:14px 0 4px;font-size:13px;color:var(--text);cursor:pointer;text-transform:none;letter-spacing:normal}.checkbox-row input{width:auto;margin-top:2px;flex-shrink:0;cursor:pointer}.img-preview{display:block;margin-top:10px;max-width:220px;width:100%;border-radius:8px;border:1px solid var(--border);object-fit:cover}.lc-wrap{margin-top:12px}.linechart{display:block;width:100%;height:auto;cursor:crosshair}.lc-line{fill:none;stroke:var(--accent);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.lc-area{fill:var(--accent);opacity:.12;stroke:none}.lc-dot{fill:var(--accent)}.lc-dot-active{fill:var(--accent);stroke:var(--panel);stroke-width:2}.lc-grid{stroke:var(--border);stroke-width:1}.lc-crosshair{stroke:var(--muted);stroke-width:1;stroke-dasharray:4 4;opacity:.6}.lc-axis{fill:var(--muted);font-size:11px}.lc-tooltip-box{fill:var(--panel);stroke:var(--border);stroke-width:1}.lc-tooltip-title{fill:var(--muted);font-size:11px}.lc-tooltip-value{fill:var(--text);font-size:12px;font-weight:600}.lc-summary{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:6px}.lc-summary-value{font-size:24px;font-weight:700;letter-spacing:-.02em}.lc-summary-label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.lc-summary-stats{display:flex;gap:18px}.lc-summary-stats>div{display:flex;flex-direction:column;gap:2px}.lc-stat-label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.lc-stat-value{font-size:15px;font-weight:600}.lc-up{color:var(--ok)}.lc-down{color:var(--err)}.row{display:flex;gap:12px;flex-wrap:wrap}.row>*{flex:1;min-width:160px}.badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;padding:3px 9px;border-radius:999px;border:1px solid var(--border)}.dot{width:8px;height:8px;border-radius:50%}.dot.ok{background:var(--ok)}.dot.off{background:var(--err)}.result{margin-top:14px;background:var(--panel-2);border:1px solid var(--border);border-radius:8px;padding:12px;white-space:pre-wrap;font-size:13px}.error{color:var(--err);font-size:13px;margin-top:10px}.muted{color:var(--muted);font-size:13px}.profile{display:flex;gap:16px;align-items:flex-start}.avatar{width:72px;height:72px;border-radius:50%;object-fit:cover;border:1px solid var(--border);flex-shrink:0}.avatar-fallback{display:flex;align-items:center;justify-content:center;background:var(--panel-2);font-size:28px;font-weight:600;color:var(--muted)}.profile-name{font-size:18px;font-weight:600}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:16px}.tile{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:16px}.tile-value{font-size:26px;font-weight:700;letter-spacing:-.02em}.tile-label{margin-top:4px;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;margin-top:16px}.media-item{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);display:flex;flex-direction:column;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.media-item:hover{transform:translateY(-3px);border-color:var(--accent);box-shadow:0 10px 28px #0006}.media-thumb-wrap{position:relative;width:100%;overflow:hidden;border-top-left-radius:var(--radius);border-top-right-radius:var(--radius)}.media-thumb{display:block;width:100%;aspect-ratio:1 / 1;object-fit:cover}.media-thumb-wrap:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(0,0,0,.45),transparent 45%);pointer-events:none}.media-type-tag{position:absolute;top:8px;left:8px;z-index:1;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:3px 8px;border-radius:999px;background:#0009;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.media-body{padding:12px 14px 14px;display:flex;flex-direction:column;gap:8px}.media-date{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.media-caption{font-size:13px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.media-stats{display:flex;gap:14px;font-size:13px;font-weight:600;color:var(--text);padding:8px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.media-stats span{display:inline-flex;align-items:center;gap:5px}.media-insights{display:flex;flex-wrap:wrap;gap:6px}.media-body button{align-self:flex-start;background:transparent;border:1px solid var(--border);color:var(--text);padding:7px 12px;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.media-body button:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.media-body button:disabled{opacity:.5;cursor:not-allowed}.media-comments{display:flex;flex-direction:column;gap:8px;padding-top:8px;border-top:1px solid var(--border)}.media-comment{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:8px 10px}.media-comment-head{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px}.media-comment-text{margin:4px 0 8px;font-size:13px;line-height:1.4}.media-reply{display:flex;gap:6px}.media-reply input{flex:1;padding:6px 8px;font-size:12px}.media-reply button{align-self:auto;flex-shrink:0;padding:6px 10px;font-size:12px}.media-permalink{margin-top:2px;font-size:12px;color:var(--muted);text-decoration:none}.media-permalink:hover{color:var(--accent)}.infotip{position:relative;display:inline-flex;align-items:center;margin-left:5px;outline:none}.infotip-icon{width:14px;height:14px;border-radius:50%;border:1px solid var(--muted);color:var(--muted);font-size:10px;font-style:italic;font-weight:700;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:help}.infotip-content{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);width:240px;max-width:70vw;background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:9px 11px;font-size:12px;font-weight:400;line-height:1.45;color:var(--text);text-transform:none;letter-spacing:normal;box-shadow:0 8px 24px #00000073;opacity:0;visibility:hidden;transition:opacity .12s ease;z-index:30;white-space:normal}.infotip-content:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:var(--border)}.infotip:hover .infotip-content,.infotip:focus .infotip-content,.infotip:focus-within .infotip-content{opacity:1;visibility:visible}.multi-img-grid{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}.multi-img-item{position:relative;width:84px;height:84px;border-radius:8px;overflow:hidden;border:1px solid var(--border);background:var(--panel-2)}.multi-img-item img{width:100%;height:100%;object-fit:cover;display:block}.multi-img-index{position:absolute;top:3px;left:3px;z-index:1;font-size:10px;font-weight:700;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:#000000a6;color:#fff;display:inline-flex;align-items:center;justify-content:center}.multi-img-actions{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;gap:2px;padding:3px;background:linear-gradient(to top,rgba(0,0,0,.6),transparent)}.multi-img-actions button{background:#0000008c;border:none;color:#fff;width:22px;height:22px;border-radius:6px;cursor:pointer;font-size:14px;line-height:1;padding:0}.multi-img-actions button:disabled{opacity:.35;cursor:not-allowed}.multi-img-actions .multi-img-remove{background:#ff6b6bd9}.multi-img-url{display:flex;gap:8px;align-items:center}.multi-img-url input{flex:1}.multi-img-url .btn-ghost{flex-shrink:0;padding:9px 14px}.cal-gallery{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.cal-gallery img{width:84px;height:84px;object-fit:cover;border-radius:8px;border:1px solid var(--border);cursor:zoom-in;transition:border-color .12s ease,transform .12s ease}.cal-gallery img:hover{border-color:var(--accent);transform:translateY(-1px)}.lightbox-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#000000d9;display:flex;align-items:center;justify-content:center;padding:32px;cursor:zoom-out;animation:modal-fade .12s ease}.lightbox-img{max-width:100%;max-height:100%;object-fit:contain;border-radius:8px;box-shadow:0 20px 60px #0009;cursor:default}.lightbox-close{position:fixed;top:16px;right:20px;z-index:201;background:transparent;border:none;color:#fff;font-size:34px;line-height:1;cursor:pointer;opacity:.8}.lightbox-close:hover{opacity:1}.cal-thumb-wrap{position:relative;display:block}.cal-thumb-count{position:absolute;top:2px;right:2px;font-size:9px;font-weight:700;padding:1px 4px;border-radius:6px;background:#000000a6;color:#fff}.sched-carousel{display:inline-block;margin-right:6px;font-size:11px;font-weight:600;color:var(--accent)}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:8px;border-bottom:1px solid var(--border)}th{color:var(--muted);font-weight:500}.sched-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px}.sched-count{font-size:12px;color:var(--muted)}.sched-table{margin-top:14px;table-layout:auto}.sched-table thead th{font-size:11px;text-transform:uppercase;letter-spacing:.05em;padding:6px 10px;border-bottom:1px solid var(--border)}.sched-table tbody td{padding:12px 10px;border-bottom:1px solid var(--border);vertical-align:middle}.sched-table tbody tr{transition:background .12s ease}.sched-table tbody tr:hover{background:var(--panel-2)}.sched-table tbody tr:last-child td{border-bottom:none}.sched-post{display:flex;align-items:center;gap:11px;min-width:220px}.sched-thumb{width:44px;height:44px;border-radius:8px;object-fit:cover;border:1px solid var(--border);flex-shrink:0}.sched-thumb-fallback{display:flex;align-items:center;justify-content:center;background:var(--panel-2);font-size:18px;color:var(--muted)}.sched-caption{font-size:13px;line-height:1.35;color:var(--text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.sched-caption.empty{color:var(--muted);font-style:italic}.sched-when-date{font-weight:600;color:var(--text)}.sched-when-time{font-size:12px;color:var(--muted);margin-top:2px}.sched-dest{display:inline-flex;align-items:center;gap:7px;font-size:13px}.sched-dest-icon{font-size:15px;line-height:1}.sched-dest-kind{color:var(--muted);font-size:12px}.status-badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;padding:4px 10px;border-radius:999px;border:1px solid transparent;white-space:nowrap}.status-badge .dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.status-pending{color:var(--warn);background:#f0b4291f;border-color:#f0b4294d}.status-pending .dot{background:var(--warn)}.status-published{color:var(--ok);background:#3ecf8e1f;border-color:#3ecf8e4d}.status-published .dot{background:var(--ok)}.status-failed{color:var(--err);background:#ff6b6b1f;border-color:#ff6b6b4d}.status-failed .dot{background:var(--err)}.status-canceled{color:var(--muted);background:var(--panel-2);border-color:var(--border)}.status-canceled .dot{background:var(--muted)}.sched-error{margin-top:4px;font-size:11px;color:var(--err);max-width:220px;line-height:1.35}.sched-cancel{background:transparent;border:1px solid var(--border);color:var(--muted);padding:6px 12px;border-radius:8px;font-size:13px;cursor:pointer;transition:border-color .15s ease,color .15s ease}.sched-cancel:hover:not(:disabled){border-color:var(--err);color:var(--err)}.sched-cancel:disabled{opacity:.5;cursor:not-allowed}.sched-empty{display:flex;flex-direction:column;align-items:center;gap:6px;padding:32px 16px;text-align:center;color:var(--muted)}.sched-empty-icon{font-size:30px;opacity:.6}.sched-scroll{overflow-x:auto;margin-top:14px}.sched-scroll .sched-table{margin-top:0;min-width:560px}.cal-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.cal-nav{display:flex;gap:6px}.cal-nav .btn-ghost{padding:6px 12px;min-width:38px}.cal-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.cal-viewswitch{margin-bottom:0;flex-shrink:0}.cal-viewswitch button{flex:0 0 auto;padding:6px 14px;font-size:13px}.cal-week-list{display:flex;flex-direction:column;gap:8px;margin-top:14px}.cal-row{display:flex;align-items:center;gap:14px;width:100%;text-align:left;padding:10px 14px;background:var(--panel-2);border:1px solid var(--border);border-radius:10px;cursor:pointer;color:var(--text);font-family:inherit;transition:border-color .12s ease,transform .12s ease}.cal-row:hover{border-color:var(--accent);transform:translateY(-1px)}.cal-row.cal-selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.cal-row.cal-today{border-left:3px solid var(--accent)}.cal-row-date{display:flex;flex-direction:column;align-items:center;justify-content:center;width:56px;flex-shrink:0}.cal-row-weekday{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.cal-row-daynum{font-size:22px;font-weight:700;line-height:1.15}.cal-row.cal-today .cal-row-daynum,.cal-row.cal-today .cal-row-weekday{color:var(--accent)}.cal-row-main{flex:1;min-width:0;display:flex;align-items:center;gap:12px}.cal-row-thumb{width:54px;height:54px;border-radius:8px;object-fit:cover;border:1px solid var(--border);flex-shrink:0}.cal-row-thumb-empty{display:flex;align-items:center;justify-content:center;background:var(--panel);font-size:20px}.cal-row-text{min-width:0;display:flex;flex-direction:column}.cal-row-topic{font-weight:600;font-size:14px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.cal-row-caption{font-size:12px;color:var(--muted);line-height:1.35;margin-top:2px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cal-row-meta{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-top:4px}.cal-row-empty{color:var(--muted);font-size:13px}.cal-row-status{flex-shrink:0;align-self:center}@media (max-width: 560px){.cal-row{flex-wrap:wrap}.cal-row-status{margin-left:70px}}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-top:14px}.cal-weekday{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);text-align:center;padding-bottom:4px}.cal-cell{position:relative;display:flex;flex-direction:column;align-items:stretch;gap:4px;min-height:84px;padding:6px;background:var(--panel-2);border:1px solid var(--border);border-radius:8px;cursor:pointer;text-align:left;color:var(--text);font-family:inherit;transition:border-color .12s ease,background .12s ease,transform .12s ease;overflow:hidden}.cal-cell:hover:not(.cal-blank){border-color:var(--accent);transform:translateY(-1px)}.cal-blank{background:transparent;border-color:transparent;cursor:default;min-height:0}.cal-daynum{font-size:12px;font-weight:600;color:var(--muted)}.cal-today .cal-daynum{color:#0b1020;background:var(--accent);width:20px;height:20px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:700}.cal-selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.cal-cell-body{display:flex;flex-direction:column;gap:4px;min-height:0}.cal-thumb{width:100%;height:34px;object-fit:cover;border-radius:5px;border:1px solid var(--border)}.cal-topic{font-size:11px;line-height:1.3;color:var(--text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cal-cell-time{font-size:10px;font-weight:600;color:var(--accent)}.plan-dot{width:8px;height:8px;border-radius:50%;align-self:flex-start}.plan-badge{display:inline-flex;align-items:center;font-size:12px;font-weight:600;padding:4px 10px;border-radius:999px;border:1px solid transparent}.plan-idle{background:var(--panel-2);color:var(--muted);border-color:var(--border)}.plan-generating{background:#6d8bff24;color:var(--accent);border-color:#6d8bff59}.plan-ready{background:#3ecf8e1f;color:var(--ok);border-color:#3ecf8e4d}.plan-failed{background:#ff6b6b1f;color:var(--err);border-color:#ff6b6b4d}.plan-pending{background:#f0b4291f;color:var(--warn);border-color:#f0b4294d}.plan-scheduled{background:#6d8bff24;color:var(--accent);border-color:#6d8bff59}span.plan-dot.plan-idle{background:var(--muted)}span.plan-dot.plan-generating{background:var(--accent)}span.plan-dot.plan-ready{background:var(--ok)}span.plan-dot.plan-failed{background:var(--err)}span.plan-dot.plan-pending{background:var(--warn)}span.plan-dot.plan-scheduled{background:var(--accent)}.cal-section+.cal-section{margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}.cal-section-title{margin:0 0 10px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.cal-source{margin:4px 0 14px}.cal-feedback{min-height:60px}.cal-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.cal-actions .primary{margin-top:0}.cal-danger:hover:not(:disabled){border-color:var(--err);color:var(--err)}.cal-content{margin-top:18px;padding-top:16px;border-top:1px solid var(--border)}.cal-approval{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:12px 0 4px}.cal-approval .primary,.cal-approval .btn-ghost{margin-top:0}.cal-scheduled-note{margin:14px 0 0;font-size:13px;font-weight:600;color:var(--ok)}.cal-content-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}.cal-preview{display:block;max-width:320px;width:100%;border-radius:10px;border:1px solid var(--border);margin-bottom:12px}.cal-schedule{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-top:14px}.cal-schedule>div{flex:1;min-width:200px}.cal-schedule .primary{margin-top:0}.cal-modal{max-width:460px;max-height:88vh;overflow-y:auto}.cal-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:6px}.cal-modal-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.cal-modal-title h2{font-size:16px}.cal-modal-close{background:transparent;border:none;color:var(--muted);font-size:24px;line-height:1;cursor:pointer;padding:0 2px;flex-shrink:0}.cal-modal-close:hover{color:var(--text)}.cal-modal .cal-preview{max-width:100%}@media (max-width: 640px){.cal-cell{min-height:64px}.cal-topic{display:none}}
