/* Scoped planning workspace, matching the existing ROVEX theme. */
#view-planner { --pl-line:rgba(255,255,255,.10); --pl-muted:#b8b8bd; }
#view-planner [hidden],.pl-dialog [hidden],#pl-dashboard[hidden],#pl-nav-count[hidden] { display:none!important; }
.pl-header { display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px; }
.pl-eyebrow { font-size:10px;letter-spacing:.16em;font-weight:700;color:#db9994; }
.pl-header h2 { margin:7px 0 8px;font-size:29px;letter-spacing:-.6px; }
.pl-header p { margin:0;color:var(--pl-muted);font-size:13px; }
.pl-header-actions,.pl-toolbar { display:flex;align-items:center;gap:10px; }
.pl-header-actions .btn { white-space:nowrap;min-height:42px; }
.pl-workspace { display:grid;grid-template-columns:214px minmax(0,1fr);border:1px solid var(--pl-line);border-radius:16px;overflow:hidden;background:rgba(16,16,19,.2);min-height:620px; }
.pl-sidebar { background:rgba(0,0,0,.12);padding:27px 15px;border-right:1px solid var(--pl-line); }
.pl-sidebar-title { font-size:10px;letter-spacing:.14em;color:var(--pl-muted);margin:0 12px 15px; }
#pl-tabs { display:grid;gap:5px; }
#pl-tabs button { display:flex;align-items:center;gap:10px;min-height:44px;border:0;border-radius:8px;padding:10px 12px;text-align:left;background:transparent;color:#bfbfc5;cursor:pointer;font:inherit;font-size:12px; }
#pl-tabs button i { width:15px;text-align:center; }
#pl-tabs button b { margin-left:auto;font-size:11px;opacity:.7; }
#pl-tabs button:hover { background:rgba(255,255,255,.05); }
#pl-tabs button.is-active { background:rgba(178,48,45,.2);color:#ffc3bd; }
.pl-sidebar-note { border-top:1px solid var(--pl-line);padding:24px 12px 0;margin-top:30px;font-size:12px;color:var(--pl-muted);line-height:1.7; }
.pl-sidebar-note>i { display:block;font-size:18px;color:#d48d84;margin-bottom:10px; }.pl-sidebar-note strong { color:#dedee3; }.pl-sidebar-note p{margin:6px 0 15px;}
.pl-sidebar-note .btn { font-size:11px;padding:7px 9px; }
.pl-main { min-width:0;padding:25px 30px 15px; }
.pl-search { display:flex;align-items:center;gap:10px;flex:1;min-width:90px;color:#aaa; }
#view-planner .pl-search input { width:100%;border:0!important;background:transparent!important;box-shadow:none!important;padding:12px 0;font-size:13px!important; }
#pl-scope { width:auto;max-width:190px; }
.pl-filter-panel { border-bottom:1px solid var(--pl-line);margin-top:8px;padding:8px 0 16px;font-size:11px;color:var(--pl-muted); }
.pl-filter-panel summary { cursor:pointer;list-style-position:inside; }.pl-filters{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin-top:14px;}.pl-filters label{flex:1;min-width:140px;display:grid;gap:6px;}.pl-filters select{width:100%;}
.pl-section-heading { display:flex;align-items:center;justify-content:space-between;gap:10px;margin:25px 0 15px; }
.pl-section-heading h3 { font-size:23px;margin:0 0 8px;letter-spacing:-.4px; }.pl-section-heading p { font-size:12px;color:var(--pl-muted);margin:0; }.pl-section-heading>span { font-size:11px;color:var(--pl-muted);white-space:nowrap; }
.pl-group { color:#bbbcc1;font-size:11px;font-weight:600;margin:25px 0 8px; }.pl-row { display:flex;align-items:center;gap:12px;padding:17px 2px;border-bottom:1px solid var(--pl-line); }.pl-row:hover { background:rgba(255,255,255,.025); }
.pl-row-action { width:24px;flex-shrink:0;text-align:center;color:#b9b2d3; }.pl-complete { width:21px;height:21px;border:1.5px solid #777780;border-radius:50%;background:transparent;color:#9fdbc3;cursor:pointer;display:grid;place-items:center;padding:0;font:inherit; }.pl-complete:hover{border-color:#cb7e74;background:rgba(203,126,116,.14);}.pl-complete.checked{background:#275446;border-color:#477c69;}.pl-overdue .pl-complete{border-color:#d89485;}
.pl-row-body { text-align:left;flex:1;min-width:0;border:0;background:transparent;color:inherit;padding:0;cursor:pointer;font:inherit; }.pl-row-title { font-size:14px;font-weight:550;line-height:1.5;display:block;overflow-wrap:anywhere; }.pl-completed .pl-row-title{text-decoration:line-through;color:#999;}
.pl-row-meta { display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;margin-top:7px;font-size:10px;color:var(--pl-muted); }.pl-row-meta i{margin-right:4px;}
.pl-pill { display:inline-flex;padding:3px 7px;border-radius:5px;background:rgba(255,255,255,.065);font-size:10px;color:#c9c9d1;white-space:nowrap; }.pl-doing{color:#99c7f7;background:rgba(65,115,175,.17);}.pl-blocked{color:#f0b688;background:rgba(162,103,41,.2);}.pl-done{color:#9dddc2;background:rgba(54,127,94,.2);}.pl-priority.pl-urgent,.pl-late{color:#efa295;}.pl-priority.pl-high{color:#e4c083;}.pl-priority.pl-low{color:#9abde3;}
.pl-person-chip { display:flex;align-items:center;gap:7px;max-width:150px;font-size:11px;color:#c2c2c8; }.pl-person-chip>span:last-child{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}.pl-avatar { width:25px;height:25px;border-radius:50%;background:#413332;color:#eab4a5;display:grid;place-items:center;flex-shrink:0;font-size:11px; }
.pl-empty { min-height:230px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#b5b5bd;padding:35px 15px;gap:10px;font-size:13px; }.pl-empty strong { color:#e0e0e5;font-size:15px; }.pl-empty p { max-width:340px;line-height:1.6;margin:0; }.pl-empty-icon { font-size:32px;color:#77757b;margin-bottom:6px; }
.pl-footer { display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:20px;font-size:10px;color:var(--pl-muted); }.pl-footer .btn{font-size:11px;}
#pl-message,.pl-dialog #pl-dialog-error { padding:12px 15px;border-radius:8px;margin:0 0 18px;line-height:1.6;font-size:13px; }.pl-notice{background:rgba(54,127,94,.18);color:#b0dfca;}.pl-error,#pl-dialog-error { background:#4a2827;color:#ffc3b4; }
.pl-calendar-bar { display:flex;align-items:center;gap:12px;margin:20px 0 18px; }.pl-calendar-bar strong{flex:1;text-transform:capitalize;text-align:center;}.pl-weekdays,#pl-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;}.pl-weekdays{font-size:10px;text-align:center;color:var(--pl-muted);margin-bottom:8px;}.pl-day { min-width:0;min-height:76px;position:relative;border:1px solid var(--pl-line);background:rgba(255,255,255,.015);border-radius:6px;color:#ddd;cursor:pointer;text-align:left;padding:9px;font:inherit;display:flex;flex-direction:column;gap:8px; }.pl-day b{font-size:12px;}.pl-day.other-month{opacity:.35;}.pl-day.selected{border-color:#c96759;background:rgba(180,60,45,.15);}.pl-day.is-today b{color:#f7a899;text-decoration:underline;text-underline-offset:4px;}.pl-day-count{font-size:9px;color:#bebbc1;}.pl-dots{display:flex;gap:4px;position:absolute;right:8px;top:13px;}.pl-dot{width:5px;height:5px;border-radius:50%;}.pl-dot.task{background:#d88e76;}.pl-dot.event{background:#ada4df;}#pl-selected-day{font-size:13px;margin:22px 0 8px;text-transform:capitalize;}
.pl-dialog { box-sizing:border-box;width:min(720px,calc(100% - 32px));max-height:calc(100dvh - 40px);border:1px solid #494345;border-radius:15px;background:#252426;color:#eee;padding:0;box-shadow:0 30px 90px #0008; }.pl-dialog::backdrop{background:rgba(0,0,0,.7);backdrop-filter:blur(3px);}.pl-dialog-header{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;padding:16px 22px;background:#292729;border-bottom:1px solid #ffffff14;}.pl-dialog-header h2{font-size:16px;margin:0;}.pl-dialog #pl-dialog-error{margin:16px 22px 0;}.pl-dialog #pl-dialog-body{padding:22px;}.pl-dialog input,.pl-dialog select,.pl-dialog textarea{box-sizing:border-box;width:100%;font-size:13px!important;min-height:39px;}.pl-dialog textarea{resize:vertical;}.pl-dialog input:disabled,.pl-dialog select:disabled{opacity:.65;}.pl-dialog label{display:grid;gap:7px;font-size:12px;color:#cccbd1;margin-bottom:15px;}.pl-dialog small,.pl-hint{font-size:11px;color:#aaa6af;line-height:1.6;}.pl-dialog h4{margin:25px 0 12px;font-size:13px;}.pl-title-field input{font-size:16px!important;min-height:45px;}.pl-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 17px;margin-top:20px;}.pl-wide{grid-column:1/-1;}.pl-editor-footer{position:sticky;bottom:-22px;background:#252426;display:flex;justify-content:flex-end;gap:10px;padding:17px 0 10px;border-top:1px solid #ffffff14;margin-top:20px;}.pl-detail-title h3{font-size:24px;line-height:1.4;margin:12px 0 22px;overflow-wrap:anywhere;}.pl-facts{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:0;}.pl-facts dt{font-size:10px;color:#a3a0a8;margin-bottom:6px;}.pl-facts dd{margin:0;font-size:13px;overflow-wrap:anywhere;}.pl-description{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.75;padding:16px;background:#ffffff05;border-radius:8px;margin-top:20px;}.pl-checks .pl-check{display:flex;align-items:center;gap:12px;border-bottom:1px solid #ffffff0f;padding:12px 0;margin:0;cursor:pointer;}.pl-check input{width:18px;height:18px;min-height:18px;flex-shrink:0;accent-color:#bd584d;}.pl-check input:checked+span{text-decoration:line-through;color:#96939d;}.pl-detail-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:24px 0;}.pl-detail-actions label{margin:0 auto 0 0;}.pl-danger{color:#edaba1!important;}#pl-comment-form{display:flex;align-items:end;gap:12px;}#pl-comment-form textarea{flex:1;min-width:0;}.pl-activity>div{padding:15px 0;border-bottom:1px solid #ffffff10;font-size:12px;}.pl-activity time{font-size:10px;color:#aaa6af;float:right;}.pl-activity p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6;margin:8px 0 0;color:#c5c1cc;}.pl-sr{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden;clip:rect(0,0,0,0);}.pl-loading{padding:30px;color:#aaa;}
#pl-nav-count { margin-left:auto;background:#58312c;color:#ffb9a8;border-radius:5px;padding:2px 6px;font-size:10px; }
#pl-dashboard { display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid #ffffff16;background:#ffffff04;border-radius:10px;padding:16px 20px;margin:0 0 20px; }#pl-dashboard strong{font-size:13px;}#pl-dashboard p{font-size:12px;color:#bdb8c2;margin:5px 0 0;}#pl-dashboard .btn{white-space:nowrap;}
#view-planner button:focus-visible,.pl-dialog button:focus-visible{outline:2px solid #efb8a7;outline-offset:3px;}
@media(min-width:1500px){.pl-main{padding-left:40px;padding-right:40px;}.pl-person-chip{max-width:220px;}}
@media(max-width:1050px){.pl-workspace{grid-template-columns:175px minmax(0,1fr);}.pl-sidebar{padding:20px 9px;}.pl-main{padding:20px;}.pl-person-chip{max-width:90px;}.pl-header{align-items:flex-start;}.pl-header h2{font-size:25px;}.pl-header-actions{flex-wrap:wrap;justify-content:flex-end;}.pl-sidebar-note{padding-left:9px;padding-right:9px;}}
@media(max-width:760px){.pl-header{display:block;margin-bottom:18px;}.pl-header-actions{justify-content:flex-start;margin-top:17px;}.pl-header-actions .btn{flex:1;}.pl-workspace{display:block;min-height:500px;}.pl-sidebar{padding:12px;border-right:0;border-bottom:1px solid var(--pl-line);}.pl-sidebar-title,.pl-sidebar-note{display:none;}#pl-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;}#pl-tabs button{font-size:10px;gap:5px;min-height:38px;padding:8px 7px;justify-content:center;}#pl-tabs button i{display:none;}#pl-tabs button b{margin-left:3px;font-size:9px;}.pl-main{padding:16px 14px;}.pl-toolbar{flex-wrap:wrap;gap:6px;}.pl-search{flex-basis:calc(100% - 50px);order:0;}#pl-refresh{order:1;}#pl-scope{order:2;max-width:none;width:100%;}.pl-section-heading{margin-top:20px;}.pl-section-heading h3{font-size:21px;}.pl-section-heading p{line-height:1.5;font-size:11px;}.pl-row{flex-wrap:wrap;gap:8px;padding:15px 0;}.pl-row-action{width:23px;}.pl-row-body{flex-basis:calc(100% - 35px);}.pl-person-chip{max-width:100%;margin-left:31px;font-size:10px;}.pl-avatar{width:19px;height:19px;font-size:9px;}.pl-row-title{font-size:13px;}.pl-row-meta{gap:6px 9px;}.pl-row-meta span{max-width:100%;overflow-wrap:anywhere;}.pl-footer{align-items:flex-start;flex-direction:column;}.pl-day{min-height:58px;padding:6px;gap:7px;}.pl-day-count>span{display:none;}.pl-dots{right:5px;top:auto;bottom:8px;gap:2px;}.pl-calendar-bar{gap:4px;}.pl-calendar-bar strong{font-size:12px;}.pl-calendar-bar .btn{padding:7px 9px;}.pl-dialog{width:calc(100% - 16px);max-height:calc(100dvh - 16px);border-radius:12px;}.pl-dialog #pl-dialog-body{padding:18px 15px;}.pl-dialog-header{padding:13px 15px;}.pl-form-grid{gap:0 12px;}.pl-facts{gap:16px 12px;}.pl-detail-title h3{font-size:21px;}.pl-editor-footer{bottom:-18px;padding-bottom:12px;}.pl-dialog select[multiple]{max-width:100%;}.pl-activity time{float:none;display:block;margin-top:6px;}#pl-dashboard{align-items:flex-start;gap:10px;padding:14px;flex-direction:column;}}
/* Keep the full save action inside the dialog on short mobile screens. */
.pl-editor-footer { bottom:0; }
@media(max-width:760px){.pl-editor-footer{bottom:0;padding-bottom:14px;}}

/* Weekly card planning: the full workspace width is reserved for the seven days. */
#view-planner.pl-week-mode .pl-workspace { display:block; }
#view-planner.pl-week-mode .pl-sidebar { padding:12px 18px;border-right:0;border-bottom:1px solid var(--pl-line); }
#view-planner.pl-week-mode .pl-sidebar-title,#view-planner.pl-week-mode .pl-sidebar-note { display:none; }
#view-planner.pl-week-mode #pl-tabs { display:flex;gap:7px;flex-wrap:wrap; }
#view-planner.pl-week-mode #pl-tabs button { min-height:36px;flex:0 1 auto;padding:8px 12px; }
#view-planner.pl-week-mode #pl-tabs button b { margin-left:7px; }
#view-planner.pl-week-mode .pl-main { padding:18px 20px; }
#view-planner.pl-week-mode .pl-section-heading { margin:19px 0 12px; }
.pl-week-toolbar { display:flex;align-items:center;justify-content:space-between;gap:15px;margin:15px 0 18px;flex-wrap:wrap; }
.pl-week-navigation,.pl-week-jump { display:flex;align-items:center;gap:8px; }
.pl-week-navigation strong { font-size:14px;letter-spacing:-.15px; }
.pl-week-navigation .btn { padding:7px 12px;min-width:34px;font-size:20px;line-height:1; }
.pl-week-jump .btn { font-size:11px;white-space:nowrap; }
.pl-week-jump input { width:142px;min-width:0;font-size:11px!important; }
.pl-week-jump label { margin:0; }
.pl-backlog { background:#ffffff03;border:1px dashed #ffffff20;border-radius:10px;padding:12px 14px;margin-bottom:20px; }
.pl-backlog summary { font-size:11px;cursor:pointer;color:#bbb9c2; }
.pl-backlog summary b { font-size:10px;background:#ffffff09;border-radius:4px;padding:2px 6px;margin-left:7px; }
.pl-backlog-cards { display:flex;gap:10px;overflow-x:auto;min-height:65px;align-items:flex-start;margin-top:12px;padding:6px;border-radius:8px; }
.pl-backlog-cards>.pl-week-card { flex:0 0 205px;box-sizing:border-box;margin:0; }
.pl-backlog-cards>.pl-drop-hint { margin:auto; }
.pl-week-board { display:grid;grid-template-columns:repeat(7,minmax(135px,1fr));gap:10px;overflow-x:auto;align-items:stretch;padding:2px 1px 14px;scrollbar-width:thin;scrollbar-color:#775650 #272529;overscroll-behavior-x:contain;min-height:370px; }
.pl-week-column { min-width:0;border-radius:10px;background:#00000010;border:1px solid #ffffff0b;display:flex;flex-direction:column;padding:9px 7px 8px;transition:background .12s,border-color .12s; }
.pl-week-column>header { display:flex;align-items:center;gap:5px;padding:1px 3px 13px; }
.pl-week-column>header>div { display:flex;align-items:center;gap:7px; }
.pl-week-column>header>div>span { font-size:10px;color:#b4b0bc;text-transform:uppercase; }
.pl-week-column>header strong { font-size:15px;color:#e6e2e8; }
.pl-week-column.is-today { border-top:2px solid #d5695d;background:rgba(150,65,48,.045); }
.pl-week-column.is-today>header strong { border-radius:6px;background:#a33e36;color:#fff;min-width:25px;height:25px;display:grid;place-items:center; }
.pl-day-total { margin-left:auto;font-size:10px;color:#95909c; }
.pl-day-add { font:inherit;font-size:20px;border:0;background:transparent;color:#aaa5af;cursor:pointer;padding:2px 4px; }
.pl-day-cards { min-height:220px;flex:1; }
.pl-week-card { border:1px solid #ffffff18;border-radius:8px;background:#302e31;box-shadow:0 2px 5px #00000012;padding:11px 10px 10px;margin-bottom:10px;overflow-wrap:anywhere; }
.pl-week-card.can-move { cursor:grab; }
.pl-week-card.can-move:hover { border-color:#ba80744f;box-shadow:0 4px 12px #00000020; }
.pl-week-card.is-event { border-left:3px solid #9282c1; }
.pl-week-card.is-overdue { border-top-color:#ba8074; }
.pl-card-top { display:flex;align-items:center;gap:6px;min-height:23px;margin-bottom:8px; }
.pl-week-card .pl-complete { width:16px;height:16px;flex-shrink:0; }
.pl-card-time { font-size:9px;color:#b6b0bf;font-variant-numeric:tabular-nums; }
.pl-card-type { color:#c9b7ec;font-size:16px; }
.pl-drag-handle { margin-left:auto;border:0;background:transparent;color:#98929f;font:inherit;font-size:24px;padding:0 2px;line-height:1;cursor:grab;touch-action:none;user-select:none;min-width:24px;min-height:27px; }
.pl-drag-handle:hover { color:#ffc9b6; }.pl-card-locked{margin-left:auto;color:#888;}
.pl-card-title { display:block;text-align:left;padding:0;border:0;background:none;color:#e9e6ed;font:inherit;font-size:12px;font-weight:600;line-height:1.55;cursor:pointer;overflow-wrap:anywhere;width:100%; }
.pl-card-tags { display:flex;gap:5px 7px;align-items:center;flex-wrap:wrap;font-size:9px;color:#aaa3b3;margin-top:8px; }
.pl-card-tags:empty { display:none; }.pl-card-tags .pl-pill{font-size:9px;padding:2px 5px;}
.pl-card-site { font-size:10px;color:#b2a7a9;display:block;margin-top:9px;line-height:1.4; }
.pl-card-person { display:flex;align-items:center;gap:5px;color:#bcb5c2;font-size:9px;line-height:1.4;margin-top:10px; }
.pl-card-person .pl-avatar { width:18px;height:18px;font-size:9px; }
.pl-drop-hint { font-size:10px;color:#827c88;padding:22px 8px;text-align:center;line-height:1.6; }
.pl-add-card { border:0;background:transparent;color:#a89ea9;font:inherit;font-size:11px;cursor:pointer;padding:9px 7px;text-align:left;border-radius:6px; }
.pl-add-card:hover { background:#ffffff06;color:#efb1a1; }
.pl-drop-active { background:rgba(172,76,56,.16)!important;outline:2px dashed #cb8b77;outline-offset:-2px; }
.pl-dragging { opacity:.35; }.pl-week-help{font-size:11px;color:#a79eac;line-height:1.6;margin:4px 0 0;}
#pl-week.is-saving { opacity:.68;cursor:progress; }#pl-week.is-saving button{pointer-events:none;}
.pl-touch-ghost { position:fixed;z-index:20000;pointer-events:none;opacity:.94;box-shadow:0 10px 35px #0008;transform:rotate(3deg);max-height:210px;overflow:hidden; }
.pl-touch-ghost[hidden]{display:none!important;}
.pl-move-title { font-size:20px;line-height:1.5;overflow-wrap:anywhere; }.pl-move-quick{display:flex;flex-wrap:wrap;gap:8px;}
@media(min-width:1700px){.pl-week-board{grid-template-columns:repeat(7,minmax(155px,1fr));}.pl-week-card{padding:13px;}.pl-card-title{font-size:13px;}}
@media(max-width:1150px){.pl-week-board{grid-template-columns:repeat(7,minmax(170px,1fr));}.pl-week-jump{flex-wrap:wrap;}}
@media(max-width:760px){
 #view-planner.pl-week-mode .pl-sidebar{padding:10px;}#view-planner.pl-week-mode #pl-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;}#view-planner.pl-week-mode #pl-tabs button{padding:8px 5px;font-size:10px;}#view-planner.pl-week-mode .pl-main{padding:14px 10px;}
 .pl-week-toolbar{display:block;margin-bottom:16px;}.pl-week-navigation{justify-content:space-between;gap:4px;}.pl-week-navigation strong{font-size:12px;text-align:center;}.pl-week-jump{justify-content:space-between;margin-top:12px;}.pl-week-jump input{width:145px;}.pl-backlog{padding:10px;margin-bottom:15px;}.pl-backlog summary{font-size:10px;line-height:1.6;}.pl-backlog-cards>.pl-week-card{flex-basis:190px;}
 .pl-week-board{grid-template-columns:repeat(7,minmax(215px,1fr));gap:10px;min-height:340px;}.pl-week-column>header>div>span{font-size:11px;}.pl-day-cards{min-height:190px;}.pl-week-card{padding:12px;}.pl-card-title{font-size:13px;}.pl-drag-handle{min-width:34px;min-height:34px;font-size:28px;}.pl-card-time{font-size:10px;}.pl-card-person{font-size:10px;}.pl-week-help{font-size:10px;}.pl-day-add{min-width:32px;min-height:32px;}.pl-week-help{max-width:100%;}
}
