/* V7 — date first, compact timing, and a touch-first review shell. */
.npc-app .release-timing{
 display:flex;align-items:center;flex-wrap:wrap;gap:7px 20px;min-height:0;
 padding:7px 0 12px;margin:0 0 12px;background:transparent!important;
 border:0!important;border-bottom:1px solid #e8e8eb!important;border-radius:0;box-shadow:none;
}
.npc-app .release-timing :is(.release-schedule,.release-deadline,.plan-deadline,.release-countdown,.release-meta){
 display:inline-flex;flex-direction:row;align-items:center;flex-wrap:wrap;gap:4px 7px;
 padding:0;margin:0;min-width:0;max-width:100%;background:transparent;border:0;border-radius:0;grid-column:auto;
}
.npc-app .release-timing :is(label,.release-label,.release-zone,small){font-size:12px!important;font-weight:400;line-height:1.6;color:#76767b!important;margin:0}
.npc-app .release-timing .release-schedule :is(strong,time){font-family:var(--npc-font-sans);font-size:15px!important;font-weight:600;line-height:1.6;letter-spacing:0;color:#b52b0e!important}
.npc-app .release-timing :is(.release-deadline,.plan-deadline) :is(strong,time){font-size:14px!important;font-family:var(--npc-font-sans);font-weight:550;line-height:1.6;letter-spacing:0;color:#9c3f20!important}
.npc-app .release-timing .release-countdown :is(strong,[data-countdown-until]),.npc-app .release-timing [data-deadline-until]{font-family:var(--npc-font-mono);font-size:13px!important;line-height:1.6;font-weight:600;letter-spacing:0;color:#b52b0e!important;white-space:normal}
.npc-app .release-timing .release-meta{font-size:12px;line-height:1.6;color:#76767b;padding:0;border:0}
.npc-app .release-timing .release-meta :is(strong,span,time){font-size:12px;font-weight:400;line-height:1.6;color:inherit}
.npc-app .release-timing :is(.release-conflict,.schedule-conflict){margin:0;padding:0;font-size:13px;line-height:1.6;color:#a42a39;flex-basis:100%}
.npc-app .release-timing .release-unfinalized-text{font-size:13px!important;font-weight:500!important;max-width:none!important}
.npc-app .queue-status,.npc-app .archive-status{display:inline-flex;align-items:center;gap:5px;width:fit-content;padding:3px 8px;border-radius:6px;background:#eef3ff;color:#355883;font-size:12px;line-height:1.5;font-weight:500;white-space:nowrap}
.npc-app :is(.queue-status,.archive-status):is(.blocked,.blocked_late,.late,.needs_schedule){background:#fff0ee;color:#a8402c}
.npc-app :is(.queue-status,.archive-status):is(.queued,.due){background:#e8f5ee;color:#216940}
.npc-app .release-timing .queue-status{font-size:12px}
.npc-app .queue-panel{margin:20px 0 24px;border:1px solid #e4e4e8;border-radius:16px;background:#fff;overflow:hidden}
.npc-app .queue-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;border-bottom:1px solid #ececef}
.npc-app .queue-panel-heading h2{font-size:19px;font-weight:600;margin:0;line-height:1.4}
.npc-app .queue-panel-heading span{font-size:13px;color:#76767b}
.npc-app .queue-list{display:grid}
.npc-app .queue-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 20px;padding:15px 18px;border-bottom:1px solid #ececef}
.npc-app .queue-row:last-child{border-bottom:0}
.npc-app .queue-row h3{font-size:15px;font-weight:500;line-height:1.5;margin:0 0 5px;overflow-wrap:anywhere}
.npc-app .queue-row p{font-size:13px;color:#76767b;line-height:1.6;margin:3px 0}
.npc-app .queue-row .queue-time{font-size:14px;font-weight:550;color:#b52b0e;font-variant-numeric:tabular-nums}
.npc-app .queue-empty{padding:22px 18px;font-size:14px;color:#76767b}
.npc-app .review-approved-chip{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;color:#216940;font-size:13px;line-height:1.5;font-weight:500;white-space:nowrap}
.npc-app .review-withdraw-button,.npc-app .item-review-actions button[data-decision=withdraw],.npc-app .item-review-actions button[data-action=item-review-withdraw]{background:#f5f5f7;color:#626267;font-weight:400;border:1px solid transparent}
.npc-app .review-withdraw-button:hover,.npc-app .item-review-actions button[data-decision=withdraw]:hover{background:#e8e8ed;color:#1d1d1f}
.npc-app .item-review.is-review-target,.npc-app .review-target-highlight,.npc-app .next-review-highlight{outline:2px solid #ffb39c;outline-offset:4px;border-radius:5px}
.npc-app .mobile-menu-button,.npc-app .mobile-app-nav,.npc-app .mobile-review-dock,.npc-app .mobile-drawer-backdrop{display:none}
.npc-app .mobile-project-label,.npc-app .mobile-project-name,.npc-app .mobile-drawer-heading,.npc-app .mobile-drawer-glossary{display:none}
.npc-app .review-withdraw-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 12px;border-radius:999px;background:transparent;color:#626267;font:400 13px/1.5 var(--npc-font-sans);margin-left:auto;flex-shrink:0;touch-action:manipulation}
.npc-app .item-review-actions .review-approved-badge{background:#e7f3ec;color:#216940;border-color:transparent;opacity:1;cursor:default}
.npc-app .queue-state{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:6px;background:#f5f5f7;color:#626267;font-size:12px;line-height:1.5;font-weight:500;white-space:nowrap}
.npc-app .queue-state.queued,.npc-app .queue-state.due{background:#e8f5ee;color:#216940}
.npc-app .queue-state.review_pending{background:#fff4e6;color:#8a4d05}
.npc-app .queue-state.published{background:#e8f5ee;color:#216940}
.npc-app .queue-section{margin:18px 0 24px;border:1px solid #e4e4e8;border-radius:16px;background:#fff;overflow:hidden}
.npc-app .queue-section-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;border-bottom:1px solid #ececef}
.npc-app .queue-section-heading h2{font-size:19px;font-weight:600;margin:0;line-height:1.4}
.npc-app .queue-section-heading span{font-size:13px;color:#76767b}
.npc-app .queue-row-timing{display:flex;align-items:center;justify-content:flex-end;gap:6px 12px;flex-wrap:wrap;max-width:520px;font-size:13px;color:#626267}
.npc-app .queue-row-timing>span:not(.queue-state){font-size:13px;line-height:1.6}
.npc-app .queue-row-timing small{font-size:12px;color:#9c3f20}
.npc-app .archive-history{grid-column:1/-1;color:#76767b;font-size:12px;line-height:1.6}
.npc-app .archive-history summary{min-height:32px;padding:4px 0;cursor:pointer}
.npc-app .plan-adjustment-reason{color:#9c3f20!important;font-size:12px!important}
.npc-app .plan-original{font-size:12px!important;color:#85858b!important}
@media(max-width:740px){
 .npc-app{--app-nav-height:60px;--review-dock-height:62px;-webkit-tap-highlight-color:transparent}
 .npc-app .topbar{height:calc(60px + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) 14px 0;gap:8px;background:rgba(255,255,255,.98);border-bottom:1px solid #ececef;z-index:70}
 .npc-app .npc-logo{width:68px;height:25px}
 .npc-app .npc-product-brand{gap:10px;flex:0 1 auto;min-width:0}
 .npc-app .npc-product-name{padding-left:10px;min-width:0}
 .npc-app .npc-product-name strong{font-size:15px;white-space:nowrap}
 .npc-app .mobile-project-label{display:block;max-width:125px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;color:#76767b;line-height:1.4;margin-top:2px}
 .npc-app .topbar .header-spacer{flex:1;min-width:0}
 .npc-app .topbar .glossary-button,.npc-app .topbar .header-review-button{display:none}
 .npc-app .translate-button{font-size:12px;padding:10px 12px;min-height:44px;gap:5px}
 .npc-app .mobile-menu-button{display:inline-flex;align-items:center;justify-content:center;width:44px;min-width:44px;height:44px;padding:10px;border:0;border-radius:50%;background:#f5f5f7;color:#424247;flex:0 0 auto}
 .npc-app .mobile-menu-button svg{width:21px;height:21px}
 .npc-app .demo-tools>summary{min-width:40px;min-height:44px;padding:10px;border:0}
 .npc-app .app-shell{min-height:calc(100dvh - 60px)}
 .npc-app .app-shell>.sidebar{
  display:flex;position:fixed;inset:0 auto 0 0;top:0;left:0;bottom:0;width:min(320px,86vw);height:100dvh;
  max-height:100dvh;z-index:150;padding:calc(24px + env(safe-area-inset-top,0px)) 18px calc(20px + env(safe-area-inset-bottom,0px));
  flex-direction:column;align-items:stretch;flex-wrap:nowrap;gap:5px;overflow:auto;background:#fff;border:0;border-right:1px solid #ececef;
  transform:translateX(-105%);visibility:hidden;transition:transform 180ms ease,visibility 180ms ease;
 }
 .npc-app .app-shell>.sidebar.mobile-open,.npc-app .app-shell>.sidebar.is-open,.npc-app .app-shell>.sidebar.drawer-open{transform:translateX(0);visibility:visible}
 .npc-app .mobile-drawer-backdrop{display:block;position:fixed;inset:0;z-index:140;border:0;background:#1d1d1f55;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}
 .npc-app .sidebar .project-select{display:flex;min-height:68px;flex-shrink:0;margin:0 0 16px;white-space:normal}
 .npc-app .sidebar .project-select strong{font-size:16px}
 .npc-app .sidebar .project-select small{font-size:12px}
 .npc-app .sidebar .nav-item{width:100%;justify-content:flex-start;min-height:52px;padding:13px 15px;font-size:15px;margin:0 0 4px;flex-shrink:0}
 .npc-app .sidebar .nav-item.active::before{left:0;right:auto;top:17px;bottom:17px;width:3px;height:auto;border-radius:0 2px 2px 0}
 .npc-app .sidebar .nav-count{margin-left:auto}
 .npc-app .sidebar .service-links{display:grid;gap:4px;flex-shrink:0;flex-wrap:wrap;overflow:visible;width:100%;margin:18px 0 0;padding:14px 3px 0}
 .npc-app .sidebar .service-links a{font-size:14px;min-height:44px;padding:10px 8px;justify-content:space-between}
 .npc-app .sidebar .service-links a svg{width:14px;height:14px}
 .npc-app .drawer-heading,.npc-app .mobile-drawer-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 4px 18px;margin-bottom:6px;border-bottom:1px solid #ececef}
 .npc-app .drawer-heading strong,.npc-app .mobile-drawer-heading strong{font-size:18px;font-weight:600}
 .npc-app .mobile-drawer-heading button{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:#f5f5f7;color:#626267;flex-shrink:0}
 .npc-app .mobile-drawer-heading button svg{width:19px;height:19px}
 .npc-app .mobile-drawer-glossary{display:flex;align-items:center;min-height:44px;padding:10px 15px;font-size:14px;color:#626267;background:transparent;border-radius:12px;text-align:left}
 .npc-app .drawer-close{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:#f5f5f7}
 .npc-app .content,.npc-app .app-shell:has(.calendar)>.content{padding:14px 14px calc(var(--app-nav-height) + var(--review-dock-height) + env(safe-area-inset-bottom,0px) + 30px);max-width:100%;width:100%}
 .npc-app:not(:has(.mobile-review-dock)) .npc-client-content{padding-bottom:calc(var(--app-nav-height) + env(safe-area-inset-bottom,0px) + 30px)}
 .npc-app .detail-toolbar{margin-bottom:8px;min-height:32px}
 .npc-app .detail-back{min-height:36px;font-size:13px}
 .npc-app .release-timing{gap:4px 12px;padding:5px 0 10px;margin-bottom:10px;border-radius:0;line-height:1.6}
 .npc-app .release-timing .release-schedule{flex-basis:100%;gap:4px 7px}
 .npc-app .release-timing .release-schedule :is(strong,time){font-size:15px!important;line-height:1.5}
 .npc-app .release-timing :is(.release-deadline,.plan-deadline){gap:4px 7px}
 .npc-app .release-timing :is(.release-deadline,.plan-deadline) :is(strong,time){font-size:13px!important}
 .npc-app .release-timing .release-countdown{display:inline-flex;padding:0;border:0;background:transparent;border-radius:0;gap:4px;min-width:0}
 .npc-app .release-timing .release-countdown :is(strong,[data-countdown-until]){font-size:13px!important}
 .npc-app .release-timing .release-meta{font-size:11px;gap:4px 8px}
 .npc-app .release-timing .release-meta :is(strong,span,time){font-size:11px}
 .npc-app .release-timing :is(label,small,.release-zone){font-size:12px!important}
 .npc-app .reddit-preview-frame{border-radius:15px;border-color:#e4e4e9;margin-bottom:20px;overflow:visible}
 .npc-app .reddit-preview-heading{border-radius:15px 15px 0 0;padding:9px 13px}
 .npc-app .reddit-surface{padding:16px 13px 0;border-radius:0 0 15px 15px}
 .npc-app .reddit-surface .post-card h2,.npc-app .app-shell .detail-post .post-card h2{font-size:22px;line-height:1.35;letter-spacing:-.35px}
 .npc-app .reddit-surface .post-body,.npc-app .reddit-surface .discussion-text{font-size:16px;line-height:1.72}
 .npc-app .reddit-surface .post-actions{gap:7px}
 .npc-app .reddit-surface .discussion-node{margin-bottom:17px;padding-bottom:17px;scroll-margin-top:78px}
 .npc-app .item-review{padding:11px;border-radius:12px;margin-top:12px;gap:9px}
 .npc-app .item-review-actions{gap:8px;align-items:center;flex-wrap:wrap}
 .npc-app .item-review-actions button{min-height:44px;min-width:64px;padding:10px 15px;font-size:14px;touch-action:manipulation}
 .npc-app .item-review-actions .item-history-button{min-width:0;font-size:12px;padding:10px 8px}
 .npc-app .review-item-heading{font-size:12px}
 .npc-app .item-review-status{font-size:12px}
 .npc-app .review-approved-chip{font-size:13px;padding:6px 8px}
 .npc-app .item-review-feedback p{font-size:14px;line-height:1.65}
 .npc-app .mobile-app-nav{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));position:fixed;left:0;right:0;bottom:0;
  height:calc(var(--app-nav-height) + env(safe-area-inset-bottom,0px));padding:3px 14px calc(3px + env(safe-area-inset-bottom,0px));
  z-index:100;background:rgba(255,255,255,.97);border-top:1px solid #e5e5e9;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
 }
 .npc-app .mobile-app-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:52px;border:0;border-radius:10px;padding:4px 10px;background:transparent;color:#85858b;font-size:11px;line-height:1.35;font-weight:500;touch-action:manipulation;position:relative}
 .npc-app .mobile-app-nav button svg{width:22px;height:22px;stroke-width:1.7}
 .npc-app .mobile-app-nav button.active,.npc-app .mobile-app-nav button[aria-current=page]{color:#b52b0e;background:#fff7f2}
 .npc-app .mobile-app-nav button.active::before,.npc-app .mobile-app-nav button[aria-current=page]::before{content:"";position:absolute;top:0;left:30%;right:30%;height:2px;background:#ff4b23;border-radius:0 0 2px 2px}
 .npc-app .mobile-review-dock{
  display:flex;align-items:center;justify-content:space-between;gap:12px;position:fixed;left:0;right:0;
  bottom:calc(var(--app-nav-height) + env(safe-area-inset-bottom,0px));min-height:var(--review-dock-height);padding:9px 18px;z-index:99;
  background:rgba(255,255,255,.97);border-top:1px solid #e5e5e9;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
 }
 .npc-app .mobile-review-dock .review-progress{display:grid;gap:2px;min-width:0}
 .npc-app .mobile-review-dock>div{display:grid;gap:2px;min-width:0}
 .npc-app .mobile-review-dock>div>span{font-size:11px;color:#85858b;line-height:1.45}
 .npc-app .mobile-review-dock button svg{width:17px;height:17px;flex-shrink:0}
 .npc-app .mobile-review-dock :is(p,small){font-size:11px;color:#85858b;margin:0;line-height:1.45}
 .npc-app .mobile-review-dock strong{font-size:15px;font-weight:600;color:#1d1d1f;line-height:1.5}
 .npc-app .mobile-review-dock .btn,.npc-app .mobile-review-dock button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:48px;padding:9px 16px;border:0;border-radius:999px;background:#ff4b23;color:#fff;font-size:19px;font-weight:700;line-height:1.35;white-space:nowrap;touch-action:manipulation}
 .npc-app .mobile-review-dock button:disabled{background:#e8f5ee;color:#216940;opacity:1}
 .npc-app .mobile-review-dock .queue-status{font-size:12px;color:#216940;background:#e8f5ee;border-radius:6px;padding:5px 8px}
 .npc-app .modal-backdrop{padding:0;display:flex;align-items:flex-end;justify-content:center;z-index:300;background:#1d1d1f55;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
 .npc-app .modal,.npc-app .modal.large,.npc-app .review-sheet,.npc-app .mobile-sheet{
  width:100%;max-width:100%;margin:0;max-height:calc(var(--app-viewport-height,100dvh) - env(safe-area-inset-top,0px) - 30px);
  padding:18px 18px calc(20px + env(safe-area-inset-bottom,0px));border:0;border-radius:24px 24px 0 0;
  background:#fff;overflow:auto;overscroll-behavior:contain;box-shadow:0 -10px 50px #1d1d1f18;scrollbar-width:thin;
 }
 .npc-app .modal-head{position:sticky;top:-18px;z-index:3;background:#fff;padding:3px 0 12px;margin:0 0 14px;border-bottom:1px solid #ececef;align-items:center}
 .npc-app .modal-head h2{font-size:21px;font-weight:600;line-height:1.4;max-width:calc(100% - 54px)}
 .npc-app .modal-head .icon-button{width:44px;min-width:44px;height:44px;background:#f5f5f7;color:#626267}
 .npc-app .modal input,.npc-app .modal textarea,.npc-app .modal select{font-size:16px;min-height:46px;line-height:1.5}
 .npc-app .modal textarea{min-height:124px;padding:12px}
 .npc-app .modal .modal-actions{display:flex;gap:10px;position:sticky;bottom:calc(-20px - env(safe-area-inset-bottom,0px));padding:14px 0 calc(2px + env(safe-area-inset-bottom,0px));margin-top:18px;background:#fff;border-top:1px solid #ececef;z-index:2}
 .npc-app .modal .modal-actions .btn{flex:1;min-height:48px;font-size:16px}
 .npc-app .review-sheet-context,.npc-app .mobile-review-context{border-radius:12px;background:#f5f5f7;padding:11px 13px;margin:0 0 14px;font-size:13px;color:#626267;line-height:1.6}
 .npc-app .review-sheet-context strong,.npc-app .mobile-review-context strong{display:block;font-size:14px;color:#1d1d1f;font-weight:550;margin-bottom:3px}
 .npc-app .review-sheet-context p,.npc-app .mobile-review-context p{font-size:13px;line-height:1.6;margin:0;color:#76767b;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
 .npc-app .queue-panel{border-radius:14px;margin:14px 0 20px}
 .npc-app .queue-section{border-radius:14px;margin:14px 0 20px}
 .npc-app .queue-section-heading{padding:13px 14px;align-items:flex-start;flex-direction:column;gap:5px}
 .npc-app .queue-section-heading h2{font-size:18px}
 .npc-app .queue-section-heading span{font-size:12px;line-height:1.5}
 .npc-app .queue-row-timing{justify-content:flex-start;max-width:100%}
 .npc-app .queue-panel-heading{padding:13px 14px}
 .npc-app .queue-panel-heading h2{font-size:18px}
 .npc-app .queue-row{padding:14px;gap:9px;grid-template-columns:minmax(0,1fr)}
 .npc-app .queue-row h3{font-size:15px}
 .npc-app .queue-row .queue-time{font-size:14px}
 .npc-app .queue-row :is(.queue-status,.archive-status){justify-self:start}
 .npc-app .toast{bottom:calc(var(--app-nav-height) + var(--review-dock-height) + env(safe-area-inset-bottom,0px) + 14px);max-width:calc(100vw - 36px);font-size:13px}
}
@media(max-width:380px){.npc-app .topbar{padding-left:11px;padding-right:11px;gap:5px}.npc-app .npc-logo{width:61px;height:24px}.npc-app .npc-product-name strong{font-size:14px}.npc-app .npc-product-brand{gap:7px}.npc-app .npc-product-name{padding-left:8px}.npc-app .translate-button{padding:10px;font-size:12px}.npc-app .mobile-menu-button{width:40px;min-width:40px}.npc-app .content{padding-left:11px;padding-right:11px}.npc-app .mobile-review-dock{padding-left:14px;padding-right:14px}.npc-app .item-review-actions button{font-size:13px;padding:10px 13px}}
@media(prefers-reduced-motion:reduce){.npc-app *{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
