body.plk-auth-page {
    min-width: 320px;
    min-height: 100vh;
    margin: 0;
    background: #eef3f8;
    color: #101828;
    font: 14px/1.5 Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.plk-auth-page *, .plk-auth-page *::before, .plk-auth-page *::after { box-sizing: border-box; }
.plk-auth-shell { display: grid; min-height: 100vh; grid-template-columns: minmax(390px, .9fr) minmax(480px, 1.1fr); }
.plk-auth-story { position: relative; display: flex; min-height: 100vh; flex-direction: column; justify-content: space-between; overflow: hidden; padding: clamp(32px, 5vw, 76px); background: radial-gradient(circle at 92% 8%, rgba(22, 138, 173, .38), transparent 34%), radial-gradient(circle at 12% 88%, rgba(20, 184, 166, .2), transparent 32%), linear-gradient(145deg, #071a2b 0%, #0a3045 56%, #0c5661 100%); color: #fff; }
.plk-auth-story::before, .plk-auth-story::after { position: absolute; border: 1px solid rgba(255,255,255,.08); border-radius: 50%; content: ""; }
.plk-auth-story::before { top: -180px; right: -160px; width: 470px; height: 470px; }
.plk-auth-story::after { bottom: -250px; left: -210px; width: 560px; height: 560px; }
.plk-auth-brand { position: relative; z-index: 1; display: inline-flex; width: fit-content; align-items: center; gap: 12px; color: #fff; text-decoration: none; }
.plk-auth-brand img { width: 46px; height: 46px; padding: 5px; border: 1px solid rgba(255,255,255,.22); border-radius: 13px; background: rgba(255,255,255,.1); box-shadow: 0 12px 34px rgba(0,0,0,.18); }
.plk-auth-brand span { display: grid; }
.plk-auth-brand strong { font-size: 15px; font-weight: 760; letter-spacing: -.02em; }
.plk-auth-brand small { color: rgba(255,255,255,.66); font-size: 9px; font-weight: 650; letter-spacing: .1em; text-transform: uppercase; }
.plk-auth-copy { position: relative; z-index: 1; max-width: 610px; margin: clamp(70px, 14vh, 170px) 0 auto; }
.plk-auth-eyebrow { display: inline-flex; padding: 6px 9px; border: 1px solid rgba(255,255,255,.14); border-radius: 999px; background: rgba(255,255,255,.07); color: #9be8e1; font-size: 9px; font-weight: 740; letter-spacing: .11em; text-transform: uppercase; }
.plk-auth-copy h1 { max-width: 570px; margin: 20px 0 16px; color: #fff; font-size: clamp(38px, 5vw, 68px); font-weight: 760; letter-spacing: -.055em; line-height: .98; }
.plk-auth-copy p { max-width: 540px; margin: 0; color: rgba(239, 249, 255, .7); font-size: clamp(14px, 1.35vw, 18px); line-height: 1.7; }
.plk-auth-features { position: relative; z-index: 1; display: flex; gap: 8px; margin-top: 44px; flex-wrap: wrap; }
.plk-auth-features span { display: inline-flex; align-items: center; gap: 7px; padding: 7px 10px; border: 1px solid rgba(255,255,255,.11); border-radius: 999px; background: rgba(255,255,255,.055); color: rgba(255,255,255,.76); font-size: 9px; font-weight: 630; }
.plk-auth-features span::before { width: 6px; height: 6px; border-radius: 50%; background: #50d6c7; box-shadow: 0 0 0 3px rgba(80,214,199,.12); content: ""; }
.plk-auth-panel { display: grid; min-height: 100vh; place-items: center; padding: clamp(24px, 6vw, 92px); background: linear-gradient(135deg, #f8fafc 0%, #edf3f8 100%); }
.plk-auth-card { width: min(460px, 100%); padding: clamp(24px, 4vw, 40px); border: 1px solid #dce4ed; border-radius: 22px; background: rgba(255,255,255,.94); box-shadow: 0 28px 80px rgba(15, 23, 42, .11); backdrop-filter: blur(16px); }
.plk-auth-heading > span { color: #0e766e; font-size: 9px; font-weight: 760; letter-spacing: .12em; text-transform: uppercase; }
.plk-auth-heading h2 { margin: 5px 0 7px; color: #101828; font-size: clamp(25px, 3vw, 34px); font-weight: 750; letter-spacing: -.045em; line-height: 1.1; }
.plk-auth-heading p { margin: 0; color: #667085; font-size: 11px; line-height: 1.6; }
.plk-auth-tabs { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 4px; margin: 24px 0 20px; padding: 4px; border-radius: 11px; background: #eef2f6; }
.plk-auth-tabs button { min-height: 37px; padding: 7px 10px; border: 0; border-radius: 8px; background: transparent; color: #667085; cursor: pointer; font: inherit; font-size: 11px; font-weight: 680; }
.plk-auth-tabs button[aria-selected="true"] { background: #fff; color: #0e766e; box-shadow: 0 2px 7px rgba(15, 23, 42, .11); }
.plk-auth-form { display: grid; gap: 14px; }
.plk-auth-form[hidden] { display: none !important; }
.plk-auth-form > label { display: grid; gap: 6px; }
.plk-auth-form > label > span { color: #344054; font-size: 10px; font-weight: 680; }
.plk-auth-form > label > small { color: #98a2b3; font-size: 8.5px; }
.plk-auth-form input[type="text"], .plk-auth-form input[type="email"], .plk-auth-form input[type="password"] { width: 100%; min-height: 44px; margin: 0; padding: 9px 11px; border: 1px solid #d4dce6; border-radius: 9px; background: #fff; color: #101828; box-shadow: none; font: inherit; font-size: 12px; outline: none; transition: border-color .15s ease, box-shadow .15s ease; }
.plk-auth-form input:focus { border-color: #168aad; box-shadow: 0 0 0 3px rgba(22,138,173,.12); }
.plk-auth-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.plk-auth-row a { color: #0e766e; font-size: 9.5px; font-weight: 650; text-decoration: none; }
.plk-auth-remember { display: inline-flex; align-items: center; gap: 7px; color: #667085; cursor: pointer; font-size: 9.5px; }
.plk-auth-remember input { width: 15px; height: 15px; margin: 0; accent-color: #168aad; }
.plk-auth-submit { min-height: 44px; margin-top: 2px; padding: 9px 14px; border: 1px solid #0e766e; border-radius: 9px; background: linear-gradient(135deg, #168aad, #0e766e); color: #fff; box-shadow: 0 10px 22px rgba(14,118,110,.2); cursor: pointer; font: inherit; font-size: 11px; font-weight: 720; }
.plk-auth-submit:hover, .plk-auth-submit:focus { filter: brightness(.96); outline: 3px solid rgba(22,138,173,.15); outline-offset: 2px; }
.plk-auth-alert { margin-top: 16px; padding: 9px 11px; border: 1px solid #b7e4dc; border-radius: 8px; background: #effaf7; color: #087a55; font-size: 9.5px; line-height: 1.5; }
.plk-auth-alert--error { border-color: #f3c4c0; background: #fff5f4; color: #b42318; }
.plk-auth-assignment-note { margin: 0; padding: 9px 10px; border-radius: 8px; background: #f3f7fa; color: #667085; font-size: 9px; line-height: 1.55; }
.plk-auth-honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; opacity: 0 !important; }

#pure-lab-kanban-app {
    --plk-forest: #0e766e;
    --plk-munsell: #168aad;
    --plk-blue: #006bff;
    --plk-ink: #101828;
    --plk-muted: #667085;
    --plk-line: #dfe5ec;
    --plk-soft: #f4f7fa;
    --plk-white: #fff;
    --plk-danger: #d92d20;
    --plk-warning: #b54708;
    --plk-success: #087a55;
    --plk-shadow: 0 22px 60px rgba(15, 23, 42, .2);
}

#pure-lab-kanban-app,
#pure-lab-kanban-app *,
#pure-lab-kanban-app *::before,
#pure-lab-kanban-app *::after { box-sizing: border-box; }

body.plk-page-active { background: #eef2f6; }
body.plk-frontend-page { min-width: 320px; margin: 0; padding: 0; }
body.plk-frontend-page #pure-lab-kanban-app,
body.plk-frontend-page .plk-app { min-height: 100vh; }
body.plk-frontend-page .plk-appbar { top: 0; }
body.plk-frontend-page .plk-pagebar { top: 58px; }
body.plk-page-active #wpcontent { padding-left: 0; }
body.plk-page-active #wpbody-content { padding-bottom: 0; }
body.plk-page-active #wpbody-content > .notice,
body.plk-page-active #wpbody-content > .error,
body.plk-page-active #wpbody-content > .updated { display: none !important; }
body.plk-modal-open { overflow: hidden !important; }

.plk-admin-wrap { margin: 0 !important; }
#pure-lab-kanban-app { min-height: calc(100vh - 32px); color: var(--plk-ink); font: 14px/1.45 Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
#pure-lab-kanban-app button,
#pure-lab-kanban-app input,
#pure-lab-kanban-app select,
#pure-lab-kanban-app textarea { font: inherit; }
#pure-lab-kanban-app button { line-height: inherit; }

#pure-lab-kanban-app .screen-reader-text { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; }

.plk-app { min-height: calc(100vh - 32px); background: #f6f8fb; }

.plk-appbar {
    position: sticky;
    top: 32px;
    z-index: 70;
    display: flex;
    align-items: center;
    gap: 16px;
    height: 58px;
    padding: 0 18px;
    border-bottom: 1px solid var(--plk-line);
    background: rgba(255, 255, 255, .96);
    backdrop-filter: blur(12px);
}

.plk-brand { display: inline-flex; align-items: center; gap: 9px; min-width: 214px; color: var(--plk-ink); text-decoration: none; }
.plk-brand:hover, .plk-brand:focus { color: var(--plk-ink); }
.plk-brand img { width: 34px; height: 34px; }
.plk-brand span { display: grid; min-width: 0; }
.plk-brand strong { font-size: 14px; font-weight: 720; letter-spacing: -.02em; line-height: 18px; }
.plk-brand small { color: var(--plk-muted); font-size: 9px; font-weight: 600; letter-spacing: .05em; line-height: 12px; text-transform: uppercase; }

.plk-board-switcher { min-width: 190px; max-width: 480px; flex: 1 1 380px; }
.plk-board-switcher select { width: 100%; min-height: 36px; margin: 0; padding: 5px 32px 5px 10px; border: 1px solid var(--plk-line); border-radius: 8px; background-color: var(--plk-white); color: var(--plk-ink); box-shadow: none; font-size: 12px; font-weight: 620; }
.plk-board-switcher select:focus { border-color: var(--plk-blue); box-shadow: 0 0 0 2px rgba(0, 107, 255, .12); }
.plk-appbar-actions { display: flex; align-items: center; gap: 8px; margin-left: auto; }
.plk-version { padding: 3px 7px; border: 1px solid var(--plk-line); border-radius: 999px; color: var(--plk-muted); font-size: 9px; font-weight: 650; }

.plk-pagebar {
    position: sticky;
    top: 90px;
    z-index: 60;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    min-height: 66px;
    padding: 10px 18px;
    border-bottom: 1px solid var(--plk-line);
    background: rgba(255, 255, 255, .94);
    backdrop-filter: blur(12px);
}
.plk-pagebar-copy { min-width: 0; }
.plk-title-line { display: flex; align-items: center; gap: 7px; min-width: 0; }
.plk-pagebar h1 { margin: 0; overflow: hidden; color: var(--plk-ink); font-size: 17px; font-weight: 720; letter-spacing: -.025em; line-height: 22px; text-overflow: ellipsis; white-space: nowrap; }
.plk-pagebar p { max-width: 760px; margin: 2px 0 0; overflow: hidden; color: var(--plk-muted); font-size: 10.5px; line-height: 15px; text-overflow: ellipsis; white-space: nowrap; }
.plk-board-stat { padding: 2px 6px; border-radius: 999px; background: var(--plk-soft); color: var(--plk-muted); font-size: 9px; font-weight: 650; white-space: nowrap; }
.plk-board-stat--done { background: #e9f8f1; color: var(--plk-success); }
.plk-toolbar { display: flex; align-items: center; justify-content: flex-end; gap: 6px; flex: 0 0 auto; }

.plk-btn,
.plk-icon-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 34px;
    margin: 0;
    padding: 6px 10px;
    border: 1px solid var(--plk-line);
    border-radius: 8px;
    background: var(--plk-white);
    color: var(--plk-ink);
    box-shadow: none;
    cursor: pointer;
    font-size: 11.5px;
    font-weight: 650;
    text-decoration: none;
    transition: border-color .15s ease, background-color .15s ease, color .15s ease, box-shadow .15s ease, transform .15s ease;
    white-space: nowrap;
}
.plk-btn svg, .plk-icon-btn svg { width: 15px; height: 15px; flex: 0 0 15px; }
.plk-btn:hover, .plk-btn:focus, .plk-icon-btn:hover, .plk-icon-btn:focus { border-color: #9bbcf1; background: #f3f7ff; color: var(--plk-blue); outline: none; }
.plk-btn:focus-visible, .plk-icon-btn:focus-visible { outline: 2px solid rgba(0, 107, 255, .32); outline-offset: 2px; }
.plk-btn[disabled], .plk-icon-btn[disabled] { cursor: wait; opacity: .58; }
.plk-btn--primary { border-color: var(--plk-blue); background: var(--plk-blue); color: #fff; }
.plk-btn--primary:hover, .plk-btn--primary:focus { border-color: #005bd8; background: #005bd8; color: #fff; }
.plk-btn--ghost { background: transparent; }
.plk-btn--small { min-height: 30px; padding: 4px 8px; font-size: 10.5px; }
.plk-btn--danger-ghost { border-color: #f5c8c4; background: #fff8f7; color: var(--plk-danger); }
.plk-btn--danger-ghost:hover, .plk-btn--danger-ghost:focus { border-color: var(--plk-danger); background: #fff0ee; color: var(--plk-danger); }
.plk-btn--danger { border-color: #c9362c; background: linear-gradient(180deg,#dc4c41,#c9362c); color: #fff; box-shadow: 0 5px 14px rgba(185,28,28,.2); }
.plk-btn--danger:hover, .plk-btn--danger:focus { border-color: #b42318; background: linear-gradient(180deg,#d83e33,#b82c22); color: #fff; }
.plk-icon-btn { width: 34px; min-width: 34px; padding: 6px; }
.plk-icon-btn--tiny { width: 27px; min-width: 27px; min-height: 27px; padding: 4px; border-radius: 6px; }
.plk-danger-text { color: var(--plk-danger); }

.plk-workspace { width: 100%; padding: 12px 0 30px; overflow-x: auto; overflow-y: visible; overscroll-behavior-x: contain; scrollbar-width: thin; }
.plk-board { display: flex; align-items: flex-start; gap: 9px; width: max-content; min-width: 100%; padding: 0 16px; }
.plk-stage { width: 272px; flex: 0 0 272px; overflow: visible; border: 1px solid var(--plk-board-line, #dfe4ea); border-radius: 9px; background: var(--plk-stage-background, #edf1f5); box-shadow: 0 1px 2px rgba(15, 23, 42, .025); transition: border-color .15s ease, box-shadow .15s ease; }
.plk-stage.is-drop-target { border-color: var(--plk-blue); box-shadow: 0 0 0 3px rgba(0, 107, 255, .12); }
.plk-stage-top { position: relative; z-index: 2; border-bottom: 1px solid var(--plk-board-line, #dbe1e8); border-radius: 8px 8px 0 0; background: var(--plk-stage-header-background, rgba(244, 247, 250, .98)); }
.plk-stage-header { display: flex; align-items: center; gap: 7px; min-height: 48px; padding: 7px 8px; background: transparent; }
.plk-stage-color { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 26px; height: 26px; flex: 0 0 26px; border: 1px solid color-mix(in srgb, var(--stage-color) 20%, var(--plk-board-line, #dbe1e8)); border-radius: 8px; background: color-mix(in srgb, var(--stage-color) 12%, var(--plk-card-background, #fff)); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .55); }
.plk-stage-color::after { width: 8px; height: 8px; border-radius: 3px; background: var(--stage-color); box-shadow: 0 2px 6px color-mix(in srgb, var(--stage-color) 34%, transparent); content: ""; }
.plk-stage-identity { display: flex; align-items: center; gap: 5px; min-width: 0; flex: 1 1 auto; }
.plk-stage-title { min-width: 0; margin: 0; padding: 0; overflow: hidden; border: 0; background: transparent; color: var(--plk-board-ink, var(--plk-ink)); cursor: pointer; font-size: 12.5px; font-weight: 720; line-height: 18px; text-align: left; text-overflow: ellipsis; white-space: nowrap; }
.plk-stage-title:hover { color: var(--plk-blue); }
.plk-stage-count { min-width: 20px; height: 20px; padding: 2px 5px; border-radius: 999px; background: var(--plk-board-soft, #e1e6ed); color: var(--plk-board-muted, #5a6577); font-size: 9px; font-weight: 720; line-height: 16px; text-align: center; }
.plk-stage-count.is-over-limit { background: #feeceb; color: var(--plk-danger); }
.plk-stage-actions { display: inline-flex; align-items: center; gap: 3px; flex: 0 0 auto; }
.plk-stage-view { display: inline-flex; align-items: center; justify-content: center; min-height: 25px; padding: 3px 6px; border: 0; border-radius: 7px; background: transparent; color: var(--plk-board-muted, var(--plk-muted)); cursor: pointer; font-size: 8.5px; font-weight: 700; white-space: nowrap; }
.plk-stage-view:hover, .plk-stage-view:focus { background: color-mix(in srgb, var(--stage-color) 9%, var(--plk-card-background, #fff)); color: color-mix(in srgb, var(--stage-color) 78%, var(--plk-board-ink, #101828)); outline: none; }
.plk-task-list { display: grid; gap: 6px; min-height: 34px; padding: 7px; }

.plk-card { position: relative; padding: 7px 8px; overflow: hidden; border: 1px solid var(--plk-board-line, #dce2e9); border-radius: 7px; background: var(--plk-card-background, var(--plk-white)); box-shadow: 0 1px 2px rgba(15, 23, 42, .04); cursor: pointer; transition: border-color .15s ease, box-shadow .15s ease, opacity .15s ease, transform .15s ease; }
.plk-card.has-cover { border: 0; box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--card-cover, var(--stage-color)) 18%, var(--plk-board-line, #dce2e9)), 0 1px 2px rgba(15, 23, 42, .04); }
.plk-card.has-color-cover { padding-top: 18px; }
.plk-card.has-image-cover { padding-top: 68px; }
.plk-card-cover { position: absolute; top: 0; right: 0; left: 0; display: block; height: 10px; overflow: hidden; background: var(--card-cover, #168aad) center/cover no-repeat; pointer-events: none; }
.plk-card-cover--color { background: var(--card-cover, #168aad); background: linear-gradient(105deg, color-mix(in srgb, var(--card-cover, #168aad) 78%, #0b1628) 0%, var(--card-cover, #168aad) 46%, color-mix(in srgb, var(--card-cover, #168aad) 72%, #fff) 100%); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .34), inset 0 -1px 0 rgba(15, 23, 42, .14), 0 3px 10px color-mix(in srgb, var(--card-cover, #168aad) 22%, transparent); }
.plk-card-cover--color::after { position: absolute; inset: 0; background: linear-gradient(118deg, transparent 0 56%, rgba(255, 255, 255, .32) 57% 63%, transparent 64% 100%); content: ""; opacity: .6; }
.plk-card-cover--image { height: 60px; border-bottom: 1px solid color-mix(in srgb, var(--plk-board-line, #dce2e9) 70%, transparent); }
.plk-card[draggable="true"] { cursor: grab; }
.plk-card:hover { border-color: color-mix(in srgb, var(--plk-blue) 42%, var(--plk-board-line, #dce2e9)); box-shadow: 0 7px 18px rgba(15, 23, 42, .09); transform: translateY(-1px); }
.plk-card:focus-visible { border-color: var(--plk-blue); outline: 2px solid color-mix(in srgb, var(--plk-blue) 32%, transparent); outline-offset: 1px; }
.plk-card.is-dragging { opacity: .44; transform: rotate(1deg); }
.plk-card-top { display: flex; align-items: center; gap: 5px; min-height: 17px; margin-bottom: 3px; }
.plk-issue { color: var(--plk-board-muted, #98a2b3); font-size: 8.5px; font-weight: 650; }
.plk-pinned { padding: 1px 4px; border-radius: 999px; background: #fff5d8; color: #9a6700; font-size: 7px; font-weight: 720; text-transform: uppercase; }
.plk-card-drag { display: inline-flex; margin-left: auto; color: #b0b8c5; }
.plk-card-drag svg { width: 13px; height: 13px; }
.plk-card-title { display: -webkit-box; width: calc(100% + 8px); margin: 0 0 0 -4px; padding: 2px 4px; overflow: hidden; border: 0; border-radius: 5px; background: transparent; color: var(--plk-board-ink, var(--plk-ink)); cursor: pointer; font-size: 12px; font-weight: 660; line-height: 16px; text-align: left; transition: background .15s ease, color .15s ease; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.plk-card:hover .plk-card-title, .plk-card-title:hover, .plk-card-title:focus { background: color-mix(in srgb, var(--plk-blue) 10%, transparent); color: var(--plk-blue); outline: none; }
.plk-card-description { display: -webkit-box; margin: 3px 0 0; overflow: hidden; color: var(--plk-board-muted, var(--plk-muted)); font-size: 9.5px; line-height: 14px; -webkit-box-orient: vertical; -webkit-line-clamp: 1; }
.plk-card-labels { display: flex; gap: 3px; margin-top: 5px; overflow: hidden; }
.plk-label { display: inline-flex; align-items: center; gap: 4px; min-width: 0; max-width: 105px; padding: 2px 5px; border-radius: 4px; background: color-mix(in srgb, var(--label-color, var(--plk-munsell)) 12%, var(--plk-card-background, #fff)); color: color-mix(in srgb, var(--label-color, var(--plk-munsell)) 76%, var(--plk-board-ink, #111827)); font-size: 8.5px; font-weight: 650; line-height: 12px; white-space: nowrap; }
.plk-label::before { width: 5px; height: 5px; flex: 0 0 5px; border-radius: 50%; background: var(--label-color, var(--plk-munsell)); content: ""; }
.plk-label--more::before { display: none; }
.plk-card-meta { display: flex; align-items: center; justify-content: space-between; gap: 7px; min-height: 20px; margin-top: 6px; }
.plk-card-meta-left { display: flex; align-items: center; gap: 6px; min-width: 0; }
.plk-meta { display: inline-flex; align-items: center; gap: 2px; color: var(--plk-board-muted, #748094); font-size: 8.5px; font-weight: 600; white-space: nowrap; }
.plk-meta svg { width: 11px; height: 11px; }
.plk-meta.is-overdue { color: var(--plk-danger); }
.plk-unassigned { color: var(--plk-board-muted, #b2bac6); font-size: 10px; }

.plk-priority { display: inline-flex; align-items: center; gap: 4px; width: fit-content; padding: 1px 5px; border-radius: 999px; background: #f1f3f6; color: var(--plk-muted); font-size: 8px; font-weight: 720; line-height: 13px; text-transform: capitalize; white-space: nowrap; }
.plk-priority::before { width: 5px; height: 5px; border-radius: 50%; background: #98a2b3; content: ""; }
.plk-priority--urgent::before { background: #d92d20; }
.plk-priority--high::before { background: #f79009; }
.plk-priority--medium::before { background: #006bff; }
.plk-priority--low::before { background: #12b76a; }

.plk-avatars { display: flex; align-items: center; justify-content: flex-end; }
.plk-avatar { display: inline-flex; align-items: center; justify-content: center; width: 21px; height: 21px; flex: 0 0 21px; margin-left: -5px; overflow: hidden; border: 2px solid #fff; border-radius: 50%; background: #e6edf7; color: #42526a; box-sizing: border-box; font-size: 7px; font-weight: 750; }
.plk-avatar:first-child { margin-left: 0; }
.plk-avatar img { width: 100%; height: 100%; object-fit: cover; }
.plk-avatar--more { background: #dfe5ec; font-size: 7px; }

.plk-overflow { display: block; width: calc(100% - 14px); margin: 0 7px 7px; padding: 7px; border: 1px dashed var(--plk-board-line, #cbd4df); border-radius: 7px; background: color-mix(in srgb, var(--plk-card-background, #fff) 58%, transparent); color: var(--plk-board-muted, var(--plk-muted)); cursor: pointer; font-size: 9px; text-align: center; }
.plk-overflow:hover, .plk-overflow:focus { border-color: var(--plk-blue); color: var(--plk-blue); outline: none; }
.plk-add-task { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 25px; min-width: 25px; min-height: 25px; margin: 0; padding: 3px; border: 1px solid color-mix(in srgb, var(--stage-color) 24%, var(--plk-board-line, #cbd4df)); border-radius: 7px; background: color-mix(in srgb, var(--stage-color) 8%, var(--plk-card-background, #fff)); color: color-mix(in srgb, var(--stage-color) 72%, var(--plk-board-ink, #101828)); cursor: pointer; font-size: 8.5px; font-weight: 720; white-space: nowrap; }
.plk-add-task svg { width: 11px; height: 11px; }
.plk-add-task > span { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; border: 0 !important; white-space: nowrap !important; }
.plk-add-task:hover, .plk-add-task:focus { border-color: color-mix(in srgb, var(--stage-color) 52%, var(--plk-board-line, #cbd4df)); background: color-mix(in srgb, var(--stage-color) 14%, var(--plk-card-background, #fff)); color: color-mix(in srgb, var(--stage-color) 82%, var(--plk-board-ink, #101828)); outline: none; }

body.plk-density-comfortable .plk-stage { width: 304px; flex-basis: 304px; }
body.plk-density-comfortable .plk-task-list { gap: 9px; padding: 9px; }
body.plk-density-comfortable .plk-card { padding: 10px 11px; border-radius: 9px; }
body.plk-density-comfortable .plk-card.has-color-cover { padding-top: 20px; }
body.plk-density-comfortable .plk-card.has-image-cover { padding-top: 70px; }
body.plk-density-comfortable .plk-card-title { font-size: 13px; line-height: 18px; }
body.plk-density-comfortable .plk-card-description { font-size: 10.5px; -webkit-line-clamp: 2; }

.plk-mobile-tabs { display: none; }
.plk-mobile-tabs[hidden] { display: none !important; }

.plk-display-popover { position: fixed; z-index: 100090; padding: 8px; border: 1px solid var(--plk-line); border-radius: 12px; background: #fff; box-shadow: 0 18px 44px rgba(15, 23, 42, .2); }
.plk-display-popover[hidden] { display: none !important; }
.plk-popover-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; padding: 7px 8px 10px; border-bottom: 1px solid var(--plk-line); }
.plk-popover-heading strong { font-size: 13px; }
.plk-popover-heading small, .plk-popover-section > small { color: var(--plk-muted); font-size: 9px; }
.plk-popover-section { display: grid; gap: 7px; padding: 10px 8px; }
.plk-popover-section + .plk-popover-section { border-top: 1px solid var(--plk-line); }
.plk-field-label { color: var(--plk-muted); font-size: 9px; font-weight: 720; letter-spacing: .05em; text-transform: uppercase; }
.plk-segmented { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 3px; padding: 3px; border-radius: 8px; background: var(--plk-soft); }
.plk-segmented--four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.plk-segmented button { min-height: 28px; padding: 4px; border: 0; border-radius: 6px; background: transparent; color: var(--plk-muted); cursor: pointer; font-size: 10px; font-weight: 650; }
.plk-segmented button[aria-pressed="true"] { background: #fff; color: var(--plk-blue); box-shadow: 0 1px 3px rgba(15, 23, 42, .13); }
.plk-toggle-row { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 32px; font-size: 10.5px; font-weight: 550; }
.plk-toggle-row input { position: absolute; opacity: 0; }
.plk-switch { position: relative; width: 34px; height: 20px; flex: 0 0 34px; border-radius: 999px; background: #cbd3dd; transition: background .15s ease; }
.plk-switch::after { position: absolute; top: 3px; left: 3px; width: 14px; height: 14px; border-radius: 50%; background: #fff; box-shadow: 0 1px 2px rgba(15, 23, 42, .25); content: ""; transition: transform .15s ease; }
.plk-toggle-row input:checked + .plk-switch { background: var(--plk-blue); }
.plk-toggle-row input:checked + .plk-switch::after { transform: translateX(14px); }

.plk-modal { position: fixed; inset: 0; z-index: 100100; display: grid; place-items: center; padding: 16px; background: rgba(15, 23, 42, .6); backdrop-filter: blur(4px); }
.plk-dialog { display: flex; width: min(920px, 100%); max-height: min(900px, calc(100vh - 32px)); flex-direction: column; overflow: hidden; border: 1px solid var(--plk-line); border-radius: 15px; background: #fff; box-shadow: var(--plk-shadow); }
.plk-dialog-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; min-height: 65px; flex: 0 0 auto; padding: 14px 16px; border-bottom: 1px solid var(--plk-line); }
.plk-dialog-header h2 { max-width: 720px; margin: 1px 0 0; overflow: hidden; color: var(--plk-ink); font-size: 18px; font-weight: 730; letter-spacing: -.025em; line-height: 24px; text-overflow: ellipsis; white-space: nowrap; }
.plk-dialog-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; min-height: 14px; }
.plk-dialog-eyebrow { display: block; color: var(--plk-muted); font-size: 9px; font-weight: 700; letter-spacing: .07em; line-height: 13px; text-transform: uppercase; }
.plk-completed-badge { display: inline-flex; align-items: center; min-height: 19px; padding: 2px 7px; border: 1px solid #b9e5d2; border-radius: 999px; background: #ecf9f3; color: #087a55; font-size: 8.5px; font-style: normal; font-weight: 740; line-height: 13px; white-space: nowrap; }
.plk-unsaved-badge { display: inline-flex; align-items: center; gap: 5px; color: #a15c00; font-size: 8px; font-weight: 740; letter-spacing: .025em; line-height: 13px; }
.plk-unsaved-badge[hidden] { display: none; }
.plk-unsaved-badge i { width: 5px; height: 5px; border-radius: 50%; background: #f59e0b; box-shadow: 0 0 0 3px rgba(245,158,11,.13); }
.plk-dialog-footer { position: relative; z-index: 3; display: flex; align-items: center; gap: 7px; grid-column: 1 / -1; flex: 0 0 auto; padding: 12px 16px; border-top: 1px solid var(--plk-line); background: #fbfcfd; box-shadow: 0 -8px 22px rgba(15,23,42,.06); }
.plk-footer-spacer { flex: 1 1 auto; }

.plk-unsaved-guard { position: fixed; inset: 0; z-index: 100180; display: grid; place-items: center; padding: 20px; background: rgba(7,14,29,.56); backdrop-filter: saturate(115%) blur(8px); animation: plk-unsaved-fade-in .15s ease-out; }
.plk-unsaved-dialog { display: grid; width: min(450px, 100%); grid-template-columns: 44px minmax(0,1fr); gap: 13px 15px; padding: 20px; border: 1px solid rgba(255,255,255,.7); border-radius: 17px; background: #fff; box-shadow: 0 34px 90px rgba(3,10,24,.34), 0 8px 24px rgba(3,10,24,.16); animation: plk-unsaved-dialog-in .18s cubic-bezier(.2,.8,.2,1); }
.plk-unsaved-icon { display: grid; width: 42px; height: 42px; place-items: center; border: 1px solid #f8d99a; border-radius: 13px; background: linear-gradient(145deg,#fff9e8,#fff1c7); color: #b56800; box-shadow: inset 0 1px 0 rgba(255,255,255,.9); font-size: 20px; font-weight: 780; }
.plk-library-delete-guard .plk-unsaved-icon { border-color: #fecaca; background: linear-gradient(145deg,#fff8f7,#feeceb); color: #c2413a; }
.plk-library-delete-guard .plk-unsaved-icon svg { width: 22px; height: 22px; }
.plk-library-delete-guard .plk-unsaved-copy > span { color: #b42318; }
.plk-library-delete-guard .plk-unsaved-actions .plk-btn:not(.plk-btn--danger) { border-color: #cbd5e1; background: #fff; color: #344054; box-shadow: 0 1px 2px rgba(16,24,40,.05); }
.plk-library-delete-guard .plk-unsaved-actions .plk-btn:not(.plk-btn--danger):hover,
.plk-library-delete-guard .plk-unsaved-actions .plk-btn:not(.plk-btn--danger):focus { border-color: #98a2b3; background: #f2f4f7; color: #101828; }
.plk-library-delete-guard .plk-unsaved-actions .plk-btn--danger { border-color: #c9362c; background: linear-gradient(180deg,#dc4c41,#c9362c); color: #fff; box-shadow: 0 5px 14px rgba(185,28,28,.2); }
.plk-library-delete-guard .plk-unsaved-actions .plk-btn--danger:hover,
.plk-library-delete-guard .plk-unsaved-actions .plk-btn--danger:focus { border-color: #b42318; background: linear-gradient(180deg,#d83e33,#b82c22); color: #fff; }
.plk-library-delete-guard .plk-unsaved-actions .plk-btn:focus-visible { outline: 2px solid rgba(0,107,255,.34); outline-offset: 2px; }
.plk-library-move-guard .plk-unsaved-icon { border-color: #cbdcf5; background: linear-gradient(145deg,#f6faff,#e7f1ff); color: var(--plk-blue); }
.plk-library-move-guard .plk-unsaved-icon svg { width: 22px; height: 22px; }
.plk-library-move-guard .plk-unsaved-copy > span { color: var(--plk-blue); }
.plk-library-move-field { display: grid; gap: 5px; margin-top: 13px; }
.plk-library-move-field > span { color: #475467; font-size: 9px; font-weight: 720; }
.plk-library-move-field select { width: 100%; min-height: 38px; margin: 0; border: 1px solid #d8e1ec; border-radius: 9px; background: #fff; color: #1d2939; font-size: 10px; }
.plk-unsaved-copy { min-width: 0; }
.plk-unsaved-copy > span { display: block; margin: 0 0 2px; color: #a16207; font-size: 8px; font-weight: 780; letter-spacing: .1em; text-transform: uppercase; }
.plk-unsaved-copy h2 { margin: 0; color: #101828; font-size: 19px; font-weight: 770; letter-spacing: -.03em; line-height: 25px; }
.plk-unsaved-copy p { margin: 5px 0 0; color: #667085; font-size: 11px; line-height: 17px; }
.plk-unsaved-actions { display: flex; grid-column: 1 / -1; align-items: center; justify-content: flex-end; gap: 7px; padding-top: 3px; }
@keyframes plk-unsaved-fade-in { from { opacity: 0; } to { opacity: 1; } }
@keyframes plk-unsaved-dialog-in { from { opacity: 0; transform: translateY(7px) scale(.985); } to { opacity: 1; transform: translateY(0) scale(1); } }

.plk-task-dialog { width: min(1050px, 100%); }
.plk-task-form { display: flex; min-height: 0; flex: 1 1 auto; flex-direction: column; overflow: hidden; }
.plk-task-form-scroll { display: grid; min-height: 0; flex: 1 1 auto; grid-template-columns: minmax(0, 1fr) 245px; overflow-y: auto; overscroll-behavior: contain; scrollbar-gutter: stable; }
.plk-task-form-main { min-width: 0; padding: 16px; }
.plk-task-tabs { display: flex; align-items: center; gap: 4px; margin: -4px 0 17px; padding: 4px; border: 1px solid #dce4ee; border-radius: 10px; background: #f3f6fa; }
.plk-task-tabs button { min-height: 34px; flex: 1 1 0; padding: 6px 11px; border: 0; border-radius: 7px; background: transparent; color: #6b778a; cursor: pointer; font-size: 9.5px; font-weight: 720; }
.plk-task-tabs button:hover, .plk-task-tabs button:focus-visible { color: #24528f; outline: none; }
.plk-task-tabs button[aria-selected="true"] { background: #fff; color: #175fae; box-shadow: 0 3px 10px rgba(15,23,42,.1); }
.plk-task-tab-panel[hidden] { display: none; }
.plk-task-tab-panel[data-task-tab-panel="details"] > .plk-field--full:first-child input { min-height: 44px; font-size: 14px; font-weight: 680; letter-spacing: -.015em; }
.plk-task-form-side { padding: 16px 13px; border-left: 1px solid var(--plk-line); background: #f9fafb; }
.plk-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-bottom: 11px; }
.plk-field { display: grid; gap: 5px; min-width: 0; }
.plk-field--full { margin-bottom: 11px; }
.plk-field > span { color: #475467; font-size: 10px; font-weight: 670; }
.plk-field input, .plk-field select, .plk-field textarea,
.plk-add-stage-form input, .plk-add-stage-form select,
.plk-stage-setting input, .plk-stage-setting select,
.plk-explorer-filters input, .plk-explorer-filters select,
.plk-explorer-people select {
    width: 100%; min-height: 36px; margin: 0; padding: 6px 9px; border: 1px solid #d5dce5; border-radius: 7px; background: #fff; color: var(--plk-ink); box-shadow: none; font-size: 11px;
}
.plk-field textarea { resize: vertical; line-height: 17px; }
.plk-field input:focus, .plk-field select:focus, .plk-field textarea:focus,
.plk-add-stage-form input:focus, .plk-stage-setting input:focus, .plk-stage-setting select:focus,
.plk-explorer-filters input:focus, .plk-explorer-filters select:focus, .plk-explorer-people select:focus { border-color: var(--plk-blue); outline: 2px solid rgba(0, 107, 255, .13); outline-offset: 0; box-shadow: none; }

.plk-section-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 16px 0 8px; }
.plk-section-heading h3, .plk-side-heading h3, .plk-settings-card h3, .plk-board-manager h3 { margin: 0; color: var(--plk-ink); font-size: 12.5px; font-weight: 720; line-height: 18px; }
.plk-section-heading p, .plk-settings-card p, .plk-board-manager p { margin: 2px 0 0; color: var(--plk-muted); font-size: 9.5px; line-height: 14px; }
.plk-checklist-editor { display: grid; gap: 5px; }
.plk-checklist-row { display: grid; grid-template-columns: 20px minmax(0, 1fr) 28px; align-items: center; gap: 6px; }
.plk-checklist-row input[type="checkbox"] { width: 16px; height: 16px; margin: 0; border-color: #cbd3dd; }
.plk-checklist-row input[type="text"] { width: 100%; min-height: 32px; margin: 0; padding: 4px 8px; border: 1px solid var(--plk-line); border-radius: 6px; box-shadow: none; font-size: 10.5px; }
.plk-checklist-empty, .plk-comments-empty { padding: 13px; border: 1px dashed #cbd4df; border-radius: 7px; color: var(--plk-muted); font-size: 10px; text-align: center; }

.plk-side-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; margin-bottom: 8px; }
.plk-side-heading span { color: var(--plk-muted); font-size: 9px; }
.plk-assignee-picker { display: grid; gap: 4px; max-height: 450px; overflow-y: auto; }
.plk-assignee-option { display: grid; grid-template-columns: 16px 28px minmax(0, 1fr); align-items: center; gap: 7px; padding: 7px; border: 1px solid transparent; border-radius: 7px; cursor: pointer; }
.plk-assignee-option:hover { border-color: var(--plk-line); background: #fff; }
.plk-assignee-option input { width: 14px; height: 14px; margin: 0; }
.plk-assignee-option .plk-avatar { width: 27px; height: 27px; margin: 0; flex-basis: 27px; }
.plk-assignee-option > span:last-child { display: grid; min-width: 0; }
.plk-assignee-option strong, .plk-assignee-option small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.plk-assignee-option strong { font-size: 10.5px; font-weight: 660; }
.plk-assignee-option small { color: var(--plk-muted); font-size: 8.5px; }

.plk-comments-section { margin-top: 18px; padding-top: 2px; border-top: 1px solid var(--plk-line); }
.plk-comments-list { display: grid; gap: 7px; }
.plk-comment { display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: 8px; padding: 9px; border: 1px solid var(--plk-line); border-radius: 7px; background: #fbfcfd; }
.plk-comment > .plk-avatar { width: 27px; height: 27px; margin: 0; }
.plk-comment header { display: flex; align-items: center; gap: 7px; }
.plk-comment header strong { font-size: 10.5px; }
.plk-comment header time { color: var(--plk-muted); font-size: 8.5px; }
.plk-comment header button { margin-left: 0; padding: 0; border: 0; background: transparent; color: var(--plk-blue); cursor: pointer; font-size: 8.5px; }
.plk-comment header time + button { margin-left: auto; }
.plk-comment header button:last-child { color: var(--plk-danger); }
.plk-comment p { margin: 3px 0 0; color: #344054; font-size: 10.5px; line-height: 16px; }
.plk-comment.is-reply { margin-left: 0; border-left: 3px solid #d9e7fb; }
.plk-comment-reply-context { display: grid; gap: 5px; margin: 8px 0 3px; padding: 8px 9px; border: 1px solid #c9dcf7; border-left: 4px solid #5792e7; border-radius: 8px; background: #eef5ff; color: #5d6a7c; box-shadow: inset 0 1px 0 rgba(255,255,255,.75); }
.plk-comment-reply-context > div { display: grid; grid-template-columns: 18px minmax(0,1fr) auto; align-items: center; gap: 5px; }
.plk-comment-reply-context > div > span { display: grid; width: 18px; height: 18px; place-items: center; border-radius: 5px; background: #dceaff; color: #2f6fc7; }
.plk-comment-reply-context > div > span svg { width: 11px; height: 11px; }
.plk-comment-reply-context strong { color: #24528f; font-size: 8.5px; }
.plk-comment-reply-context small { color: #6e7f95; font-size: 7.5px; white-space: nowrap; }
.plk-comment .plk-comment-reply-context p { margin: 0; color: #66758a; font-size: 9px; line-height: 13px; }
.plk-comment .plk-comment-body { margin-top: 5px; }
.plk-private-badge { padding: 1px 4px; border-radius: 999px; background: #f4ebff; color: #6941c6; font-size: 7px; font-weight: 700; }
.plk-comment-compose { display: flex; align-items: flex-end; gap: 7px; margin-top: 8px; }
.plk-comment-compose textarea { min-width: 0; min-height: 54px; flex: 1 1 auto; margin: 0; padding: 7px 8px; border: 1px solid var(--plk-line); border-radius: 7px; box-shadow: none; font-size: 10.5px; resize: vertical; }
.plk-comment-compose select { min-height: 34px; margin: 0; padding: 5px 24px 5px 7px; border: 1px solid var(--plk-line); border-radius: 7px; background: #fff; font-size: 9px; }
.plk-inline-loading, .plk-inline-error { display: flex; align-items: center; justify-content: center; gap: 7px; min-height: 60px; color: var(--plk-muted); font-size: 10px; }
.plk-inline-error { color: var(--plk-danger); }

.plk-modal--explorer { padding: 12px; }
.plk-explorer { width: min(1480px, 100%); height: min(920px, calc(100vh - 24px)); max-height: none; }
.plk-explorer-header { display: flex; align-items: center; gap: 12px; min-height: 66px; padding: 11px 14px; border-bottom: 1px solid var(--plk-line); }
.plk-explorer-brand { display: flex; align-items: center; gap: 8px; min-width: 190px; max-width: 250px; }
.plk-explorer-brand img { width: 32px; height: 32px; }
.plk-explorer-brand span { display: grid; min-width: 0; }
.plk-explorer-brand small { color: var(--plk-muted); font-size: 8px; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
.plk-explorer-brand strong { overflow: hidden; font-size: 13px; font-weight: 720; text-overflow: ellipsis; white-space: nowrap; }
.plk-explorer-filters { display: flex; align-items: center; gap: 6px; min-width: 0; flex: 1 1 auto; }
.plk-search { position: relative; min-width: 200px; flex: 1 1 320px; }
.plk-search svg { position: absolute; top: 50%; left: 9px; width: 15px; height: 15px; color: var(--plk-muted); transform: translateY(-50%); pointer-events: none; }
.plk-search input { padding-left: 31px; }
.plk-explorer-filters select { width: auto; min-width: 128px; padding-right: 26px; }
.plk-explorer-stages { display: flex; gap: 5px; min-height: 48px; padding: 8px 14px; overflow-x: auto; border-bottom: 1px solid var(--plk-line); background: #fafbfc; scrollbar-width: thin; }
.plk-explorer-tab { display: inline-flex; align-items: center; gap: 6px; min-height: 30px; padding: 4px 8px; border: 1px solid var(--plk-line); border-radius: 7px; background: #fff; color: var(--plk-muted); cursor: pointer; font-size: 9.5px; font-weight: 650; white-space: nowrap; transition: transform .15s ease; }
.plk-explorer-tab span { min-width: 18px; padding: 1px 4px; border-radius: 999px; background: var(--plk-soft); font-size: 8px; text-align: center; }
.plk-explorer-tab[aria-selected="true"] { border-color: var(--plk-blue); background: #eff5ff; color: var(--plk-blue); }
.plk-explorer-tab.is-drop-target { border-color: var(--plk-blue); background: #e3efff; transform: translateY(-2px); }
.plk-explorer-summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 34px; padding: 6px 16px; border-bottom: 1px solid var(--plk-line); color: var(--plk-muted); font-size: 9.5px; }
.plk-explorer-summary strong { color: var(--plk-ink); }
.plk-explorer-body { min-height: 0; flex: 1 1 auto; overflow-y: auto; overscroll-behavior: contain; background: #f4f6f9; }
.plk-explorer-list { display: grid; gap: 4px; max-width: 1430px; margin: 0 auto; padding: 8px; }
.plk-explorer-row { display: grid; grid-template-columns: minmax(300px, 1fr) minmax(120px, .35fr) 100px 105px minmax(175px, .45fr); align-items: center; gap: 8px; min-height: 51px; padding: 6px 8px; border: 1px solid var(--plk-line); border-radius: 7px; background: #fff; box-shadow: 0 1px 2px rgba(15, 23, 42, .025); }
.plk-explorer-row:hover { border-color: #b5c9e8; box-shadow: 0 5px 14px rgba(15, 23, 42, .065); }
.plk-explorer-row.is-dragging { opacity: .45; }
.plk-explorer-primary { display: flex; align-items: flex-start; gap: 6px; min-width: 0; }
.plk-row-drag { display: inline-flex; width: 18px; height: 22px; align-items: center; justify-content: center; flex: 0 0 18px; color: #a2abb8; cursor: grab; }
.plk-row-drag svg { width: 13px; height: 13px; }
.plk-explorer-primary button { display: grid; min-width: 0; margin: 0; padding: 0; overflow: hidden; border: 0; background: transparent; cursor: pointer; text-align: left; }
.plk-explorer-primary strong, .plk-explorer-primary span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.plk-explorer-primary strong { color: var(--plk-ink); font-size: 11.5px; font-weight: 660; }
.plk-explorer-primary button:hover strong { color: var(--plk-blue); }
.plk-explorer-primary span { color: var(--plk-muted); font-size: 8.5px; }
.plk-explorer-label-cell { display: flex; gap: 3px; min-width: 0; overflow: hidden; }
.plk-explorer-due { display: grid; min-width: 0; }
.plk-explorer-due small { color: var(--plk-muted); font-size: 8px; }
.plk-explorer-due strong { overflow: hidden; font-size: 9.5px; font-weight: 620; text-overflow: ellipsis; white-space: nowrap; }
.plk-explorer-due.is-overdue strong { color: var(--plk-danger); }
.plk-explorer-people { display: flex; align-items: center; gap: 6px; min-width: 0; }
.plk-explorer-people .plk-avatars { flex: 0 0 auto; }
.plk-explorer-people select { min-width: 0; min-height: 30px; flex: 1 1 auto; padding: 3px 23px 3px 6px; font-size: 9px; }
.plk-muted { color: var(--plk-muted); font-size: 9px; }

.plk-board-manager { width: min(980px, 100%); }
.plk-board-manager-grid { display: grid; min-height: 0; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); overflow-y: auto; }
.plk-board-manager-grid > section { padding: 18px; }
.plk-board-manager-grid > section + section { border-left: 1px solid var(--plk-line); background: #f9fafb; }
.plk-stacked-form { display: grid; gap: 10px; margin-top: 13px; }
.plk-check-row { display: flex; align-items: flex-start; gap: 7px; color: #475467; font-size: 10px; line-height: 15px; }
.plk-check-row input { margin-top: 1px; }
.plk-board-list { display: grid; gap: 5px; margin-top: 12px; }
.plk-board-list > button { display: flex; align-items: center; justify-content: space-between; gap: 10px; width: 100%; padding: 9px 10px; border: 1px solid var(--plk-line); border-radius: 7px; background: #fff; color: var(--plk-ink); cursor: pointer; text-align: left; }
.plk-board-list > button:hover { border-color: var(--plk-blue); color: var(--plk-blue); }
.plk-board-list > button span:first-child { display: grid; min-width: 0; }
.plk-board-list strong, .plk-board-list small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.plk-board-list strong { font-size: 10.5px; }
.plk-board-list small { color: var(--plk-muted); font-size: 8.5px; }
.plk-import-section { margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--plk-line); }
.plk-import-list { display: grid; gap: 5px; margin-top: 10px; }
.plk-import-list > div { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 8px; border: 1px solid var(--plk-line); border-radius: 7px; background: #fff; }
.plk-import-list > div > span:first-child { display: grid; }
.plk-import-list strong { font-size: 10px; }
.plk-import-list small { color: var(--plk-muted); font-size: 8px; }
.plk-imported { color: var(--plk-success); font-size: 9px; font-weight: 700; }

.plk-settings-dialog { width: min(1040px, 100%); }
.plk-settings-body { position: relative; display: grid; gap: 10px; min-height: 0; padding: 14px; overflow-y: auto; scroll-behavior: smooth; background: #f5f7fa; }
.plk-settings-nav { position: sticky; top: -14px; z-index: 20; display: flex; min-width: 0; align-items: center; justify-content: space-between; gap: 10px; margin: -14px -14px 0; padding: 9px 14px; border-bottom: 1px solid var(--plk-line); background: rgba(255,255,255,.96); box-shadow: 0 8px 20px rgba(15,23,42,.06); backdrop-filter: blur(12px); }
.plk-settings-nav > div { display: flex; min-width: 0; align-items: center; gap: 3px; overflow-x: auto; scrollbar-width: none; }
.plk-settings-nav > div::-webkit-scrollbar { display: none; }
.plk-settings-nav [data-settings-target] { min-height: 30px; padding: 5px 8px; border: 0; border-radius: 6px; background: transparent; color: var(--plk-muted); cursor: pointer; font-size: 9px; font-weight: 680; white-space: nowrap; }
.plk-settings-nav [data-settings-target]:hover, .plk-settings-nav [data-settings-target]:focus, .plk-settings-nav [data-settings-target][aria-current="true"] { background: #edf4ff; color: var(--plk-blue); outline: none; }
.plk-settings-nav-save { min-height: 31px; flex: 0 0 auto; }
.plk-settings-card { padding: 14px; border: 1px solid var(--plk-line); border-radius: 9px; background: #fff; }
.plk-settings-card[data-settings-section] { scroll-margin-top: 58px; }
.plk-settings-card > .plk-section-heading { margin-top: 0; }
.plk-theme-count { padding: 3px 7px; border-radius: 999px; background: #edf4ff; color: var(--plk-blue); font-size: 8px; font-weight: 720; white-space: nowrap; }
.plk-theme-presets { display: grid; grid-template-columns: repeat(5, minmax(110px, 1fr)); gap: 8px; margin: 11px 0 0; }
.plk-theme-preset { position: relative; display: grid; gap: 7px; min-width: 0; padding: 7px; border: 1px solid var(--plk-line); border-radius: 9px; background: #fff; color: var(--plk-ink); cursor: pointer; text-align: left; transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease; }
.plk-theme-preset:hover, .plk-theme-preset:focus { border-color: #9bbcf1; outline: none; box-shadow: 0 8px 18px rgba(15,23,42,.08); transform: translateY(-1px); }
.plk-theme-preset[aria-pressed="true"] { border-color: var(--plk-blue); box-shadow: 0 0 0 2px color-mix(in srgb, var(--plk-blue) 14%, transparent); }
.plk-theme-preset[aria-pressed="true"]::after { position: absolute; top: 4px; right: 4px; display: grid; width: 16px; height: 16px; place-items: center; border: 2px solid #fff; border-radius: 50%; background: var(--plk-blue); color: #fff; content: "✓"; font-size: 8px; font-weight: 800; }
.plk-theme-preset-copy { display: grid; min-width: 0; }
.plk-theme-preset strong { overflow: hidden; font-size: 9.5px; text-overflow: ellipsis; white-space: nowrap; }
.plk-theme-preset small { overflow: hidden; color: var(--plk-muted); font-size: 7.5px; text-overflow: ellipsis; white-space: nowrap; }
.plk-theme-swatch { display: flex; height: 40px; gap: 3px; padding: 5px; overflow: hidden; border-radius: 7px; background: var(--theme-page); box-shadow: inset 0 0 0 1px rgba(15,23,42,.06); }
.plk-theme-swatch i { display: block; flex: 1 1 0; border-radius: 3px; background: var(--theme-card); box-shadow: 0 0 0 1px color-mix(in srgb, var(--theme-accent) 25%, transparent); }
.plk-theme-swatch i:first-child { background: var(--theme-stage); }
.plk-theme-swatch i:last-child { flex: 0 0 5px; background: var(--theme-accent); }
.plk-theme-status { margin: 6px 0 10px !important; color: var(--plk-muted); font-size: 8.5px !important; }
.plk-stage-settings-list { display: grid; gap: 5px; }
.plk-stage-setting { display: grid; grid-template-columns: 22px minmax(150px, 1fr) 42px 100px 74px 56px 58px 28px; align-items: center; gap: 6px; padding: 6px; border: 1px solid var(--plk-line); border-radius: 7px; background: #fbfcfd; }
.plk-drag-static { display: inline-flex; align-items: center; justify-content: center; color: #a6afbd; }
.plk-drag-static svg { width: 14px; height: 14px; }
.plk-stage-order { display: grid; gap: 1px; }
.plk-stage-order button { width: 20px; height: 14px; padding: 0; border: 0; border-radius: 3px; background: #edf1f5; color: var(--plk-muted); cursor: pointer; font-size: 8px; line-height: 12px; }
.plk-stage-order button:hover { background: #e3edff; color: var(--plk-blue); }
.plk-stage-setting input, .plk-stage-setting select { min-width: 0; min-height: 30px; padding: 3px 6px; font-size: 9.5px; }
.plk-stage-setting input[type="color"] { width: 38px; padding: 2px; }
.plk-wip-field { position: relative; }
.plk-wip-field span { position: absolute; top: 50%; left: 6px; z-index: 1; color: var(--plk-muted); font-size: 7px; transform: translateY(-50%); pointer-events: none; }
.plk-wip-field input { padding-left: 24px; }
.plk-stage-setting-count { color: var(--plk-muted); font-size: 8px; text-align: center; }
.plk-add-stage-form { display: grid; grid-template-columns: minmax(170px, 1fr) 42px 105px auto; gap: 6px; margin-top: 9px; }
.plk-add-stage-form input[type="color"] { padding: 2px; }
.plk-danger-zone { display: flex; align-items: center; justify-content: space-between; gap: 14px; border-color: #f4c9c5; }

.plk-empty-state { display: grid; max-width: 520px; min-height: 320px; grid-template-columns: minmax(0,1fr); justify-items: center; align-content: center; margin: 40px auto; padding: 28px; color: var(--plk-muted); text-align: center; }
.plk-empty-state img { width: 58px; height: 58px; margin-bottom: 10px; }
.plk-empty-state h2 { margin: 0; color: var(--plk-ink); font-size: 18px; }
.plk-empty-state p { margin: 6px 0 14px; font-size: 11px; }
.plk-empty-state--small { min-height: 240px; margin: 0 auto; }
.plk-boot { display: flex; align-items: center; justify-content: center; gap: 9px; min-height: 360px; color: var(--plk-muted); font-size: 11px; }
.plk-spinner { display: inline-block; width: 18px; height: 18px; flex: 0 0 18px; border: 2px solid #d7dee7; border-top-color: var(--plk-blue); border-radius: 50%; animation: plk-spin .7s linear infinite; }
.plk-spinner--small { width: 13px; height: 13px; flex-basis: 13px; }
@keyframes plk-spin { to { transform: rotate(360deg); } }
.plk-skeleton { border-radius: 5px; background: linear-gradient(90deg, #edf0f4, #f7f8fa, #edf0f4); background-size: 200% 100%; animation: plk-shimmer 1.2s infinite; }
.plk-skeleton--title { width: 190px; height: 17px; }
.plk-skeleton--text { width: 320px; height: 9px; margin-top: 5px; }
@keyframes plk-shimmer { to { background-position: -200% 0; } }

.plk-toast-region { position: fixed; right: 18px; bottom: 18px; z-index: 100200; display: grid; gap: 6px; width: min(360px, calc(100vw - 36px)); pointer-events: none; }
.plk-toast { padding: 10px 12px; border-radius: 8px; background: #172033; color: #fff; box-shadow: 0 12px 28px rgba(15, 23, 42, .25); font-size: 10.5px; font-weight: 600; animation: plk-toast-in .2s ease-out; }
.plk-toast--success { background: #08664a; }
.plk-toast--error { background: #8f1d19; }
@keyframes plk-toast-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }

.plk-public-badge { padding: 5px 9px; border: 1px solid #b9d9d3; border-radius: 999px; background: #eefaf7; color: var(--plk-forest); font-size: 9px; font-weight: 720; }
.plk-user-chip { display: inline-flex; width: 30px; height: 30px; align-items: center; justify-content: center; overflow: hidden; border-radius: 50%; background: #e6edf7; color: #42526a; font-size: 9px; font-weight: 750; }
.plk-user-chip img { width: 100%; height: 100%; object-fit: cover; }
.plk-profile-trigger { display: flex; min-width: 0; align-items: center; gap: 7px; margin: 0; padding: 3px 7px 3px 3px; border: 1px solid transparent; border-radius: 9px; background: transparent; color: var(--plk-ink); cursor: pointer; text-align: left; }
.plk-profile-trigger:hover, .plk-profile-trigger:focus { border-color: #c9d9ef; background: #f3f7ff; outline: none; }
.plk-profile-trigger-copy { display: grid; max-width: 135px; line-height: 1.15; }
.plk-profile-trigger-copy strong { overflow: hidden; font-size: 9.5px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.plk-profile-trigger-copy small { color: var(--plk-muted); font-size: 7.5px; }
.plk-logout { color: var(--plk-muted); font-size: 9px; font-weight: 650; text-decoration: none; }
.plk-logout:hover { color: var(--plk-blue); }
.plk-notification-button { position: relative; }
.plk-notification-count { position: absolute; top: -5px; right: -5px; min-width: 17px; height: 17px; padding: 1px 4px; border: 2px solid #fff; border-radius: 999px; background: var(--plk-danger); color: #fff; font-size: 7px; line-height: 11px; text-align: center; }

.plk-profile-dialog { width: min(720px,100%); }
.plk-profile-form { min-height: 0; overflow-y: auto; }
.plk-profile-photo { display: grid; grid-template-columns: 92px minmax(0,1fr); align-items: center; gap: 18px; padding: 20px; border-bottom: 1px solid var(--plk-line); background: #f8fafc; }
.plk-profile-photo-preview { display: inline-flex; width: 88px; height: 88px; align-items: center; justify-content: center; overflow: hidden; border: 4px solid #fff; border-radius: 50%; background: linear-gradient(135deg,#dce9f8,#e5f6f2); color: #31506f; box-shadow: 0 8px 24px rgba(15,23,42,.12); font-size: 24px; font-weight: 750; }
.plk-profile-photo-preview img { width: 100%; height: 100%; object-fit: cover; }
.plk-profile-photo strong { font-size: 13px; }
.plk-profile-photo p { margin: 2px 0 8px; color: var(--plk-muted); font-size: 9.5px; }
.plk-profile-photo .plk-inline-compose { margin: 0; }
.plk-profile-photo input[type="file"] { min-width: 0; max-width: 290px; color: var(--plk-muted); font-size: 9px; }
.plk-profile-photo small { display: block; margin-top: 5px; color: #98a2b3; font-size: 8px; }
.plk-profile-fields { padding: 18px 20px 8px; }
.plk-profile-username { display: grid; grid-template-columns: 90px minmax(0,1fr); align-items: center; gap: 6px; margin-top: 4px; padding: 9px 10px; border-radius: 7px; background: #f4f7fa; }
.plk-profile-username span { color: var(--plk-muted); font-size: 9px; font-weight: 680; }
.plk-profile-username strong { font-size: 10px; }
.plk-profile-username small { grid-column: 2; color: #98a2b3; font-size: 8px; }

.plk-modal--library { padding: 10px; }
.plk-library-dialog { width: min(1540px,100%); height: min(940px,calc(100vh - 20px)); max-height: none; }
.plk-library-header { display: flex; min-height: 66px; align-items: center; gap: 14px; padding: 10px 13px; border-bottom: 1px solid var(--plk-line); }
.plk-library-brand-icon { display: inline-flex; width: 34px; height: 34px; align-items: center; justify-content: center; border-radius: 9px; background: linear-gradient(135deg,#e3f4f0,#e8f1ff); color: var(--plk-munsell); }
.plk-library-brand-icon svg { width: 19px; height: 19px; }
.plk-library-search { max-width: 620px; margin-left: auto; flex: 1 1 420px; }
.plk-library-search input { width: 100%; min-height: 36px; margin: 0; padding: 6px 10px 6px 32px; border: 1px solid var(--plk-line); border-radius: 8px; box-shadow: none; font-size: 10px; }
.plk-library-layout { display: grid; min-height: 0; grid-template-columns: 220px minmax(0,1fr); flex: 1 1 auto; }
.plk-library-sidebar { min-height: 0; padding: 15px 10px; overflow-y: auto; border-right: 1px solid var(--plk-line); background: #f8fafc; }
.plk-library-sidebar > strong { display: block; padding: 0 7px 8px; color: var(--plk-muted); font-size: 8px; letter-spacing: .08em; text-transform: uppercase; }
.plk-library-sidebar nav { display: grid; gap: 2px; }
.plk-library-sidebar nav button { display: grid; min-height: 35px; grid-template-columns: 18px minmax(0,1fr) auto; align-items: center; gap: 7px; width: 100%; padding: 6px 8px; border: 0; border-radius: 7px; background: transparent; color: #475467; cursor: pointer; font-size: 9.5px; text-align: left; }
.plk-library-sidebar nav button svg { width: 16px; height: 16px; }
.plk-library-sidebar nav button b { min-width: 21px; padding: 1px 5px; border-radius: 999px; background: #e8edf3; color: var(--plk-muted); font-size: 7.5px; text-align: center; }
.plk-library-sidebar nav button:hover, .plk-library-sidebar nav button[aria-pressed="true"] { background: #eaf2ff; color: var(--plk-blue); }
.plk-library-sidebar-note { margin: 18px 5px 0; padding: 10px; border: 1px solid #dce7e4; border-radius: 8px; background: #f0faf7; }
.plk-library-sidebar-note strong { color: var(--plk-forest); font-size: 8.5px; }
.plk-library-sidebar-note p { margin: 3px 0 0; color: #667085; font-size: 7.8px; line-height: 12px; }
.plk-library-main { position: relative; display: flex; min-width: 0; min-height: 0; flex-direction: column; background: #f4f6f9; }
.plk-library-toolbar { display: flex; min-height: 52px; align-items: center; justify-content: space-between; gap: 12px; padding: 8px 12px; border-bottom: 1px solid var(--plk-line); background: #fff; }
.plk-library-breadcrumbs { display: flex; min-width: 0; align-items: center; gap: 4px; overflow-x: auto; }
.plk-library-breadcrumbs button { padding: 3px 5px; border: 0; border-radius: 5px; background: transparent; color: var(--plk-muted); cursor: pointer; font-size: 9px; font-weight: 650; white-space: nowrap; }
.plk-library-breadcrumbs button:last-child { color: var(--plk-ink); }
.plk-library-breadcrumbs button:hover { background: #eef4ff; color: var(--plk-blue); }
.plk-library-breadcrumbs button.is-resource-drop-target { border-color: color-mix(in srgb,var(--plk-blue) 42%,#dbe4ee); background: color-mix(in srgb,var(--plk-blue) 10%,#fff); color: var(--plk-blue); box-shadow: 0 0 0 3px color-mix(in srgb,var(--plk-blue) 14%,transparent); }
.plk-library-breadcrumbs > span { color: #b0b8c5; font-size: 10px; }
.plk-library-breadcrumbs .plk-library-scope { color: #475467; font-size: 9px; font-weight: 690; white-space: nowrap; }
.plk-library-actions { display: flex; align-items: center; gap: 5px; flex: 0 0 auto; }
.plk-library-actions select { min-height: 30px; margin: 0; padding: 4px 24px 4px 8px; border: 1px solid var(--plk-line); border-radius: 7px; background: #fff; color: var(--plk-ink); font-size: 9.5px; }
.plk-library-summary { display: flex; min-height: 32px; align-items: center; justify-content: space-between; gap: 12px; padding: 7px 14px; border-bottom: 1px solid var(--plk-line); background: #fbfcfd; color: var(--plk-muted); font-size: 8.5px; }
.plk-library-summary strong { color: var(--plk-ink); }
.plk-library-summary-count { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.plk-library-summary-tools { display: flex; min-width: 0; align-items: center; justify-content: flex-end; gap: 5px; flex-wrap: wrap; }
.plk-library-summary-btn { display: inline-flex; min-height: 25px; align-items: center; gap: 4px; padding: 3px 7px; border: 1px solid #d8e1ec; border-radius: 7px; background: #fff; color: #53657b; cursor: pointer; font-size: 7.75px; font-weight: 700; white-space: nowrap; }
.plk-library-summary-btn svg { width: 11px; height: 11px; }
.plk-library-summary-btn:hover, .plk-library-summary-btn:focus-visible { border-color: color-mix(in srgb,var(--plk-blue) 40%,#d8e1ec); background: #edf5ff; color: var(--plk-blue); outline: 0; }
.plk-library-summary-btn--download { border-color: color-mix(in srgb,var(--plk-blue) 38%,#d8e1ec); background: color-mix(in srgb,var(--plk-blue) 8%,#fff); color: color-mix(in srgb,var(--plk-blue) 78%,#17324f); }
.plk-library-summary-btn--danger { border-color: #fecaca; background: #fff7f7; color: #c2413a; }
.plk-library-summary-btn--danger:hover, .plk-library-summary-btn--danger:focus-visible { border-color: #fca5a5; background: #fff0f0; color: #b42318; }
.plk-library-selected-count { padding: 0 3px 0 5px; color: #617288; font-size: 7.75px; white-space: nowrap; }
.plk-library-selected-count strong { color: var(--plk-blue); font-size: 9px; }
.plk-library-drop-guide { display: inline-flex; align-items: center; gap: 5px; color: #758399; font-size: 8px; white-space: nowrap; }
.plk-library-drop-guide svg { width: 12px; height: 12px; color: var(--plk-blue); }
.plk-library-drop-guide b { color: #52657d; font-weight: 720; }
.plk-library-upload-status { display: grid; gap: 5px; padding: 8px 14px 7px; border-bottom: 1px solid #cfe0f5; background: linear-gradient(90deg,#f3f8ff,#f5fbfa); color: #38516d; box-shadow: inset 3px 0 0 var(--plk-blue); }
.plk-library-upload-status[hidden], .plk-library-dropzone[hidden] { display: none !important; }
.plk-library-upload-status.is-complete { border-color: #c9e8dc; background: linear-gradient(90deg,#effbf6,#f6fcfa); color: #146b52; box-shadow: inset 3px 0 0 #0e9f6e; }
.plk-library-upload-status.is-error { border-color: #f4d0ce; background: linear-gradient(90deg,#fff4f3,#fff9f7); color: #a6342e; box-shadow: inset 3px 0 0 #e5484d; }
.plk-library-upload-copy { display: flex; min-width: 0; align-items: center; justify-content: space-between; gap: 12px; font-size: 8.5px; font-weight: 650; }
.plk-library-upload-copy span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.plk-library-upload-copy strong { color: currentColor; font-size: 7.5px; font-variant-numeric: tabular-nums; white-space: nowrap; }
.plk-library-upload-track { height: 3px; overflow: hidden; border-radius: 999px; background: rgba(49,86,216,.12); }
.plk-library-upload-track i { display: block; width: 0; height: 100%; border-radius: inherit; background: linear-gradient(90deg,var(--plk-blue),var(--plk-munsell)); box-shadow: 0 0 9px color-mix(in srgb,var(--plk-blue) 36%,transparent); transition: width .2s ease; }
.plk-library-upload-status.is-complete .plk-library-upload-track i { background: linear-gradient(90deg,#0e9f6e,#38c996); }
.plk-library-upload-status.is-error .plk-library-upload-track i { background: linear-gradient(90deg,#e5484d,#f07c61); }
.plk-library-content { min-height: 0; flex: 1 1 auto; overflow-y: auto; overscroll-behavior: contain; }
.plk-library-dropzone { position: absolute; z-index: 12; inset: 62px 10px 10px; display: grid; place-items: center; border: 2px dashed color-mix(in srgb,var(--plk-blue) 54%,#b7c8dc); border-radius: 17px; background: color-mix(in srgb,#eef6ff 86%,transparent); box-shadow: inset 0 0 0 5px rgba(255,255,255,.54),0 18px 50px rgba(15,23,42,.12); pointer-events: none; backdrop-filter: blur(4px); animation: plkLibraryDropIn .16s ease both; }
.plk-library-drop-panel { display: grid; width: min(360px,calc(100% - 28px)); place-items: center; gap: 5px; padding: 24px 22px; border: 1px solid rgba(255,255,255,.86); border-radius: 17px; background: rgba(255,255,255,.94); color: #334b66; box-shadow: 0 22px 54px rgba(29,58,91,.18),inset 0 1px 0 #fff; text-align: center; }
.plk-library-drop-icon { display: grid; width: 52px; height: 52px; margin-bottom: 3px; place-items: center; border-radius: 15px; background: linear-gradient(145deg,#e6f2ff,#e5f8f4); color: var(--plk-blue); box-shadow: 0 10px 25px rgba(49,86,216,.14); }
.plk-library-drop-icon svg { width: 25px; height: 25px; }
.plk-library-drop-panel small { color: #73839a; font-size: 8px; font-weight: 760; letter-spacing: .08em; text-transform: uppercase; }
.plk-library-drop-panel strong { max-width: 100%; overflow: hidden; color: #17324f; font-size: 18px; letter-spacing: -.025em; text-overflow: ellipsis; white-space: nowrap; }
.plk-library-drop-panel > span:last-child { color: #6b7b8f; font-size: 9px; line-height: 14px; }
.plk-library-main.is-targeting-folder .plk-library-dropzone { background: color-mix(in srgb,#eef6ff 68%,transparent); }
@keyframes plkLibraryDropIn { from { opacity: 0; transform: scale(.985); } to { opacity: 1; transform: scale(1); } }
.plk-resource-grid { display: grid; grid-template-columns: repeat(auto-fill,minmax(220px,1fr)); gap: 9px; padding: 12px; }
.plk-resource-card { position: relative; display: flex; min-width: 0; min-height: 185px; flex-direction: column; overflow: hidden; border: 1px solid var(--plk-line); border-radius: 9px; background: #fff; box-shadow: 0 1px 3px rgba(15,23,42,.035); }
.plk-resource-card[draggable="true"] { position: relative; }
.plk-resource-card.is-dragging { opacity: .42; transform: scale(.975); }
.plk-library-drag-handle { position: absolute; z-index: 5; top: 9px; right: 9px; display: grid; width: 25px; height: 25px; place-items: center; border: 1px solid rgba(255,255,255,.7); border-radius: 8px; background: rgba(255,255,255,.88); color: #75879c; box-shadow: 0 5px 16px rgba(8,22,42,.16); opacity: .72; pointer-events: none; backdrop-filter: blur(9px); transition: opacity .15s ease, color .15s ease, transform .15s ease; }
.plk-library-drag-handle svg { width: 14px; height: 14px; }
.plk-resource-card[draggable="true"]:hover .plk-library-drag-handle, .plk-resource-card[draggable="true"]:focus-within .plk-library-drag-handle { color: var(--plk-blue); opacity: 1; transform: scale(1.04); }
.plk-resource-card:hover { border-color: #b6cae8; box-shadow: 0 7px 20px rgba(15,23,42,.07); }
.plk-resource-card:focus-visible { border-color: var(--plk-blue); outline: 2px solid color-mix(in srgb,var(--plk-blue) 28%,transparent); outline-offset: 2px; }
.plk-resource-card--folder { cursor: default; user-select: none; }
.plk-resource-card--image { position: relative; min-height: 0; aspect-ratio: 1 / 1; background: #e9eef4; cursor: zoom-in; }
.plk-image-card-open { position: relative; display: block; width: 100%; height: 100%; padding: 0; overflow: hidden; border: 0; border-radius: inherit; background: #e9eef4; color: #fff; cursor: zoom-in; }
.plk-image-card-open img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; transition: filter .18s ease, transform .24s cubic-bezier(.2,.8,.2,1); }
.plk-resource-card--image:hover .plk-image-card-open img, .plk-resource-card--image:focus-within .plk-image-card-open img { filter: saturate(1.03) brightness(.94); transform: scale(1.018); }
.plk-image-view-cue { position: absolute; right: 9px; bottom: 9px; display: inline-flex; align-items: center; gap: 4px; padding: 5px 7px; border: 1px solid rgba(255,255,255,.35); border-radius: 999px; background: rgba(8,20,36,.74); color: #fff; box-shadow: 0 6px 18px rgba(0,0,0,.2); font-size: 7.5px; font-weight: 720; opacity: 0; pointer-events: none; transform: translateY(4px); transition: opacity .16s ease, transform .16s ease; backdrop-filter: blur(9px); }
.plk-image-view-cue svg { width: 11px; height: 11px; }
.plk-resource-card--image:hover .plk-image-view-cue, .plk-resource-card--image:focus-within .plk-image-view-cue { opacity: 1; transform: translateY(0); }
.plk-resource-select-control { position: absolute; z-index: 6; top: 9px; left: 9px; display: grid; width: 25px; height: 25px; place-items: center; border: 1px solid rgba(255,255,255,.72); border-radius: 8px; background: rgba(255,255,255,.9); color: transparent; box-shadow: 0 5px 16px rgba(8,22,42,.18); cursor: pointer; backdrop-filter: blur(10px); transition: background .15s ease, border-color .15s ease, color .15s ease, transform .15s ease; }
.plk-resource-select-control input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.plk-resource-select-control span { display: grid; width: 14px; height: 14px; place-items: center; border: 1.5px solid #8797aa; border-radius: 4px; background: rgba(255,255,255,.9); }
.plk-resource-select-control svg { width: 11px; height: 11px; }
.plk-resource-select-control:hover, .plk-resource-select-control:focus-within { border-color: #fff; background: #fff; transform: scale(1.06); }
.plk-resource-select-control:focus-within { outline: 2px solid color-mix(in srgb,var(--plk-blue) 50%,transparent); outline-offset: 2px; }
.plk-resource-card.is-checked, .plk-resource-card.is-checked:hover { border-color: var(--plk-blue); box-shadow: 0 0 0 3px color-mix(in srgb,var(--plk-blue) 18%,transparent),0 13px 30px rgba(15,23,42,.12); }
.plk-resource-card.is-checked .plk-resource-select-control { border-color: var(--plk-blue); background: var(--plk-blue); color: #fff; }
.plk-resource-card.is-checked .plk-resource-select-control span { border-color: transparent; background: transparent; }
.plk-resource-card--folder > .plk-resource-preview, .plk-resource-card--folder > .plk-resource-card-body { cursor: pointer; }
.plk-resource-card--folder.is-file-drop-target { position: relative; z-index: 20; border-color: var(--plk-blue); background: #f7fbff; box-shadow: 0 0 0 4px color-mix(in srgb,var(--plk-blue) 22%,transparent),0 22px 48px rgba(22,73,126,.2); transform: translateY(-3px) scale(1.025); }
.plk-resource-card--folder.is-file-drop-target .plk-resource-preview { background: radial-gradient(circle at 70% 20%,color-mix(in srgb,var(--plk-blue) 25%,transparent),transparent 44%),linear-gradient(145deg,#f8fbff,#dfeeff); }
.plk-resource-card--folder.is-file-drop-target .plk-resource-preview svg { color: var(--plk-blue); filter: drop-shadow(0 6px 10px color-mix(in srgb,var(--plk-blue) 25%,transparent)); transform: translateY(-4px) scale(1.1); }
.plk-resource-card--folder.is-file-drop-target .plk-folder-open-hint { border-color: color-mix(in srgb,var(--plk-blue) 45%,#fff); background: var(--plk-blue); color: #fff; opacity: 1; transform: translateY(0); }
.plk-resource-card--folder.is-file-drop-target .plk-folder-open-hint > span { display: none; }
.plk-resource-card--folder.is-file-drop-target .plk-folder-open-hint::after { content: "Release to upload here"; }
.plk-resource-card--folder.is-resource-drop-target { position: relative; z-index: 20; border-color: var(--plk-blue); background: #f7fbff; box-shadow: 0 0 0 4px color-mix(in srgb,var(--plk-blue) 22%,transparent),0 22px 48px rgba(22,73,126,.2); transform: translateY(-3px) scale(1.025); }
.plk-resource-card--folder.is-resource-drop-target .plk-resource-preview { background: radial-gradient(circle at 70% 20%,color-mix(in srgb,var(--plk-blue) 25%,transparent),transparent 44%),linear-gradient(145deg,#f8fbff,#dfeeff); }
.plk-resource-card--folder.is-resource-drop-target .plk-resource-preview svg { color: var(--plk-blue); filter: drop-shadow(0 6px 10px color-mix(in srgb,var(--plk-blue) 25%,transparent)); transform: translateY(-4px) scale(1.1); }
.plk-resource-card--folder.is-resource-drop-target .plk-folder-open-hint { border-color: color-mix(in srgb,var(--plk-blue) 45%,#fff); background: var(--plk-blue); color: #fff; opacity: 1; transform: translateY(0); }
.plk-resource-card--folder.is-resource-drop-target .plk-folder-open-hint > span { display: none; }
.plk-resource-card--folder.is-resource-drop-target .plk-folder-open-hint::after { content: "Release to move here"; }
.plk-resource-preview { position: relative; display: flex; height: 88px; align-items: center; justify-content: center; border-bottom: 1px solid #edf0f4; background: linear-gradient(145deg,#f8fafc,#edf3f8); color: #66809d; }
.plk-resource-preview svg { width: 34px; height: 34px; transition: color .15s ease, filter .15s ease, transform .15s ease; }
.plk-resource-card--folder:hover .plk-resource-preview svg, .plk-resource-card--folder.is-selected .plk-resource-preview svg, .plk-resource-card--folder:focus-visible .plk-resource-preview svg { color: var(--plk-blue); filter: drop-shadow(0 5px 8px color-mix(in srgb,var(--plk-blue) 18%,transparent)); transform: translateY(-3px) scale(1.04); }
.plk-folder-open-hint { position: absolute; right: 8px; bottom: 7px; padding: 3px 6px; border: 1px solid color-mix(in srgb,var(--plk-blue) 18%,#d7e1ed); border-radius: 999px; background: rgba(255,255,255,.9); color: color-mix(in srgb,var(--plk-blue) 76%,#31506f); font-size: 7px; font-weight: 720; opacity: 0; pointer-events: none; transform: translateY(3px); transition: opacity .15s ease, transform .15s ease; }
.plk-folder-hint-touch { display: none; }
.plk-resource-card--folder:hover .plk-folder-open-hint, .plk-resource-card--folder.is-selected .plk-folder-open-hint, .plk-resource-card--folder:focus-visible .plk-folder-open-hint { opacity: 1; transform: translateY(0); }
.plk-resource-preview--image img { width: 100%; height: 100%; object-fit: cover; }
.plk-resource-card-body { min-height: 0; padding: 9px 10px; flex: 1 1 auto; }
.plk-resource-title { display: block; width: 100%; padding: 0; overflow: hidden; border: 0; background: transparent; color: var(--plk-ink); cursor: pointer; font-size: 10.5px; font-weight: 700; text-align: left; text-overflow: ellipsis; white-space: nowrap; }
.plk-resource-title:hover { color: var(--plk-blue); }
.plk-resource-meta { display: block; margin-top: 2px; overflow: hidden; color: #98a2b3; font-size: 7.5px; text-overflow: ellipsis; white-space: nowrap; }
.plk-resource-card-body p { display: -webkit-box; margin: 6px 0 0; overflow: hidden; color: var(--plk-muted); font-size: 8px; line-height: 12px; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.plk-library-empty-icon { display: inline-flex; color: #91a4b9; }
.plk-library-empty-icon svg { width: 44px; height: 44px; }
.plk-resource-dialog { width: min(820px,100%); }
.plk-resource-form { display: flex; min-height: 0; flex: 1 1 auto; flex-direction: column; }
.plk-resource-form-body { min-height: 0; padding: 16px; overflow-y: auto; }
.plk-resource-form-body .plk-form-grid { grid-template-columns: minmax(0,1.5fr) minmax(180px,.5fr); }
.plk-resource-file-detail { display: flex; align-items: center; gap: 10px; margin-top: 12px; padding: 14px; border: 1px solid var(--plk-line); border-radius: 8px; background: #f8fafc; }
.plk-resource-file-detail > svg { width: 32px; height: 32px; color: #66809d; }
.plk-resource-file-detail > span { display: grid; min-width: 0; flex: 1 1 auto; }
.plk-resource-file-detail strong { overflow: hidden; font-size: 10.5px; text-overflow: ellipsis; white-space: nowrap; }
.plk-resource-file-detail small { color: var(--plk-muted); font-size: 8px; }
.plk-resource-detail-actions { display: flex; align-items: center; gap: 7px; margin-top: 10px; flex-wrap: wrap; }
.plk-resource-detail-actions .plk-btn { text-decoration: none; }
.plk-resource-image-detail { display: grid; place-items: center; gap: 10px; margin-top: 12px; }
.plk-resource-image-detail img { max-width: 100%; max-height: 440px; border: 1px solid var(--plk-line); border-radius: 9px; object-fit: contain; }

.plk-modal--image-viewer { padding: 12px; background: rgba(3,8,18,.9); backdrop-filter: saturate(110%) blur(16px); }
.plk-modal--image-viewer.is-maximized { padding: 0; }
.plk-image-reader { display: flex; min-width: 0; min-height: 0; flex-direction: column; overflow: hidden; border: 1px solid rgba(255,255,255,.12); border-radius: 20px; background: #07101c; box-shadow: 0 46px 130px rgba(0,0,0,.6); }
.plk-image-reader--library { width: min(1540px,100%); height: min(980px,calc(100vh - 24px)); }
.plk-image-reader--task { width: min(1380px,100%); height: min(900px,calc(100vh - 36px)); }
.plk-image-reader.is-maximized { width: 100vw; height: 100vh; max-width: none; max-height: none; border: 0; border-radius: 0; }
.plk-image-reader-header { display: grid; min-height: 68px; grid-template-columns: minmax(170px,1fr) auto 36px; align-items: center; gap: 12px; padding: 10px 13px 10px 17px; border-bottom: 1px solid rgba(255,255,255,.1); background: linear-gradient(180deg,#111d2c,#0c1725); color: #fff; }
.plk-image-reader-title { display: grid; min-width: 0; gap: 2px; }
.plk-image-reader-title small { color: #91a3b8; font-size: 7.5px; font-weight: 760; letter-spacing: .1em; text-transform: uppercase; }
.plk-image-reader-title strong { overflow: hidden; color: #f8fbff; font-size: 13px; font-weight: 720; text-overflow: ellipsis; white-space: nowrap; }
.plk-image-reader-header > .plk-icon-btn { border-color: rgba(255,255,255,.13); background: rgba(255,255,255,.07); color: #dce6f2; }
.plk-image-reader-header > .plk-icon-btn:hover { border-color: rgba(255,255,255,.28); background: rgba(255,255,255,.13); color: #fff; }
.plk-image-reader-tools, .plk-image-reader-gallery-controls, .plk-image-reader-zoom { display: flex; align-items: center; }
.plk-image-reader-tools { justify-content: flex-end; gap: 7px; }
.plk-image-reader-gallery-controls, .plk-image-reader-zoom { gap: 2px; padding: 3px; border: 1px solid rgba(255,255,255,.1); border-radius: 9px; background: rgba(255,255,255,.045); }
.plk-image-reader-tool { display: grid; width: 29px; height: 29px; place-items: center; padding: 0; border: 0; border-radius: 6px; background: transparent; color: #c9d6e5; cursor: pointer; }
.plk-image-reader-tool svg { width: 17px; height: 17px; }
.plk-image-reader-tool:hover:not(:disabled), .plk-image-reader-tool:focus-visible:not(:disabled) { background: rgba(255,255,255,.11); color: #fff; outline: 2px solid rgba(125,179,255,.42); }
.plk-image-reader-tool:disabled { cursor: default; opacity: .25; }
.plk-image-viewer-counter { min-width: 52px; padding: 4px 7px; color: #b9c8d9; font-size: 8px; font-weight: 700; text-align: center; white-space: nowrap; }
.plk-image-reader-zoom select { width: 126px; height: 29px; padding: 3px 24px 3px 8px; border: 0; border-radius: 6px; background: #152234; color: #e7eef7; cursor: pointer; font-size: 8.5px; font-weight: 700; outline: 0; }
.plk-image-reader-zoom select:focus-visible { box-shadow: 0 0 0 2px rgba(125,179,255,.5); }
.plk-image-reader-maximize { display: inline-flex; min-height: 35px; align-items: center; gap: 5px; padding: 5px 9px; border: 1px solid rgba(255,255,255,.11); border-radius: 9px; background: rgba(255,255,255,.045); color: #cbd8e7; cursor: pointer; font-size: 8px; font-weight: 720; }
.plk-image-reader-maximize svg { width: 16px; height: 16px; }
.plk-image-reader-maximize:hover, .plk-image-reader-maximize:focus-visible, .plk-image-reader-maximize[aria-pressed="true"] { border-color: rgba(125,179,255,.45); background: rgba(85,145,225,.16); color: #fff; outline: 0; }
.plk-image-reader-viewport { position: relative; min-width: 0; min-height: 0; flex: 1 1 auto; overflow: auto; overscroll-behavior: contain; background: radial-gradient(circle at 50% 28%,#172638 0%,#0b1522 48%,#060d17 100%); scrollbar-color: #53677e #0b1522; scrollbar-width: thin; }
.plk-image-reader-viewport:focus-visible { outline: 2px solid rgba(125,179,255,.55); outline-offset: -2px; }
.plk-image-reader-canvas { display: flex; box-sizing: border-box; width: 100%; min-width: 100%; min-height: 100%; align-items: flex-start; justify-content: center; margin: 0; padding: 22px; }
.plk-image-reader-canvas img { display: block; flex: 0 0 auto; border-radius: 5px; background: #fff; object-fit: contain; box-shadow: 0 25px 70px rgba(0,0,0,.44),0 0 0 1px rgba(255,255,255,.07); }
.plk-image-reader[data-image-zoom="fit"] .plk-image-reader-canvas { height: 100%; align-items: center; overflow: hidden; }
.plk-image-reader:not([data-image-zoom="fit"]) .plk-image-reader-canvas img { margin: 0 auto; }
.plk-image-reader-footer { display: flex; min-height: 58px; align-items: center; justify-content: space-between; gap: 16px; padding: 9px 17px; border-top: 1px solid rgba(255,255,255,.1); background: linear-gradient(180deg,#0c1725,#101b29); color: #98a9bd; }
.plk-image-reader-footer > span:first-child { display: grid; min-width: 0; gap: 2px; }
.plk-image-reader-footer strong { overflow: hidden; color: #f4f8fc; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.plk-image-reader-footer small, .plk-image-reader-footer > span:last-child, .plk-image-reader-footer em { color: #8799ae; font-size: 7.75px; font-style: normal; }
.plk-image-reader-footer-actions { display: flex; align-items: center; justify-content: flex-end; gap: 9px; }
.plk-image-reader-footer-actions em { white-space: nowrap; }
.plk-image-reader-footer-actions .plk-btn { border-color: rgba(255,255,255,.16); background: rgba(255,255,255,.07); color: #dce7f3; }
.plk-image-reader-footer-actions .plk-btn:hover { border-color: rgba(255,255,255,.34); background: rgba(255,255,255,.14); color: #fff; }

.plk-view-switch { display: flex; gap: 2px; padding: 3px; border-radius: 8px; background: #edf1f5; }
.plk-view-switch button { min-height: 28px; padding: 3px 7px; border: 0; border-radius: 6px; background: transparent; color: var(--plk-muted); cursor: pointer; font-size: 9px; font-weight: 680; }
.plk-view-switch button[aria-pressed="true"] { background: #fff; color: var(--plk-blue); box-shadow: 0 1px 3px rgba(15,23,42,.12); }

.plk-data-view { width: calc(100% - 32px); max-width: 1600px; margin: 0 auto; overflow: hidden; border: 1px solid var(--plk-board-line, var(--plk-line)); border-radius: 11px; background: color-mix(in srgb, var(--plk-card-background, #fff) 97%, transparent); color: var(--plk-board-ink, var(--plk-ink)); box-shadow: 0 8px 26px rgba(15,23,42,.055); }
.plk-data-view-heading { display: flex; min-height: 50px; align-items: center; justify-content: space-between; gap: 8px; padding: 9px 13px; border-bottom: 1px solid var(--plk-board-line, var(--plk-line)); background: color-mix(in srgb, var(--plk-card-background, #fff) 88%, transparent); }
.plk-data-view-heading strong { color: var(--plk-board-ink, var(--plk-ink)); font-size: 12.5px; }
.plk-data-view-heading span { color: var(--plk-board-muted, var(--plk-muted)); font-size: 9px; }
.plk-data-view-title { display: grid; gap: 1px; }
.plk-table-wrap { overflow: auto; }
.plk-task-table { width: 100%; min-width: 920px; border-collapse: collapse; }
.plk-task-table th { padding: 9px 11px; border-bottom: 1px solid var(--plk-board-line, var(--plk-line)); background: var(--plk-board-soft, #f8fafc); color: var(--plk-board-muted, var(--plk-muted)); font-size: 8.5px; letter-spacing: .065em; text-align: left; text-transform: uppercase; }
.plk-task-table td { padding: 9px 11px; border-bottom: 1px solid var(--plk-board-line, #edf0f4); color: var(--plk-board-muted, #475467); font-size: 10px; }
.plk-task-table tr:last-child td { border-bottom: 0; }
.plk-task-table tbody tr { transition: background-color .12s ease; }
.plk-task-table tbody tr:hover { background: color-mix(in srgb, var(--plk-blue) 7%, var(--plk-card-background, #fff)); }
.plk-task-table td:first-child button { display: grid; width: 100%; padding: 0; border: 0; background: transparent; cursor: pointer; text-align: left; }
.plk-task-table td:first-child span { color: var(--plk-board-muted, #98a2b3); font-size: 8px; }
.plk-task-table td:first-child strong { color: var(--plk-board-ink, var(--plk-ink)); font-size: 11px; }
.plk-task-table td:first-child button:hover strong { color: var(--plk-blue); }
.plk-task-table .is-overdue { color: var(--plk-danger); font-weight: 700; }
.plk-table-empty { height: 180px; color: var(--plk-board-muted, var(--plk-muted)); text-align: center; }
.plk-stage-pill { display: inline-flex; align-items: center; gap: 5px; white-space: nowrap; }
.plk-stage-pill::before { width: 6px; height: 6px; border-radius: 50%; background: var(--stage-color); content: ""; }

.plk-calendar-weekdays, .plk-calendar-grid { display: grid; grid-template-columns: repeat(7, minmax(110px,1fr)); }
.plk-calendar-heading { display: grid; grid-template-columns: 84px minmax(0,1fr) 124px; }
.plk-calendar-title { display: grid; justify-items: center; line-height: 1.2; }
.plk-calendar-actions { display: flex; justify-content: flex-end; gap: 5px; }
.plk-calendar-weekdays { min-width: 770px; border-bottom: 1px solid var(--plk-board-line, var(--plk-line)); background: var(--plk-board-soft, #f8fafc); }
.plk-calendar-weekdays span { padding: 7px; color: var(--plk-board-muted, var(--plk-muted)); font-size: 8px; font-weight: 720; text-align: center; text-transform: uppercase; }
.plk-calendar-grid { min-width: 770px; }
.plk-calendar-day { min-height: 118px; padding: 7px; border-right: 1px solid var(--plk-board-line, #edf0f4); border-bottom: 1px solid var(--plk-board-line, #edf0f4); background: color-mix(in srgb, var(--plk-card-background, #fff) 95%, transparent); }
.plk-calendar-day > strong { display: flex; min-height: 22px; align-items: center; justify-content: space-between; gap: 5px; margin-bottom: 5px; color: var(--plk-board-muted, var(--plk-muted)); font-size: 9px; }
.plk-calendar-day > strong > span { display: inline-flex; width: 22px; height: 22px; align-items: center; justify-content: center; border-radius: 50%; }
.plk-calendar-day > strong small { color: var(--plk-blue); font-size: 7px; font-weight: 720; text-transform: uppercase; }
.plk-calendar-day.is-today { box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--plk-blue) 45%, transparent); }
.plk-calendar-day.is-today > strong > span { background: var(--plk-blue); color: #fff; }
.plk-calendar-day > div { display: grid; gap: 3px; }
.plk-calendar-day button { width: 100%; padding: 4px 6px; overflow: hidden; border: 0; border-left: 3px solid var(--event-color, var(--plk-blue)); border-radius: 5px; background: color-mix(in srgb, var(--event-color, var(--plk-blue)) 12%, var(--plk-card-background, #fff)); color: var(--plk-board-ink, #344054); cursor: pointer; font-size: 8.5px; font-weight: 620; text-align: left; text-overflow: ellipsis; transition: filter .12s ease, transform .12s ease; white-space: nowrap; }
.plk-calendar-day button:hover, .plk-calendar-day button:focus { filter: brightness(.97); outline: none; transform: translateX(1px); }
.plk-calendar-day button.is-overdue { border-left-color: var(--plk-danger); background: #fff1f0; color: var(--plk-danger); }
.plk-calendar-day button.plk-calendar-more { border-left-color: var(--plk-board-line, #cbd4df); background: var(--plk-board-soft, #f5f7fa); color: var(--plk-board-muted, var(--plk-muted)); font-weight: 700; text-align: center; }
.plk-calendar-day.is-empty { background: color-mix(in srgb, var(--plk-board-soft, #fafbfc) 78%, transparent); }
.plk-calendar-view { overflow-x: auto; }

.plk-timeline-scale { display: grid; grid-template-columns: minmax(210px,30%) minmax(400px,1fr); align-items: center; gap: 12px; padding: 7px 12px; border-bottom: 1px solid var(--plk-board-line, var(--plk-line)); background: var(--plk-board-soft, #f8fafc); color: var(--plk-board-muted, var(--plk-muted)); font-size: 8px; }
.plk-timeline-scale > div { display: flex; justify-content: space-between; }
.plk-timeline-scale-spacer { font-weight: 720; letter-spacing: .06em; text-transform: uppercase; }
.plk-timeline-rows { display: grid; }
.plk-timeline-row { display: grid; min-height: 50px; grid-template-columns: minmax(210px,30%) minmax(400px,1fr); align-items: center; gap: 12px; padding: 6px 12px; border-bottom: 1px solid var(--plk-board-line, #edf0f4); transition: background-color .12s ease; }
.plk-timeline-row:hover { background: color-mix(in srgb, var(--plk-blue) 5%, var(--plk-card-background, #fff)); }
.plk-timeline-row > button { display: grid; min-width: 0; grid-template-columns: auto auto minmax(0,1fr); align-items: center; column-gap: 5px; padding: 1px 2px; overflow: hidden; border: 0; border-radius: 5px; background: transparent; color: var(--plk-board-ink, var(--plk-ink)); cursor: pointer; text-align: left; }
.plk-timeline-row > button > span { color: var(--plk-board-muted, #98a2b3); font-size: 8px; }
.plk-timeline-row > button > i { width: 7px; height: 7px; border-radius: 50%; background: var(--stage-color); box-shadow: 0 0 0 3px color-mix(in srgb, var(--stage-color) 14%, transparent); }
.plk-timeline-row > button > strong { min-width: 0; overflow: hidden; font-size: 10.5px; font-weight: 680; text-overflow: ellipsis; white-space: nowrap; }
.plk-timeline-row > button > small { grid-column: 3; color: var(--plk-board-muted, var(--plk-muted)); font-size: 8px; }
.plk-timeline-row > button:hover strong, .plk-timeline-row > button:focus strong { color: var(--plk-blue); }
.plk-timeline-row > button:focus { outline: 2px solid color-mix(in srgb, var(--plk-blue) 24%, transparent); outline-offset: 1px; }
.plk-timeline-track { position: relative; height: 25px; border-radius: 6px; background: repeating-linear-gradient(90deg,var(--plk-board-line, #f1f4f7) 0,var(--plk-board-line, #f1f4f7) 1px,transparent 1px,transparent 25%); }
.plk-timeline-track > .plk-timeline-bar { position: absolute; top: 5px; z-index: 2; height: 15px; min-width: 6px; border-radius: 999px; background: var(--stage-color); box-shadow: 0 3px 8px color-mix(in srgb,var(--stage-color) 32%,transparent); }
.plk-timeline-today { position: absolute; top: 0; bottom: 0; z-index: 1; width: 2px; background: color-mix(in srgb, var(--plk-danger) 70%, transparent); }
.plk-timeline-today::before { position: absolute; top: -3px; left: 50%; width: 6px; height: 6px; border-radius: 50%; background: var(--plk-danger); content: ""; transform: translateX(-50%); }

.plk-board-theme-dark .plk-priority { background: var(--plk-board-soft); color: var(--plk-board-muted); }
.plk-board-theme-dark .plk-avatar { border-color: var(--plk-card-background); background: var(--plk-board-soft); color: var(--plk-board-ink); }
.plk-board-theme-dark .plk-data-view .plk-btn { border-color: var(--plk-board-line); background: var(--plk-board-soft); color: var(--plk-board-ink); }
.plk-board-theme-dark .plk-data-view .plk-btn:hover, .plk-board-theme-dark .plk-data-view .plk-btn:focus { color: var(--plk-blue); }
.plk-board-theme-dark .plk-calendar-day button.is-overdue { background: color-mix(in srgb, var(--plk-danger) 18%, var(--plk-card-background)); }

.plk-form-grid--three { grid-template-columns: repeat(3,minmax(0,1fr)); }
.plk-task-pin { margin: 8px 0; }
.plk-side-heading--spaced { margin-top: 18px; padding-top: 12px; border-top: 1px solid var(--plk-line); }
.plk-dependency-picker { display: grid; max-height: 220px; gap: 3px; overflow-y: auto; }
.plk-dependency-option { display: grid; grid-template-columns: 14px 28px minmax(0,1fr); align-items: center; gap: 5px; padding: 5px; border-radius: 5px; font-size: 8px; cursor: pointer; }
.plk-dependency-option:hover { background: #fff; }
.plk-dependency-option span { color: #98a2b3; }
.plk-dependency-option strong { overflow: hidden; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.plk-task-section { margin-top: 11px; border: 1px solid var(--plk-line); border-radius: 8px; background: #fbfcfd; }
.plk-task-section summary { display: flex; min-height: 36px; align-items: center; gap: 6px; padding: 7px 9px; color: var(--plk-ink); cursor: pointer; font-size: 10.5px; font-weight: 700; list-style-position: inside; }
.plk-task-section summary span { margin-left: auto; color: var(--plk-muted); font-size: 8px; }
.plk-task-section-body { padding: 9px; border-top: 1px solid var(--plk-line); background: #fff; }
.plk-inline-compose { display: flex; align-items: center; gap: 6px; margin-top: 7px; }
.plk-inline-compose > input, .plk-time-actions input { min-width: 0; min-height: 31px; flex: 1 1 auto; margin: 0; padding: 4px 7px; border: 1px solid var(--plk-line); border-radius: 6px; font-size: 9px; }
.plk-compact-list { display: grid; gap: 4px; }
.plk-compact-list > button, .plk-compact-list > div { display: flex; min-height: 32px; align-items: center; gap: 7px; width: 100%; padding: 5px 7px; border: 1px solid #edf0f4; border-radius: 6px; background: #fbfcfd; color: var(--plk-ink); font-size: 9px; text-align: left; }
.plk-compact-list > button { cursor: pointer; }
.plk-compact-list strong { min-width: 0; overflow: hidden; flex: 1 1 auto; text-overflow: ellipsis; white-space: nowrap; }
.plk-compact-list small { color: var(--plk-muted); font-size: 8px; }
.plk-status-dot { width: 7px; height: 7px; border: 1px solid #98a2b3; border-radius: 50%; }
.plk-status-dot.is-done { border-color: var(--plk-success); background: var(--plk-success); }
.plk-file-list > div { justify-content: space-between; }
.plk-file-list a { display: flex; min-width: 0; align-items: center; gap: 6px; flex: 1 1 auto; color: var(--plk-ink); text-decoration: none; }
.plk-file-list svg { width: 13px; height: 13px; }
.plk-file-list button, .plk-time-entry button { padding: 2px; border: 0; background: transparent; color: var(--plk-danger); cursor: pointer; }
.plk-time-actions { display: flex; align-items: center; gap: 5px; margin-bottom: 7px; flex-wrap: wrap; }
.plk-time-actions input { flex: 1 1 110px; }
.plk-time-entry > span { display: grid; flex: 1 1 auto; }
.plk-activity-list { display: grid; gap: 6px; }
.plk-activity-list > div { display: grid; grid-template-columns: 25px minmax(0,1fr); gap: 7px; }
.plk-activity-list .plk-avatar { width: 24px; height: 24px; margin: 0; }
.plk-activity-list p { margin: 0; color: #475467; font-size: 9.5px; line-height: 14px; }
.plk-activity-list p small { display: block; color: var(--plk-muted); font-size: 7.5px; }

.plk-settings-stack, .plk-settings-body { display: grid; gap: 10px; }
.plk-custom-fields-editor, .plk-webhooks-editor, .plk-member-list, .plk-archive-list { display: grid; gap: 5px; }
.plk-custom-field-row { display: grid; grid-template-columns: minmax(130px,1fr) 120px minmax(160px,1fr) 28px; gap: 6px; }
.plk-webhook-row { display: grid; grid-template-columns: minmax(210px,1.2fr) minmax(200px,1fr) 80px 28px; align-items: center; gap: 6px; }
.plk-custom-field-row input, .plk-custom-field-row select, .plk-webhook-row input, .plk-member-row select, .plk-add-member-form input, .plk-add-member-form select { width: 100%; min-height: 31px; margin: 0; padding: 4px 7px; border: 1px solid var(--plk-line); border-radius: 6px; background: #fff; font-size: 9px; }
.plk-member-row { display: grid; grid-template-columns: 29px minmax(160px,1fr) 110px 66px; align-items: center; gap: 7px; padding: 6px; border: 1px solid var(--plk-line); border-radius: 7px; background: #fbfcfd; }
.plk-member-row > .plk-avatar { width: 28px; height: 28px; margin: 0; }
.plk-member-row > span:nth-child(2) { display: grid; min-width: 0; }
.plk-member-row strong, .plk-member-row small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.plk-member-row strong { font-size: 10px; }
.plk-member-row small { color: var(--plk-muted); font-size: 8px; }
.plk-owner-label { color: var(--plk-forest); font-size: 8px; font-weight: 720; text-align: center; }
.plk-add-member-form { display: grid; grid-template-columns: minmax(180px,1fr) 120px auto; gap: 6px; margin-top: 8px; }
.plk-add-existing-member-form { align-items: end; margin-top: 12px; }
.plk-member-search-field { position: relative; display: grid; gap: 5px; min-width: 0; }
.plk-member-search-field > label, .plk-member-role-field > span { color: #475467; font-size: 9px; font-weight: 680; }
.plk-member-search-input { display: flex; min-height: 34px; align-items: center; gap: 6px; padding: 0 8px; border: 1px solid var(--plk-line); border-radius: 7px; background: #fff; }
.plk-member-search-input:focus-within { border-color: var(--plk-blue); box-shadow: 0 0 0 2px rgba(0,107,255,.1); }
.plk-member-search-input svg { width: 14px; height: 14px; flex: 0 0 14px; color: #98a2b3; }
.plk-member-search-input input { min-height: 30px !important; padding: 4px 0 !important; border: 0 !important; outline: 0 !important; box-shadow: none !important; }
.plk-member-role-field { display: grid; gap: 5px; }
.plk-member-results { position: absolute; top: calc(100% + 4px); right: 0; left: 0; z-index: 40; max-height: 260px; padding: 4px; overflow-y: auto; border: 1px solid #d5dde7; border-radius: 9px; background: #fff; box-shadow: 0 16px 36px rgba(15,23,42,.16); }
.plk-member-results[hidden], .plk-member-selection[hidden] { display: none !important; }
.plk-member-result { display: grid; width: 100%; min-height: 48px; grid-template-columns: 32px minmax(0,1fr) auto; align-items: center; gap: 8px; padding: 7px; border: 0; border-radius: 7px; background: #fff; color: var(--plk-ink); cursor: pointer; text-align: left; }
.plk-member-result:hover, .plk-member-result:focus { background: #f1f6ff; outline: none; }
.plk-member-result .plk-avatar, .plk-member-selection .plk-avatar { width: 31px; height: 31px; margin: 0; flex-basis: 31px; }
.plk-member-result > span:nth-child(2), .plk-member-selection > span:nth-child(2) { display: grid; min-width: 0; }
.plk-member-result strong, .plk-member-result small, .plk-member-selection strong, .plk-member-selection small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.plk-member-result strong, .plk-member-selection strong { font-size: 9.5px; }
.plk-member-result small, .plk-member-selection small { color: var(--plk-muted); font-size: 8px; }
.plk-member-result b { color: var(--plk-blue); font-size: 8px; }
.plk-member-result-status { padding: 12px 8px; color: var(--plk-muted); font-size: 9px; text-align: center; }
.plk-member-result-status.is-error { color: var(--plk-danger); }
.plk-member-selection { display: grid; min-height: 43px; grid-template-columns: 31px minmax(0,1fr) auto; align-items: center; gap: 8px; margin-top: 2px; padding: 6px; border: 1px solid #b7e4dc; border-radius: 7px; background: #effaf7; }
.plk-member-selection b { color: var(--plk-forest); font-size: 8px; }
.plk-member-divider { display: flex; align-items: center; gap: 9px; margin: 13px 0 2px; color: #98a2b3; font-size: 8px; }
.plk-member-divider::before, .plk-member-divider::after { height: 1px; flex: 1 1 auto; background: var(--plk-line); content: ""; }
.plk-member-divider span { white-space: nowrap; }
.plk-invite-help { margin: 6px 0 0 !important; color: var(--plk-muted); font-size: 8.5px !important; line-height: 13px !important; }
.plk-invite-link-result { display: grid; grid-template-columns: minmax(145px,.65fr) minmax(240px,1.35fr) auto; align-items: center; gap: 7px; margin-top: 8px; padding: 9px; border: 1px solid color-mix(in srgb, var(--plk-forest) 35%, var(--plk-line)); border-radius: 8px; background: color-mix(in srgb, var(--plk-forest) 7%, #fff); }
.plk-invite-link-result[hidden] { display: none; }
.plk-invite-link-result > div { display: grid; gap: 1px; }
.plk-invite-link-result strong { color: var(--plk-ink); font-size: 9.5px; }
.plk-invite-link-result span { color: var(--plk-muted); font-size: 8px; }
.plk-invite-link-result input { width: 100%; min-height: 31px; margin: 0; padding: 4px 7px; border: 1px solid var(--plk-line); border-radius: 6px; background: #fff; color: var(--plk-ink); font-family: ui-monospace,SFMono-Regular,Menlo,monospace; font-size: 8.5px; }
.plk-board-tools { display: flex; gap: 6px; flex-wrap: wrap; }
.plk-archives { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.plk-archives h4 { margin: 0 0 6px; font-size: 10px; }
.plk-archive-list > div { display: flex; align-items: center; gap: 5px; padding: 6px; border: 1px solid var(--plk-line); border-radius: 6px; }
.plk-archive-list > div > span { display: grid; min-width: 0; flex: 1 1 auto; }
.plk-archive-list strong, .plk-archive-list small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.plk-archive-list strong { font-size: 9.5px; }
.plk-archive-list small { color: var(--plk-muted); font-size: 8px; }

.plk-archive-dialog { width: min(1180px,calc(100vw - 28px)); height: min(830px,calc(100vh - 28px)); max-height: none; }
.plk-archive-browser-body { min-height: 0; flex: 1 1 auto; padding: 16px; overflow-y: auto; background: #f3f6fa; }
.plk-archive-browser-intro { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 12px; padding: 12px 14px; border: 1px solid #d9e5f4; border-radius: 12px; background: linear-gradient(135deg,#fff,#f3f8ff); box-shadow: 0 5px 16px rgba(15,23,42,.05); }
.plk-archive-browser-intro > div { display: flex; min-width: 0; align-items: center; gap: 10px; }
.plk-archive-browser-intro > div > span { display: grid; width: 38px; height: 38px; flex: 0 0 auto; place-items: center; border-radius: 10px; background: #e5effd; color: #2e6ab9; }
.plk-archive-browser-intro svg { width: 19px; height: 19px; }
.plk-archive-browser-intro > div > div { display: grid; min-width: 0; gap: 2px; }
.plk-archive-browser-intro strong { color: #24364d; font-size: 11px; }
.plk-archive-browser-intro small { color: #6f7d90; font-size: 8.5px; }
.plk-archive-browser-intro > b { flex: 0 0 auto; padding: 5px 8px; border-radius: 999px; background: #eaf2fd; color: #37679f; font-size: 8px; }
.plk-archive-browser-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.plk-archive-group { min-width: 0; padding: 13px; border: 1px solid #dce4ee; border-radius: 12px; background: #fff; box-shadow: 0 6px 18px rgba(15,23,42,.045); }
.plk-archive-group--tasks { grid-column: 1 / -1; }
.plk-archive-group > header { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 9px; padding-bottom: 8px; border-bottom: 1px solid #e7ecf2; }
.plk-archive-group > header > div { display: grid; gap: 1px; }
.plk-archive-group > header span { color: #7c899b; font-size: 7px; font-weight: 760; letter-spacing: .1em; text-transform: uppercase; }
.plk-archive-group > header h3 { margin: 0; color: #25364c; font-size: 12px; }
.plk-archive-group > header b { display: grid; min-width: 24px; height: 24px; place-items: center; border-radius: 999px; background: #edf3fa; color: #58708e; font-size: 8px; }
.plk-archive-items { display: grid; gap: 7px; }
.plk-archive-item { display: grid; grid-template-columns: 34px minmax(160px,1fr) minmax(145px,190px) auto auto; align-items: center; gap: 8px; padding: 8px; border: 1px solid #e0e7ef; border-radius: 9px; background: #fbfcfe; }
.plk-archive-item--compact { grid-template-columns: 34px minmax(0,1fr) auto; }
.plk-archive-item-icon { display: grid; width: 32px; height: 32px; place-items: center; border-radius: 8px; background: #edf4fd; color: #3d72b3; }
.plk-archive-item-icon svg { width: 16px; height: 16px; }
.plk-archive-item > div { display: grid; min-width: 0; gap: 2px; }
.plk-archive-item strong, .plk-archive-item small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.plk-archive-item strong { color: #2c3c51; font-size: 9.5px; }
.plk-archive-item small { color: #7d8999; font-size: 7.5px; }
.plk-archive-item label { display: grid; min-width: 0; gap: 2px; }
.plk-archive-item label span { color: #7b8797; font-size: 7px; font-weight: 700; }
.plk-archive-item select { width: 100%; min-height: 30px; margin: 0; padding: 4px 24px 4px 7px; border: 1px solid #d5deea; border-radius: 7px; background-color: #fff; color: #34465c; font-size: 8px; }
.plk-archive-empty { display: grid; min-height: 104px; place-items: center; align-content: center; gap: 3px; border: 1px dashed #d7e0eb; border-radius: 9px; background: #fafbfd; color: #7b8899; text-align: center; }
.plk-archive-empty svg { width: 19px; height: 19px; color: #6b9bd5; }
.plk-archive-empty strong { color: #55677d; font-size: 9px; }
.plk-archive-empty small { font-size: 7.5px; }

@media (max-width: 782px) {
    .plk-archive-dialog { width: 100%; height: 96vh; max-height: 96vh; }
    .plk-archive-browser-body { padding: 10px; }
    .plk-archive-browser-intro { align-items: flex-start; }
    .plk-archive-browser-intro > b { display: none; }
    .plk-archive-browser-grid { grid-template-columns: minmax(0,1fr); }
    .plk-archive-group--tasks { grid-column: 1; }
    .plk-archive-item { grid-template-columns: 32px minmax(0,1fr) auto; }
    .plk-archive-item label { grid-column: 2 / -1; grid-row: 2; }
    .plk-archive-item > .plk-danger-text { grid-column: 3; }
    .plk-archive-item--compact { grid-template-columns: 32px minmax(0,1fr) auto; }
}

.plk-report-dialog { width: min(1050px,100%); }
.plk-report-body { padding: 14px; overflow-y: auto; background: #f5f7fa; }
.plk-report-stats { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 7px; }
.plk-report-stats > div { position: relative; display: grid; overflow: hidden; padding: 13px 12px 11px; border: 1px solid var(--plk-line); border-radius: 9px; background: #fff; }
.plk-report-stats > div::before { position: absolute; inset: 0 0 auto; height: 3px; background: linear-gradient(90deg,var(--plk-blue),var(--plk-munsell)); content: ""; }
.plk-report-stats strong { font-size: 19px; }
.plk-report-stats span { color: var(--plk-muted); font-size: 8px; }
.plk-report-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; margin-top: 9px; }
.plk-report-grid > section { padding: 12px; border: 1px solid var(--plk-line); border-radius: 8px; background: #fff; }
.plk-report-grid h3 { margin: 0 0 9px; font-size: 11px; }
.plk-report-activity { grid-column: 1/-1; }
.plk-report-activity .plk-activity-list { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px 20px; }
.plk-report-activity .plk-activity-list > div { padding: 5px 6px; border-radius: 7px; }
.plk-report-activity .plk-activity-list > div:hover { background: #f7f9fc; }
.plk-report-bars { display: grid; gap: 7px; }
.plk-report-bars > div { display: grid; grid-template-columns: 120px minmax(0,1fr) 30px; align-items: center; gap: 7px; font-size: 9px; }
.plk-report-bars i { height: 8px; overflow: hidden; border-radius: 999px; background: #edf1f5; }
.plk-report-bars b { display: block; height: 100%; border-radius: inherit; background: var(--bar-color); }
.plk-priority-report { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 6px; }
.plk-priority-report > div { display: flex; align-items: center; justify-content: space-between; padding: 7px; border: 1px solid var(--plk-line); border-radius: 6px; }
.plk-notifications-dialog { width: min(620px,100%); }
.plk-notifications-body { min-height: 220px; overflow-y: auto; }
.plk-notifications-empty { min-height: 220px; grid-template-columns: minmax(0,1fr); justify-items: center; row-gap: 0; }
.plk-empty-state-icon { display: inline-flex; width: 48px; height: 48px; align-items: center; justify-content: center; margin-bottom: 12px; border-radius: 50%; background: #eaf8f3; color: var(--plk-success); box-shadow: 0 0 0 8px #f4fbf8; }
.plk-empty-state-icon svg { width: 25px; height: 25px; }
.plk-notification-item { display: grid; grid-template-columns: 28px minmax(0,1fr); gap: 8px; width: 100%; padding: 10px 13px; border: 0; border-bottom: 1px solid var(--plk-line); background: #fff; cursor: pointer; text-align: left; }
.plk-notification-item.is-unread { background: #f1f6ff; }
.plk-notification-item > span:first-child { display: inline-flex; width: 27px; height: 27px; align-items: center; justify-content: center; border-radius: 50%; background: #e8f1ff; color: var(--plk-blue); }
.plk-notification-item svg { width: 14px; height: 14px; }
.plk-notification-item > span:last-child { display: grid; }
.plk-notification-item strong { font-size: 10.5px; }
.plk-notification-item small { color: #475467; font-size: 9px; }
.plk-notification-item time { color: var(--plk-muted); font-size: 7.5px; }

@media (max-width: 1080px) {
    .plk-brand { min-width: 180px; }
    .plk-explorer-header { align-items: flex-start; flex-wrap: wrap; }
    .plk-explorer-filters { order: 3; width: 100%; }
    .plk-explorer-row { grid-template-columns: minmax(260px, 1fr) 100px 105px minmax(165px, .5fr); }
    .plk-explorer-label-cell { display: none; }
    .plk-stage-setting { grid-template-columns: 20px minmax(140px, 1fr) 40px 92px 70px 54px 28px; }
    .plk-stage-setting-count { display: none; }
    .plk-view-switch button { padding-inline: 5px; }
    .plk-custom-field-row { grid-template-columns: minmax(120px,1fr) 105px minmax(130px,1fr) 28px; }
    .plk-webhook-row { grid-template-columns: minmax(180px,1fr) minmax(160px,1fr) 72px 28px; }
}

@media (max-width: 782px) {
    #pure-lab-kanban-app { min-height: calc(100vh - 46px); }
    .plk-app { min-height: calc(100vh - 46px); }
    .plk-appbar { top: 46px; height: auto; min-height: 58px; flex-wrap: wrap; gap: 7px; padding: 8px 10px; }
    .plk-brand { min-width: 0; flex: 1 1 auto; }
    .plk-brand img { width: 30px; height: 30px; }
    .plk-brand small, .plk-version, .plk-appbar-actions .plk-btn span { display: none; }
    .plk-appbar-actions .plk-btn { width: 34px; padding: 6px; }
    .plk-board-switcher { order: 3; width: 100%; max-width: none; flex-basis: 100%; }
    .plk-pagebar { position: relative; top: 0; min-height: 58px; padding: 8px 10px; }
    .plk-pagebar-copy { max-width: calc(100% - 120px); }
    .plk-title-line { flex-wrap: wrap; }
    .plk-pagebar p, .plk-board-stat { display: none; }
    .plk-toolbar .plk-btn span { display: none; }
    .plk-toolbar .plk-btn { width: 34px; padding: 6px; }
    .plk-mobile-tabs { position: sticky; top: 149px; z-index: 55; display: flex; gap: 5px; padding: 7px 10px; overflow-x: auto; border-bottom: 1px solid var(--plk-line); background: rgba(255, 255, 255, .96); scrollbar-width: none; }
    .plk-mobile-tabs::-webkit-scrollbar { display: none; }
    .plk-mobile-tab { display: inline-flex; align-items: center; gap: 5px; min-height: 30px; padding: 4px 8px; border: 1px solid var(--plk-line); border-radius: 999px; background: #fff; color: var(--plk-muted); cursor: pointer; font-size: 9px; font-weight: 650; white-space: nowrap; }
    .plk-mobile-tab span { min-width: 17px; padding: 1px 4px; border-radius: 999px; background: var(--plk-soft); font-size: 7.5px; text-align: center; }
    .plk-mobile-tab[aria-selected="true"] { border-color: var(--plk-blue); background: #eff5ff; color: var(--plk-blue); }
    .plk-board { width: 100%; min-width: 0; padding: 0 9px; }
    .plk-stage { width: 100% !important; max-width: none; flex: 1 1 100% !important; }
    body.plk-mobile-focus .plk-stage.plk-mobile-hidden { display: none !important; }
    body.plk-mobile-focus .plk-board.plk-mobile-all { width: max-content; min-width: 100%; }
    body.plk-mobile-focus .plk-board.plk-mobile-all .plk-stage { width: calc(100vw - 28px) !important; flex: 0 0 calc(100vw - 28px) !important; }
    .plk-modal { align-items: end; padding: 0; }
    .plk-dialog { width: 100%; max-height: 96vh; border-width: 1px 0 0; border-radius: 15px 15px 0 0; }
    .plk-task-form-scroll { grid-template-columns: minmax(0, 1fr); }
    .plk-task-form-main { padding: 13px; }
    .plk-task-form-side { border-top: 1px solid var(--plk-line); border-left: 0; }
    .plk-assignee-picker { max-height: 240px; }
    .plk-dialog-footer { position: relative; z-index: 3; flex: 0 0 auto; box-shadow: 0 -8px 22px rgba(15,23,42,.06); }
    .plk-modal--explorer { align-items: stretch; padding: 0; }
    .plk-explorer { height: 100%; max-height: none; border: 0; border-radius: 0; }
    .plk-explorer-header { padding: 9px; }
    .plk-explorer-brand { flex: 1 1 auto; }
    .plk-explorer-filters { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .plk-search { grid-column: 1 / -1; width: 100%; }
    .plk-explorer-filters select { width: 100%; min-width: 0; }
    .plk-explorer-summary span { display: none; }
    .plk-explorer-row { grid-template-columns: minmax(0, 1fr) minmax(135px, .45fr); gap: 6px; padding: 8px; }
    .plk-explorer-primary { grid-column: 1 / -1; }
    .plk-explorer-due { grid-column: 1; }
    .plk-explorer-people { grid-column: 2; grid-row: 2 / span 2; align-self: stretch; flex-direction: column; align-items: stretch; justify-content: center; }
    .plk-explorer-people .plk-avatars { justify-content: flex-start; }
    .plk-board-manager-grid { grid-template-columns: minmax(0, 1fr); }
    .plk-board-manager-grid > section + section { border-top: 1px solid var(--plk-line); border-left: 0; }
    .plk-stage-setting { grid-template-columns: 20px minmax(110px, 1fr) 38px 82px 28px; }
    .plk-stage-setting .plk-wip-field, .plk-stage-setting .plk-btn { grid-column: span 2; }
    .plk-add-stage-form { grid-template-columns: minmax(0, 1fr) 40px; }
    .plk-add-stage-form select, .plk-add-stage-form .plk-btn { grid-column: span 1; }
    body.plk-frontend-page #pure-lab-kanban-app, body.plk-frontend-page .plk-app { min-height: 100vh; }
    body.plk-frontend-page .plk-appbar { top: 0; }
    body.plk-frontend-page .plk-mobile-tabs { top: 103px; }
    .plk-appbar-actions { gap: 5px; }
    .plk-logout { display: none; }
    .plk-pagebar { align-items: flex-start; flex-wrap: wrap; }
    .plk-pagebar-copy { max-width: 100%; flex: 1 1 100%; }
    .plk-toolbar { width: 100%; justify-content: flex-start; overflow-x: auto; }
    .plk-toolbar .plk-view-switch { flex: 0 0 auto; }
    .plk-toolbar .plk-view-switch button { width: auto; }
    .plk-data-view { width: calc(100% - 18px); }
    .plk-form-grid--three { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .plk-theme-presets { grid-template-columns: repeat(3,minmax(82px,1fr)); }
    .plk-custom-field-row, .plk-webhook-row { grid-template-columns: minmax(0,1fr) 100px 28px; }
    .plk-custom-field-row [data-field-options], .plk-webhook-row [data-webhook-events] { grid-column: 1 / -1; grid-row: 2; }
    .plk-add-member-form { grid-template-columns: minmax(0,1fr) 105px; }
    .plk-add-member-form .plk-btn { grid-column: 1/-1; }
    .plk-invite-link-result { grid-template-columns: 1fr auto; }
    .plk-invite-link-result > div { grid-column: 1/-1; }
    .plk-archives { grid-template-columns: minmax(0,1fr); }
    .plk-report-stats { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .plk-report-grid { grid-template-columns: minmax(0,1fr); }
    .plk-report-activity { grid-column: 1; }
    .plk-report-activity .plk-activity-list { grid-template-columns: minmax(0,1fr); }
    .plk-timeline-view { overflow-x: auto; }
    .plk-timeline-view > * { min-width: 720px; }
    .plk-modal--library { align-items: stretch; padding: 0; }
    .plk-library-dialog { width: 100%; height: 100%; max-height: none; border: 0; border-radius: 0; }
    .plk-library-header { flex-wrap: wrap; padding: 8px 9px; }
    .plk-library-header .plk-explorer-brand { flex: 1 1 auto; }
    .plk-library-search { order: 3; width: 100%; max-width: none; flex-basis: 100%; }
    .plk-library-layout { grid-template-columns: minmax(0,1fr); grid-template-rows: auto minmax(0,1fr); }
    .plk-library-sidebar { padding: 7px; overflow-x: auto; overflow-y: hidden; border-right: 0; border-bottom: 1px solid var(--plk-line); }
    .plk-library-sidebar > strong, .plk-library-sidebar-note { display: none; }
    .plk-library-sidebar nav { display: flex; width: max-content; }
    .plk-library-sidebar nav button { width: auto; min-width: 98px; grid-template-columns: 16px auto auto; }
    .plk-library-toolbar { align-items: flex-start; flex-wrap: wrap; }
    .plk-library-breadcrumbs { width: 100%; }
    .plk-library-actions { width: 100%; overflow-x: auto; }
    .plk-resource-grid { grid-template-columns: repeat(2,minmax(0,1fr)); padding: 8px; }
}

@media (max-width: 880px) {
    .plk-auth-shell { grid-template-columns: minmax(0,1fr); }
    .plk-auth-story { min-height: 250px; padding: 25px; }
    .plk-auth-copy { margin: 42px 0 0; }
    .plk-auth-copy h1 { max-width: 600px; margin: 13px 0 0; font-size: clamp(31px, 7vw, 48px); line-height: 1.02; }
    .plk-auth-copy p, .plk-auth-features { display: none; }
    .plk-auth-panel { min-height: auto; padding: 28px 18px 48px; }
}

@media (max-width: 520px) {
    .plk-form-grid { grid-template-columns: minmax(0, 1fr); }
    .plk-dialog-header h2 { font-size: 16px; }
    .plk-dialog-footer { flex-wrap: wrap; }
    .plk-dialog-footer .plk-btn { flex: 1 1 auto; }
    .plk-footer-spacer { display: none; }
    .plk-explorer-filters { grid-template-columns: minmax(0, 1fr); }
    .plk-search { grid-column: 1; }
    .plk-explorer-row { grid-template-columns: minmax(0, 1fr); }
    .plk-explorer-primary, .plk-explorer-due, .plk-explorer-people { grid-column: 1; grid-row: auto; }
    .plk-explorer-people { flex-direction: row; align-items: center; }
    .plk-danger-zone { align-items: stretch; flex-direction: column; }
    .plk-form-grid--three { grid-template-columns: minmax(0,1fr); }
    .plk-theme-presets { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .plk-settings-nav { padding-inline: 9px; }
    .plk-settings-nav-save { padding-inline: 8px; font-size: 9px; }
    .plk-member-row { grid-template-columns: 28px minmax(0,1fr) 88px 28px; }
    .plk-custom-field-row, .plk-webhook-row { grid-template-columns: minmax(0,1fr) 28px; }
    .plk-custom-field-row [data-field-type], .plk-custom-field-row [data-field-options], .plk-webhook-row [data-webhook-events], .plk-webhook-row .plk-check-row { grid-column: 1/-1; grid-row: auto; }
    .plk-report-bars > div { grid-template-columns: 86px minmax(0,1fr) 24px; }
    .plk-auth-story { min-height: 205px; padding: 19px; }
    .plk-auth-brand img { width: 39px; height: 39px; }
    .plk-auth-copy { margin-top: 32px; }
    .plk-auth-copy h1 { font-size: 30px; }
    .plk-auth-panel { padding: 14px 10px 34px; }
    .plk-auth-card { padding: 23px 18px; border-radius: 17px; }
    .plk-auth-row { align-items: flex-start; flex-direction: column; gap: 7px; }
    .plk-member-divider span { white-space: normal; text-align: center; }
    .plk-profile-trigger-copy { display: none; }
    .plk-profile-trigger { padding: 2px; }
    .plk-profile-photo { grid-template-columns: minmax(0,1fr); justify-items: center; text-align: center; }
    .plk-profile-photo > div { width: 100%; }
    .plk-profile-photo .plk-inline-compose { align-items: stretch; flex-direction: column; }
    .plk-profile-photo input[type="file"] { max-width: 100%; }
    .plk-profile-username { grid-template-columns: minmax(0,1fr); }
    .plk-profile-username small { grid-column: 1; }
    .plk-resource-grid { grid-template-columns: minmax(0,1fr); }
    .plk-resource-card { min-height: 180px; }
    .plk-resource-form-body .plk-form-grid { grid-template-columns: minmax(0,1fr); }
}

/* v3.7 board identity, visual switcher, and personal favorite tabs. */
.plk-board-switcher { position: relative; min-width: 220px; max-width: 330px; flex: 0 1 330px; }
.plk-board-switcher-trigger { display: flex; width: 100%; min-height: 40px; align-items: center; gap: 8px; padding: 4px 8px 4px 5px; border: 1px solid #d9e0e8; border-radius: 11px; background: rgba(255,255,255,.88); color: var(--plk-ink); box-shadow: 0 1px 2px rgba(15,23,42,.03); cursor: pointer; text-align: left; transition: border-color .15s ease, box-shadow .15s ease, background-color .15s ease; }
.plk-board-switcher-trigger:hover, .plk-board-switcher-trigger[aria-expanded="true"] { border-color: color-mix(in srgb,var(--plk-blue) 42%,#d9e0e8); background: #fff; box-shadow: 0 7px 20px rgba(15,23,42,.09); }
.plk-board-switcher-trigger > span:not(.plk-board-mark) { min-width: 0; flex: 1; }
.plk-board-switcher-trigger strong, .plk-board-switcher-trigger small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.plk-board-switcher-trigger strong { font-size: 11.5px; font-weight: 750; letter-spacing: -.015em; }
.plk-board-switcher-trigger small { margin-top: 1px; color: #7d889a; font-size: 8px; }
.plk-board-switcher-trigger > svg { width: 15px; height: 15px; flex: 0 0 15px; color: #8190a3; }
.plk-board-switcher-trigger[aria-expanded="true"] > svg { transform: rotate(180deg); }
.plk-board-mark { display: grid; width: 31px; height: 31px; flex: 0 0 31px; overflow: hidden; place-items: center; border: 1px solid color-mix(in srgb,var(--board-icon-color) 20%,#fff); border-radius: 9px; background: linear-gradient(145deg,color-mix(in srgb,var(--board-icon-color) 15%,#fff),color-mix(in srgb,var(--board-icon-color) 5%,#fff)); color: var(--board-icon-color); box-shadow: inset 0 1px 0 rgba(255,255,255,.8),0 3px 9px color-mix(in srgb,var(--board-icon-color) 12%,transparent); }
.plk-board-mark svg { width: 18px; height: 18px; }
.plk-board-mark.is-image { border-color: rgba(15,23,42,.08); background: #eef2f6; }
.plk-board-mark img { width: 100%; height: 100%; object-fit: cover; }
.plk-board-mark--compact { width: 25px; height: 25px; flex-basis: 25px; border-radius: 7px; }
.plk-board-mark--compact svg { width: 14px; height: 14px; }
.plk-board-menu { position: absolute; top: calc(100% + 8px); left: 0; z-index: 190; width: min(390px,calc(100vw - 24px)); overflow: hidden; border: 1px solid #dce3eb; border-radius: 15px; background: rgba(255,255,255,.98); box-shadow: 0 24px 64px rgba(15,23,42,.2),0 5px 16px rgba(15,23,42,.08); backdrop-filter: blur(18px); }
.plk-board-menu-search { display: flex; align-items: center; gap: 7px; margin: 10px; padding: 0 10px; border: 1px solid #dce3eb; border-radius: 9px; background: #f7f9fc; color: #718096; }
.plk-board-menu-search svg { width: 15px; height: 15px; flex: 0 0 15px; }
.plk-board-menu-search input { width: 100%; min-height: 36px; padding: 0; border: 0; background: transparent; box-shadow: none; color: var(--plk-ink); font-size: 11px; outline: 0; }
.plk-board-menu-list { max-height: min(430px,55vh); padding: 0 6px 6px; overflow-y: auto; }
.plk-board-menu-row { display: flex; align-items: center; gap: 3px; border-radius: 10px; }
.plk-board-menu-row:hover { background: #f3f6fa; }
.plk-board-menu-open { display: flex; min-width: 0; flex: 1; align-items: center; gap: 9px; padding: 7px; border: 0; background: transparent; color: var(--plk-ink); cursor: pointer; text-align: left; }
.plk-board-menu-open > span:not(.plk-board-mark) { min-width: 0; flex: 1; }
.plk-board-menu-open strong, .plk-board-menu-open small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.plk-board-menu-open strong { font-size: 11px; font-weight: 720; }
.plk-board-menu-open small { margin-top: 2px; color: #7b8798; font-size: 8.5px; }
.plk-board-menu-open i { padding: 3px 6px; border-radius: 999px; background: #e9f2ff; color: #1769d2; font-size: 7.5px; font-style: normal; font-weight: 720; }
.plk-board-menu-star { display: grid; width: 30px; height: 30px; flex: 0 0 30px; place-items: center; border: 0; border-radius: 8px; background: transparent; color: #9aa5b4; cursor: pointer; }
.plk-board-menu-star:hover { background: #fff4d9; color: #c48608; }
.plk-board-menu-star.is-favorite { color: #e29a08; }
.plk-board-menu-star.is-favorite svg { fill: currentColor; }
.plk-board-menu-star svg { width: 16px; height: 16px; }
.plk-board-menu-manage { display: flex; width: 100%; min-height: 42px; align-items: center; gap: 7px; padding: 8px 13px; border: 0; border-top: 1px solid #e5e9ef; background: #f8fafc; color: #315f96; cursor: pointer; font-size: 10px; font-weight: 700; text-align: left; }
.plk-board-menu-manage svg { width: 15px; height: 15px; }
.plk-board-favorites { display: flex; min-width: 0; flex: 1 1 auto; align-items: center; gap: 4px; overflow-x: auto; scrollbar-width: none; }
.plk-board-favorites::-webkit-scrollbar { display: none; }
.plk-favorite-board { display: flex; max-width: 155px; min-height: 34px; flex: 0 0 auto; align-items: center; gap: 6px; padding: 4px 8px 4px 4px; border: 1px solid transparent; border-radius: 10px; background: transparent; color: var(--plk-board-muted,#5f6c7d); cursor: pointer; transition: border-color .15s ease, background-color .15s ease, color .15s ease, box-shadow .15s ease; }
.plk-favorite-board:hover { border-color: color-mix(in srgb,var(--plk-blue) 18%,var(--plk-board-line,#dce3eb)); background: color-mix(in srgb,var(--plk-blue) 6%,var(--plk-board-soft,#f4f7fa)); color: var(--plk-board-ink,var(--plk-ink)); }
.plk-favorite-board:focus-visible { border-color: var(--plk-blue); outline: 2px solid color-mix(in srgb,var(--plk-blue) 32%,transparent); outline-offset: 2px; }
.plk-favorite-board.is-current { border-color: color-mix(in srgb,var(--plk-blue) 38%,var(--plk-board-line,#dce3eb)); background: color-mix(in srgb,var(--plk-blue) 11%,var(--plk-board-soft,#f4f7fa)); color: color-mix(in srgb,var(--plk-blue) 40%,var(--plk-board-ink,#101828)); box-shadow: inset 0 0 0 1px color-mix(in srgb,var(--plk-blue) 8%,transparent),0 3px 10px color-mix(in srgb,var(--plk-blue) 9%,transparent); }
.plk-favorite-board span:last-child { overflow: hidden; font-size: 9px; font-weight: 690; text-overflow: ellipsis; white-space: nowrap; }
.plk-title-line > .plk-board-mark { margin-right: 2px; }
.plk-board-list button > .plk-board-mark { flex: 0 0 31px; }
.plk-board-list button > .plk-board-mark + span { min-width: 0; flex: 1; text-align: left; }
.plk-board-identity-settings { margin: 2px 0 16px; padding: 13px; border: 1px solid #dce4ed; border-radius: 12px; background: linear-gradient(145deg,#f9fbfd,#f3f7fb); }
.plk-board-identity-preview { display: flex; align-items: center; gap: 10px; margin-bottom: 11px; }
.plk-board-identity-preview strong, .plk-board-identity-preview small { display: block; }
.plk-board-identity-preview strong { color: #283548; font-size: 11px; font-weight: 750; }
.plk-board-identity-preview small { margin-top: 2px; color: #758196; font-size: 8.5px; }
.plk-board-icon-picker { display: grid; grid-template-columns: repeat(9,minmax(0,1fr)); gap: 6px; }
.plk-board-icon-picker label { cursor: pointer; }
.plk-board-icon-picker input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.plk-board-icon-picker label > span { display: grid; aspect-ratio: 1; place-items: center; border: 1px solid #dce3eb; border-radius: 9px; background: #fff; color: var(--board-icon-color); transition: border-color .15s ease,box-shadow .15s ease,transform .15s ease; }
.plk-board-icon-picker label:hover > span { border-color: color-mix(in srgb,var(--board-icon-color) 45%,#dce3eb); transform: translateY(-1px); }
.plk-board-icon-picker input:checked + span { border-color: var(--board-icon-color); background: color-mix(in srgb,var(--board-icon-color) 8%,#fff); box-shadow: 0 0 0 2px color-mix(in srgb,var(--board-icon-color) 14%,transparent); }
.plk-board-icon-picker svg { width: 18px; height: 18px; }
.plk-board-identity-fields { display: grid; grid-template-columns: 120px minmax(0,1fr); align-items: end; gap: 9px; margin-top: 10px; }
.plk-board-identity-fields .plk-check-row { grid-column: 1/-1; }
.plk-board-theme-dark .plk-board-switcher-trigger, .plk-board-theme-dark .plk-board-menu { border-color: var(--plk-board-line); background: color-mix(in srgb,var(--plk-board-soft) 96%,transparent); color: var(--plk-board-ink); }
.plk-board-theme-dark .plk-board-menu-search, .plk-board-theme-dark .plk-board-menu-manage { border-color: var(--plk-board-line); background: color-mix(in srgb,var(--plk-stage-header-background) 82%,transparent); color: var(--plk-board-muted); }
.plk-board-theme-dark .plk-board-menu-search input, .plk-board-theme-dark .plk-board-menu-open { color: var(--plk-board-ink); }
.plk-board-theme-dark .plk-board-menu-row:hover, .plk-board-theme-dark .plk-favorite-board:hover { border-color: color-mix(in srgb,var(--plk-blue) 28%,var(--plk-board-line)); background: color-mix(in srgb,var(--plk-blue) 10%,var(--plk-board-soft)); color: var(--plk-board-ink); }
.plk-board-theme-dark .plk-favorite-board { color: var(--plk-board-muted); }
.plk-board-theme-dark .plk-favorite-board.is-current { border-color: color-mix(in srgb,var(--plk-blue) 54%,var(--plk-board-line)); background: color-mix(in srgb,var(--plk-blue) 17%,var(--plk-board-soft)); color: color-mix(in srgb,var(--plk-blue) 24%,var(--plk-board-ink)); box-shadow: inset 0 0 0 1px color-mix(in srgb,var(--plk-blue) 14%,transparent),0 4px 13px rgba(0,0,0,.18); }

@media (max-width: 1120px) {
    .plk-favorite-board { max-width: 40px; padding-right: 4px; }
    .plk-favorite-board span:last-child { display: none; }
}

@media (max-width: 782px) {
    .plk-board-switcher { width: 100%; max-width: none; flex-basis: 100%; }
    .plk-board-favorites { display: none !important; }
    .plk-board-menu { width: 100%; }
    .plk-board-icon-picker { grid-template-columns: repeat(6,minmax(0,1fr)); }
    .plk-board-identity-fields { grid-template-columns: 1fr; }
    .plk-board-identity-fields .plk-check-row { grid-column: auto; }
}

@media (prefers-reduced-motion: reduce) {
    .plk-spinner, .plk-toast, .plk-skeleton, .plk-card, .plk-switch, .plk-switch::after { animation: none !important; transition: none !important; }
    .plk-card:hover, .plk-theme-preset:hover { transform: none !important; }
}

/* Premium workspace visual system — v3.6.4 */
#pure-lab-kanban-app {
    --plk-radius-xs: 6px;
    --plk-radius-sm: 9px;
    --plk-radius-md: 12px;
    --plk-radius-lg: 18px;
    --plk-shadow-xs: 0 1px 2px rgba(15, 23, 42, .045), 0 1px 1px rgba(15, 23, 42, .025);
    --plk-shadow-sm: 0 7px 22px rgba(15, 23, 42, .075), 0 2px 5px rgba(15, 23, 42, .035);
    --plk-shadow-md: 0 24px 65px rgba(15, 23, 42, .15), 0 8px 20px rgba(15, 23, 42, .08);
    --plk-focus: 0 0 0 3px color-mix(in srgb, var(--plk-blue) 17%, transparent);
    font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI Variable", "Segoe UI", sans-serif;
    font-feature-settings: "cv02", "cv03", "cv04", "cv11";
    letter-spacing: -.006em;
}

#pure-lab-kanban-app ::selection { background: color-mix(in srgb, var(--plk-blue) 24%, transparent); }
#pure-lab-kanban-app * { scrollbar-color: color-mix(in srgb, var(--plk-board-muted, var(--plk-muted)) 38%, transparent) transparent; }
#pure-lab-kanban-app *::-webkit-scrollbar { width: 10px; height: 10px; }
#pure-lab-kanban-app *::-webkit-scrollbar-track { background: transparent; }
#pure-lab-kanban-app *::-webkit-scrollbar-thumb { border: 3px solid transparent; border-radius: 999px; background: color-mix(in srgb, var(--plk-board-muted, var(--plk-muted)) 38%, transparent); background-clip: padding-box; }
#pure-lab-kanban-app *::-webkit-scrollbar-thumb:hover { background: color-mix(in srgb, var(--plk-board-muted, var(--plk-muted)) 58%, transparent); background-clip: padding-box; }

body.plk-page-active { background: #edf1f6; }
.plk-app { background-color: #f4f7fa; }

.plk-appbar {
    height: 62px;
    padding: 0 20px;
    border-bottom-color: color-mix(in srgb, var(--plk-line) 84%, transparent);
    background: rgba(255, 255, 255, .91);
    box-shadow: 0 1px 0 rgba(15, 23, 42, .025), 0 8px 26px rgba(15, 23, 42, .045);
    backdrop-filter: saturate(150%) blur(18px);
}
body.plk-frontend-page .plk-pagebar { top: 62px; }
.plk-brand { gap: 10px; }
.plk-brand img { width: 36px; height: 36px; filter: drop-shadow(0 5px 8px rgba(14, 118, 110, .16)); }
.plk-brand strong { font-size: 14.5px; font-weight: 760; letter-spacing: -.03em; }
.plk-brand small { color: #7a8597; font-size: 8px; font-weight: 720; letter-spacing: .1em; }
.plk-board-switcher select {
    min-height: 40px;
    padding-inline: 12px 36px;
    border-color: #d9e0e9;
    border-radius: 10px;
    background-color: rgba(248, 250, 252, .92);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .72), var(--plk-shadow-xs);
    font-size: 12.5px;
    font-weight: 650;
    transition: border-color .15s ease, background-color .15s ease, box-shadow .15s ease;
}
.plk-board-switcher select:hover { border-color: #c5d0dd; background-color: #fff; }
.plk-board-switcher select:focus { border-color: var(--plk-blue); background-color: #fff; box-shadow: var(--plk-focus); outline: 0; }
.plk-appbar-actions { gap: 6px; }
.plk-appbar-actions > .plk-btn { min-height: 36px; border-radius: 9px; }
.plk-profile-trigger { border-radius: 10px; }
.plk-profile-trigger:hover, .plk-profile-trigger:focus { border-color: color-mix(in srgb, var(--plk-blue) 24%, var(--plk-line)); background: color-mix(in srgb, var(--plk-blue) 6%, #fff); box-shadow: var(--plk-shadow-xs); }
.plk-user-chip { width: 32px; height: 32px; box-shadow: inset 0 0 0 1px rgba(15,23,42,.04), 0 2px 6px rgba(15,23,42,.1); }
.plk-notification-button { border-radius: 10px; }

.plk-pagebar {
    top: 94px;
    min-height: 72px;
    padding: 11px 20px;
    border-bottom-color: color-mix(in srgb, var(--plk-line) 84%, transparent);
    background: rgba(250, 251, 253, .92);
    box-shadow: 0 6px 22px rgba(15, 23, 42, .035);
    backdrop-filter: saturate(145%) blur(18px);
}
.plk-pagebar h1 { font-size: 18.5px; font-weight: 760; letter-spacing: -.035em; line-height: 24px; }
.plk-pagebar p { margin-top: 3px; color: #758195; font-size: 10px; }
.plk-title-line { gap: 6px; }
.plk-board-stat { padding: 3px 7px; border: 1px solid color-mix(in srgb, var(--plk-line) 76%, transparent); background: rgba(255,255,255,.72); font-size: 8px; font-weight: 720; }
.plk-board-stat--done { border-color: #cbe9dc; background: #ecf9f3; }
.plk-toolbar { gap: 5px; }

.plk-btn, .plk-icon-btn {
    min-height: 36px;
    border-color: #d9e0e8;
    border-radius: 9px;
    background: rgba(255,255,255,.9);
    box-shadow: var(--plk-shadow-xs);
    font-weight: 670;
}
.plk-btn:hover, .plk-btn:focus, .plk-icon-btn:hover, .plk-icon-btn:focus { border-color: color-mix(in srgb, var(--plk-blue) 42%, #cbd5e1); background: color-mix(in srgb, var(--plk-blue) 6%, #fff); box-shadow: 0 5px 14px rgba(15,23,42,.07); transform: translateY(-1px); }
.plk-btn:active, .plk-icon-btn:active { box-shadow: var(--plk-shadow-xs); transform: translateY(0); }
.plk-btn:focus-visible, .plk-icon-btn:focus-visible { box-shadow: var(--plk-focus), var(--plk-shadow-xs); outline: 0; }
.plk-btn--primary { border-color: color-mix(in srgb, var(--plk-blue) 85%, #001b47); background: linear-gradient(180deg, color-mix(in srgb, var(--plk-blue) 88%, #fff) 0%, var(--plk-blue) 100%); box-shadow: 0 7px 16px color-mix(in srgb, var(--plk-blue) 24%, transparent), inset 0 1px 0 rgba(255,255,255,.22); }
.plk-btn--primary:hover, .plk-btn--primary:focus { border-color: color-mix(in srgb, var(--plk-blue) 78%, #00122e); background: linear-gradient(180deg, var(--plk-blue), color-mix(in srgb, var(--plk-blue) 82%, #001e50)); box-shadow: 0 9px 20px color-mix(in srgb, var(--plk-blue) 28%, transparent); }
.plk-btn--small { min-height: 31px; border-radius: 8px; }
.plk-icon-btn--tiny { min-height: 28px; border-radius: 7px; }

.plk-view-switch { gap: 2px; padding: 4px; border: 1px solid rgba(15,23,42,.035); border-radius: 10px; background: #e9edf3; box-shadow: inset 0 1px 2px rgba(15,23,42,.04); }
.plk-view-switch button { min-height: 29px; padding: 4px 9px; border-radius: 7px; font-size: 9.5px; }
.plk-view-switch button:hover { color: #344054; }
.plk-view-switch button[aria-pressed="true"] { color: var(--plk-blue); box-shadow: 0 2px 7px rgba(15,23,42,.12), inset 0 1px 0 #fff; }

.plk-workspace { padding: 14px 0 38px; }
.plk-board { gap: 10px; padding: 0 18px; }
.plk-stage {
    position: relative;
    border-color: color-mix(in srgb, var(--plk-board-line, #dfe4ea) 88%, transparent);
    border-radius: 13px;
    background: color-mix(in srgb, var(--plk-stage-background, #edf1f5) 96%, transparent);
    box-shadow: 0 8px 28px rgba(15,23,42,.04), inset 0 1px 0 rgba(255,255,255,.34);
}
.plk-stage.is-drop-target { box-shadow: 0 0 0 3px color-mix(in srgb, var(--plk-blue) 18%, transparent), 0 16px 38px rgba(15,23,42,.1); }
.plk-stage-top {
    position: relative;
    top: auto;
    z-index: 12;
    overflow: hidden;
    border-bottom-color: color-mix(in srgb, var(--plk-board-line, #dbe1e8) 88%, transparent);
    border-radius: 12px 12px 0 0;
    background: linear-gradient(135deg, color-mix(in srgb, var(--stage-color) 7%, var(--plk-stage-header-background, #f4f7fa)) 0%, color-mix(in srgb, var(--plk-stage-header-background, #f4f7fa) 96%, transparent) 74%);
    box-shadow: 0 3px 10px rgba(15,23,42,.035), inset 0 1px 0 rgba(255,255,255,.46);
    backdrop-filter: saturate(135%) blur(14px);
    will-change: transform;
}
.plk-stage-top.is-elevated { box-shadow: 0 10px 24px rgba(15,23,42,.12), 0 1px 0 rgba(15,23,42,.04); }
.plk-stage-header { position: relative; min-height: 50px; padding: 7px 8px; }
.plk-stage-color { width: 27px; height: 27px; flex-basis: 27px; border-radius: 8px; background: color-mix(in srgb, var(--stage-color) 12%, var(--plk-card-background, #fff)); box-shadow: inset 0 1px 0 rgba(255,255,255,.62), 0 4px 10px color-mix(in srgb, var(--stage-color) 10%, transparent); }
.plk-stage-color::after { width: 8px; height: 8px; border-radius: 3px; }
.plk-stage-identity { gap: 4px; }
.plk-stage-title { font-size: 12px; font-weight: 770; letter-spacing: -.018em; }
.plk-stage-count { min-width: 20px; height: 19px; flex: 0 0 auto; padding: 1px 4px; border: 1px solid color-mix(in srgb, var(--stage-color) 13%, var(--plk-board-line, #dfe4ea)); background: color-mix(in srgb, var(--plk-card-background, #fff) 58%, transparent); font-size: 7.5px; line-height: 15px; }
.plk-stage-actions { gap: 2px; }
.plk-stage-view { min-height: 25px; padding: 3px 5px; border-radius: 7px; font-size: 8px; opacity: 1; }
.plk-task-list { gap: 7px; padding: 8px; }
.plk-add-task { width: 25px; min-width: 25px; min-height: 25px; margin: 0; padding: 3px; border-radius: 7px; background: color-mix(in srgb, var(--stage-color) 9%, var(--plk-card-background, #fff)); font-size: 8px; font-weight: 730; transition: border-color .15s ease, background-color .15s ease, color .15s ease, box-shadow .15s ease; }
.plk-add-task:hover, .plk-add-task:focus { border-color: color-mix(in srgb, var(--stage-color) 56%, var(--plk-board-line, #cbd4df)); background: color-mix(in srgb, var(--stage-color) 15%, var(--plk-card-background, #fff)); color: color-mix(in srgb, var(--stage-color) 84%, var(--plk-board-ink, #101828)); box-shadow: 0 4px 12px color-mix(in srgb, var(--stage-color) 12%, transparent); outline: 0; }

.plk-card {
    padding: 8px 9px;
    border-color: color-mix(in srgb, var(--plk-board-line, #dce2e9) 92%, transparent);
    border-radius: 10px;
    background: color-mix(in srgb, var(--plk-card-background, #fff) 98%, transparent);
    box-shadow: var(--plk-shadow-xs);
    transition: border-color .16s ease, box-shadow .16s ease, opacity .15s ease, transform .16s cubic-bezier(.2,.8,.2,1);
}
.plk-card::after { position: absolute; top: 8px; bottom: 8px; left: 0; width: 3px; border-radius: 0 999px 999px 0; background: var(--stage-color); content: ""; opacity: 0; transform: scaleY(.45); transition: opacity .16s ease, transform .16s ease; }
.plk-card:hover { border-color: color-mix(in srgb, var(--stage-color) 44%, var(--plk-board-line, #dce2e9)); box-shadow: 0 12px 28px rgba(15,23,42,.105), 0 2px 5px rgba(15,23,42,.045); transform: translateY(-2px); }
.plk-card:hover::after, .plk-card:focus-visible::after { opacity: 1; transform: scaleY(1); }
.plk-card:focus-visible { box-shadow: var(--plk-focus), var(--plk-shadow-sm); outline: 0; }
.plk-card.has-cover { border: 0; box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--card-cover, var(--stage-color)) 17%, var(--plk-board-line, #dce2e9)), var(--plk-shadow-xs); }
.plk-card.has-cover:hover { box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--card-cover, var(--stage-color)) 34%, var(--plk-board-line, #dce2e9)), 0 12px 28px rgba(15,23,42,.105), 0 2px 5px rgba(15,23,42,.045); }
.plk-card.has-cover:focus-visible { box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--card-cover, var(--stage-color)) 36%, var(--plk-board-line, #dce2e9)), var(--plk-focus), var(--plk-shadow-sm); }
.plk-card.has-color-cover { padding-top: 18px; }
.plk-card.has-image-cover { padding-top: 68px; }
.plk-card.has-color-cover::after { top: 18px; }
.plk-card.has-image-cover::after { top: 68px; }
.plk-card-cover { margin: 0; }
.plk-card-top { min-height: 18px; margin-bottom: 2px; }
.plk-issue { color: color-mix(in srgb, var(--plk-board-muted, #98a2b3) 88%, transparent); font-size: 8px; font-weight: 720; }
.plk-pinned { border: 1px solid #f1dda3; background: #fff9e8; font-size: 6.5px; letter-spacing: .035em; }
.plk-priority { padding: 1px 5px; border: 1px solid rgba(15,23,42,.035); background: color-mix(in srgb, var(--plk-board-soft, #f1f3f6) 86%, var(--plk-card-background, #fff)); font-size: 7.5px; }
.plk-card-drag { opacity: .28; transition: color .15s ease, opacity .15s ease; }
.plk-card:hover .plk-card-drag { color: var(--plk-board-muted, #7a8597); opacity: .9; }
.plk-card-title { width: calc(100% + 8px); padding: 3px 4px; border-radius: 6px; font-size: 12.25px; font-weight: 690; line-height: 16.5px; letter-spacing: -.012em; }
.plk-card:hover .plk-card-title, .plk-card-title:hover, .plk-card-title:focus { background: color-mix(in srgb, var(--stage-color) 9%, transparent); color: color-mix(in srgb, var(--stage-color) 76%, var(--plk-board-ink, #101828)); }
.plk-card-description { margin-top: 3px; color: color-mix(in srgb, var(--plk-board-muted, var(--plk-muted)) 92%, transparent); font-size: 9px; line-height: 13.5px; }
.plk-card-labels { gap: 4px; margin-top: 6px; }
.plk-label { padding: 2px 6px; border: 1px solid color-mix(in srgb, var(--label-color, var(--plk-munsell)) 14%, transparent); border-radius: 5px; font-size: 8px; font-weight: 680; }
.plk-card-progress { display: block; height: 3px; margin-top: 7px; overflow: hidden; border-radius: 999px; background: color-mix(in srgb, var(--plk-board-line, #dce2e9) 58%, transparent); }
.plk-card-progress i { display: block; width: var(--task-progress, 0%); height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--plk-blue), color-mix(in srgb, var(--plk-blue) 62%, #53d7bc)); box-shadow: 0 0 8px color-mix(in srgb, var(--plk-blue) 22%, transparent); transition: width .24s ease; }
.plk-card-progress.is-complete i { background: linear-gradient(90deg, #0b8f64, #34c98c); }
.plk-card-meta { min-height: 21px; margin-top: 6px; }
.plk-card-meta-left { gap: 7px; }
.plk-meta { font-size: 8px; font-weight: 630; }
.plk-avatar { box-shadow: 0 1px 3px rgba(15,23,42,.14); }
.plk-overflow { border-radius: 9px; background: color-mix(in srgb, var(--plk-card-background, #fff) 74%, transparent); font-weight: 620; }

.plk-data-view { border-radius: 15px; box-shadow: 0 16px 44px rgba(15,23,42,.075), inset 0 1px 0 rgba(255,255,255,.25); }
.plk-data-view-heading { min-height: 56px; padding: 10px 14px; background: color-mix(in srgb, var(--plk-card-background, #fff) 92%, transparent); backdrop-filter: blur(14px); }
.plk-data-view-heading strong { font-size: 13px; font-weight: 750; letter-spacing: -.02em; }
.plk-task-table th { height: 34px; padding: 8px 12px; font-size: 8px; font-weight: 750; letter-spacing: .09em; }
.plk-task-table td { height: 48px; padding: 8px 12px; }
.plk-task-table td:first-child { border-left: 3px solid transparent; }
.plk-task-table tbody tr:hover td:first-child { border-left-color: var(--plk-blue); }
.plk-task-table td:first-child strong { font-size: 10.75px; font-weight: 690; }
.plk-stage-pill { padding: 3px 7px; border: 1px solid color-mix(in srgb, var(--stage-color) 18%, transparent); border-radius: 999px; background: color-mix(in srgb, var(--stage-color) 8%, transparent); font-weight: 650; }
.plk-table-progress { display: grid; grid-template-columns: minmax(48px,72px) auto; align-items: center; gap: 6px; min-width: 72px; }
.plk-table-progress > i { display: block; height: 4px; overflow: hidden; border-radius: 999px; background: color-mix(in srgb, var(--plk-board-line, #e5e9ef) 72%, transparent); }
.plk-table-progress > i > b { display: block; width: var(--task-progress, 0%); height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--plk-blue), color-mix(in srgb, var(--plk-blue) 58%, #53d7bc)); }
.plk-table-progress.is-complete > i > b { background: linear-gradient(90deg,#0b8f64,#34c98c); }
.plk-table-progress small { color: var(--plk-board-muted, var(--plk-muted)); font-size: 8px; font-weight: 650; }

.plk-calendar-heading { min-height: 58px; }
.plk-calendar-weekdays { background: color-mix(in srgb, var(--plk-board-soft, #f8fafc) 88%, transparent); }
.plk-calendar-weekdays span { padding: 9px; font-size: 7.5px; letter-spacing: .08em; }
.plk-calendar-day { min-height: 124px; padding: 8px; transition: background-color .15s ease, box-shadow .15s ease; }
.plk-calendar-day.has-events:hover { z-index: 1; background: color-mix(in srgb, var(--plk-blue) 2.5%, var(--plk-card-background, #fff)); box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--plk-blue) 14%, transparent); }
.plk-calendar-day > strong { margin-bottom: 6px; font-weight: 720; }
.plk-calendar-day button { min-height: 25px; padding: 5px 7px; border-left-width: 3px; border-radius: 7px; box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--event-color, var(--plk-blue)) 7%, transparent); font-size: 8.5px; font-weight: 660; }
.plk-calendar-day button:hover, .plk-calendar-day button:focus { box-shadow: 0 4px 11px color-mix(in srgb, var(--event-color, var(--plk-blue)) 15%, transparent); transform: translateX(2px); }
.plk-calendar-day.is-today { box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--plk-blue) 52%, transparent), inset 0 0 24px color-mix(in srgb, var(--plk-blue) 4%, transparent); }

.plk-timeline-scale { min-height: 35px; background: color-mix(in srgb, var(--plk-board-soft, #f8fafc) 88%, transparent); }
.plk-timeline-row { min-height: 54px; }
.plk-timeline-row > button > strong { font-size: 10.75px; }
.plk-timeline-track { height: 27px; border: 1px solid color-mix(in srgb, var(--plk-board-line, #e8edf3) 55%, transparent); background-color: color-mix(in srgb, var(--plk-board-soft, #f8fafc) 45%, transparent); }
.plk-timeline-track > .plk-timeline-bar { top: 5px; height: 15px; border: 1px solid color-mix(in srgb, var(--stage-color) 82%, #fff); background: linear-gradient(180deg, color-mix(in srgb, var(--stage-color) 88%, #fff), var(--stage-color)); box-shadow: 0 4px 10px color-mix(in srgb,var(--stage-color) 28%,transparent), inset 0 1px 0 rgba(255,255,255,.24); }

.plk-modal { background: rgba(7, 14, 29, .68); backdrop-filter: saturate(115%) blur(10px); }
.plk-dialog { border-color: rgba(255,255,255,.46); border-radius: 19px; box-shadow: 0 42px 110px rgba(3,10,24,.38), 0 12px 34px rgba(3,10,24,.18); animation: plk-premium-dialog-in .2s cubic-bezier(.2,.8,.2,1); }
@keyframes plk-premium-dialog-in { from { opacity: 0; transform: translateY(10px) scale(.992); } to { opacity: 1; transform: translateY(0) scale(1); } }
.plk-dialog-header { min-height: 72px; padding: 16px 18px; background: linear-gradient(180deg,#fff 0%,#fbfcfe 100%); }
.plk-dialog-header h2 { font-size: 19.5px; font-weight: 760; letter-spacing: -.035em; }
.plk-dialog-eyebrow { color: #7a8597; font-size: 8px; font-weight: 760; letter-spacing: .12em; }
.plk-dialog-footer { padding: 13px 18px; background: rgba(250,251,253,.94); box-shadow: 0 -12px 30px rgba(15,23,42,.075); backdrop-filter: blur(16px); }
.plk-task-dialog { width: min(1160px, 100%); }
.plk-task-form-scroll { grid-template-columns: minmax(0,1fr) 275px; }
.plk-task-form-main { padding: 20px 21px 26px; }
.plk-task-form-side { padding: 18px 15px; border-left-color: #e3e8ef; background: linear-gradient(180deg,#f8fafc 0%,#f4f7fa 100%); }
.plk-task-form-main > .plk-field--full:first-child input { min-height: 44px; font-size: 14px; font-weight: 680; letter-spacing: -.015em; }
.plk-field { gap: 6px; }
.plk-field > span { color: #465267; font-size: 9px; font-weight: 720; letter-spacing: .01em; }
.plk-field input, .plk-field select, .plk-field textarea,
.plk-add-stage-form input, .plk-add-stage-form select,
.plk-stage-setting input, .plk-stage-setting select,
.plk-explorer-filters input, .plk-explorer-filters select,
.plk-explorer-people select { min-height: 38px; border-color: #d6dee8; border-radius: 9px; background-color: #fff; box-shadow: inset 0 1px 2px rgba(15,23,42,.025); transition: border-color .15s ease, box-shadow .15s ease, background-color .15s ease; }
.plk-field input:hover, .plk-field select:hover, .plk-field textarea:hover { border-color: #c5d0dd; }
.plk-field input:focus, .plk-field select:focus, .plk-field textarea:focus,
.plk-add-stage-form input:focus, .plk-stage-setting input:focus, .plk-stage-setting select:focus,
.plk-explorer-filters input:focus, .plk-explorer-filters select:focus, .plk-explorer-people select:focus { border-color: var(--plk-blue); outline: 0; box-shadow: var(--plk-focus); }
.plk-section-heading { margin-top: 19px; }
.plk-section-heading h3, .plk-side-heading h3, .plk-settings-card h3, .plk-board-manager h3 { font-size: 12.5px; font-weight: 750; letter-spacing: -.015em; }
.plk-checklist-row input[type="text"] { min-height: 34px; border-radius: 8px; }
.plk-checklist-empty, .plk-comments-empty { border-radius: 10px; background: #fbfcfe; }
.plk-task-section { border-color: #dde4ec; border-radius: 11px; background: #fbfcfe; box-shadow: var(--plk-shadow-xs); }
.plk-task-section summary { min-height: 40px; padding: 9px 11px; font-weight: 720; list-style: none; }
.plk-task-section summary::-webkit-details-marker { display: none; }
.plk-task-section summary::after { margin-left: auto; color: #8a95a6; content: "⌄"; font-size: 14px; line-height: 1; transition: transform .15s ease; }
.plk-task-section[open] summary::after { transform: rotate(180deg); }
.plk-task-section-body { padding: 11px; }
.plk-side-heading { padding-bottom: 7px; border-bottom: 1px solid #e5e9ef; }
.plk-side-heading--spaced { margin-top: 20px; }
.plk-assignee-option { min-height: 42px; border-radius: 9px; }
.plk-assignee-option:hover { border-color: #dce4ed; box-shadow: var(--plk-shadow-xs); }
.plk-dependency-option { min-height: 34px; border-radius: 7px; }
.plk-comment { border-radius: 10px; background: #fbfcfe; box-shadow: var(--plk-shadow-xs); }

.plk-explorer { border-radius: 20px; }
.plk-explorer-header { min-height: 72px; padding: 12px 16px; background: linear-gradient(180deg,#fff,#fbfcfe); }
.plk-explorer-stages { min-height: 52px; padding: 9px 16px; background: #f7f9fc; }
.plk-explorer-tab { min-height: 32px; border-radius: 8px; box-shadow: var(--plk-shadow-xs); }
.plk-explorer-row { min-height: 55px; border-radius: 10px; box-shadow: var(--plk-shadow-xs); transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease; }
.plk-explorer-row:hover { box-shadow: 0 9px 22px rgba(15,23,42,.085); transform: translateY(-1px); }

.plk-settings-body, .plk-report-body { background: #f1f4f8; }
.plk-settings-nav { padding: 10px 16px; background: rgba(255,255,255,.94); box-shadow: 0 10px 26px rgba(15,23,42,.075); }
.plk-settings-nav [data-settings-target] { min-height: 32px; border-radius: 8px; font-size: 9.5px; }
.plk-settings-card { padding: 16px; border-color: #dde4ec; border-radius: 13px; box-shadow: var(--plk-shadow-xs); }
.plk-theme-count { padding: 4px 8px; border: 1px solid #d9e8ff; }
.plk-theme-presets { gap: 9px; }
.plk-theme-preset { padding: 8px; border-radius: 12px; box-shadow: var(--plk-shadow-xs); }
.plk-theme-preset:hover, .plk-theme-preset:focus { box-shadow: 0 10px 24px rgba(15,23,42,.1); transform: translateY(-2px); }
.plk-theme-preset[aria-pressed="true"] { box-shadow: 0 0 0 2px color-mix(in srgb,var(--plk-blue) 16%,transparent), 0 9px 22px rgba(15,23,42,.08); }
.plk-theme-swatch { height: 44px; border-radius: 9px; }
.plk-theme-preset strong { font-size: 9.75px; }
.plk-stage-setting, .plk-member-row { border-radius: 9px; background: #fbfcfe; }

.plk-report-dialog { width: min(1120px,100%); }
.plk-report-body { padding: 17px; }
.plk-report-stats { gap: 9px; }
.plk-report-stats > div { min-height: 78px; padding: 16px 14px 12px; border-color: #dde4ec; border-radius: 12px; box-shadow: var(--plk-shadow-xs); }
.plk-report-stats > div:nth-child(2)::before { background: linear-gradient(90deg,#0e9f6e,#4ad295); }
.plk-report-stats > div:nth-child(3)::before { background: linear-gradient(90deg,#e5484d,#ff8a65); }
.plk-report-stats > div:nth-child(4)::before { background: linear-gradient(90deg,#7c3aed,#a78bfa); }
.plk-report-stats > div:nth-child(5)::before { background: linear-gradient(90deg,#d97706,#fbbf24); }
.plk-report-stats strong { font-size: 21px; font-weight: 760; letter-spacing: -.035em; }
.plk-report-stats span { margin-top: 2px; font-size: 8.5px; }
.plk-report-grid { gap: 11px; margin-top: 11px; }
.plk-report-grid > section { padding: 14px; border-color: #dde4ec; border-radius: 12px; box-shadow: var(--plk-shadow-xs); }

.plk-library-dialog { border-radius: 21px; }
.plk-library-header { min-height: 72px; padding: 11px 15px; background: linear-gradient(180deg,#fff,#fbfcfe); }
.plk-library-brand-icon { width: 38px; height: 38px; border: 1px solid #d6eae7; border-radius: 11px; box-shadow: var(--plk-shadow-xs); }
.plk-library-search input { min-height: 40px; border-radius: 10px; background: #f8fafc; }
.plk-library-sidebar { padding: 17px 11px; background: linear-gradient(180deg,#f8fafc 0%,#f3f6f9 100%); }
.plk-library-sidebar nav { gap: 3px; }
.plk-library-sidebar nav button { min-height: 38px; border-radius: 9px; font-weight: 620; }
.plk-library-sidebar nav button:hover, .plk-library-sidebar nav button[aria-pressed="true"] { background: #e8f1ff; box-shadow: inset 3px 0 0 var(--plk-blue); }
.plk-library-toolbar { min-height: 56px; padding: 9px 14px; }
.plk-library-main { background: #f1f4f8; }
.plk-library-content .plk-empty-state { max-width: 600px; min-height: 300px; margin: 72px auto; border: 1px dashed #cbd6e2; border-radius: 18px; background: rgba(255,255,255,.58); box-shadow: inset 0 1px 0 rgba(255,255,255,.85); }
.plk-library-empty-icon { display: grid; width: 62px; height: 62px; place-items: center; border-radius: 18px; background: linear-gradient(145deg,#eaf4ff,#e8f7f4); color: var(--plk-munsell); box-shadow: 0 10px 28px rgba(15,23,42,.08); }
.plk-resource-grid { gap: 12px; padding: 15px; }
.plk-resource-card { min-height: 190px; border-radius: 13px; box-shadow: var(--plk-shadow-xs); transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease; }
.plk-resource-card--image { min-height: 0; aspect-ratio: 1 / 1; }
.plk-resource-card:hover { box-shadow: 0 13px 30px rgba(15,23,42,.105); transform: translateY(-2px); }
.plk-resource-card.is-selected, .plk-resource-card.is-selected:hover { border-color: color-mix(in srgb,var(--plk-blue) 62%,#b7c8da); background: color-mix(in srgb,var(--plk-blue) 3%,#fff); box-shadow: 0 0 0 3px color-mix(in srgb,var(--plk-blue) 12%,transparent),0 13px 30px rgba(15,23,42,.105); }
.plk-resource-card--folder.is-file-drop-target, .plk-resource-card--folder.is-file-drop-target:hover, .plk-resource-card--folder.is-resource-drop-target, .plk-resource-card--folder.is-resource-drop-target:hover { border-color: var(--plk-blue); box-shadow: 0 0 0 4px color-mix(in srgb,var(--plk-blue) 22%,transparent),0 22px 48px rgba(22,73,126,.2); transform: translateY(-3px) scale(1.025); }
.plk-resource-card--folder.is-selected .plk-resource-preview { background: radial-gradient(circle at 70% 20%,color-mix(in srgb,var(--plk-blue) 17%,transparent),transparent 42%),linear-gradient(145deg,#f8fbff,#eaf2fc); }
.plk-resource-card--folder.is-file-drop-target .plk-resource-preview { background: radial-gradient(circle at 70% 20%,color-mix(in srgb,var(--plk-blue) 25%,transparent),transparent 44%),linear-gradient(145deg,#f8fbff,#dfeeff); }
.plk-resource-card--folder.is-file-drop-target .plk-resource-preview svg { color: var(--plk-blue); filter: drop-shadow(0 6px 10px color-mix(in srgb,var(--plk-blue) 25%,transparent)); transform: translateY(-4px) scale(1.1); }
.plk-resource-card--folder.is-resource-drop-target .plk-resource-preview { background: radial-gradient(circle at 70% 20%,color-mix(in srgb,var(--plk-blue) 25%,transparent),transparent 44%),linear-gradient(145deg,#f8fbff,#dfeeff); }
.plk-resource-card--folder.is-resource-drop-target .plk-resource-preview svg { color: var(--plk-blue); filter: drop-shadow(0 6px 10px color-mix(in srgb,var(--plk-blue) 25%,transparent)); transform: translateY(-4px) scale(1.1); }
.plk-resource-preview { height: 94px; background: radial-gradient(circle at 70% 20%,rgba(22,138,173,.1),transparent 40%),linear-gradient(145deg,#fafbfd,#edf3f8); }
.plk-resource-title { font-size: 11px; }

.plk-profile-photo { background: radial-gradient(circle at 12% 10%,rgba(22,138,173,.08),transparent 32%),linear-gradient(135deg,#f8fafc,#f2f6fa); }
.plk-profile-photo-preview { box-shadow: 0 12px 30px rgba(15,23,42,.15),0 0 0 1px rgba(15,23,42,.04); }
.plk-toast { border: 1px solid rgba(255,255,255,.12); border-radius: 11px; box-shadow: 0 18px 38px rgba(15,23,42,.28); backdrop-filter: blur(14px); }

/* Board themes now color the application chrome as well as the canvas. */
.plk-board-theme-dark .plk-appbar,
.plk-board-theme-dark .plk-pagebar { border-color: var(--plk-board-line); background: color-mix(in srgb, var(--plk-stage-header-background) 91%, transparent); color: var(--plk-board-ink); }
.plk-board-theme-dark .plk-brand,
.plk-board-theme-dark .plk-brand:hover,
.plk-board-theme-dark .plk-pagebar h1,
.plk-board-theme-dark .plk-profile-trigger { color: var(--plk-board-ink); }
.plk-board-theme-dark .plk-brand small,
.plk-board-theme-dark .plk-pagebar p,
.plk-board-theme-dark .plk-profile-trigger-copy small,
.plk-board-theme-dark .plk-logout { color: var(--plk-board-muted); }
.plk-board-theme-dark .plk-board-switcher select,
.plk-board-theme-dark .plk-appbar .plk-btn:not(.plk-btn--primary),
.plk-board-theme-dark .plk-appbar .plk-icon-btn,
.plk-board-theme-dark .plk-pagebar .plk-btn:not(.plk-btn--primary),
.plk-board-theme-dark .plk-pagebar .plk-icon-btn { border-color: var(--plk-board-line); background: var(--plk-board-soft); color: var(--plk-board-ink); }
.plk-board-theme-dark .plk-board-switcher select:focus,
.plk-board-theme-dark .plk-appbar .plk-btn:hover,
.plk-board-theme-dark .plk-pagebar .plk-btn:hover { border-color: var(--plk-blue); background: color-mix(in srgb,var(--plk-blue) 12%,var(--plk-board-soft)); }
.plk-board-theme-dark .plk-view-switch { border-color: var(--plk-board-line); background: color-mix(in srgb,var(--plk-board-soft) 78%,#000); }
.plk-board-theme-dark .plk-view-switch button { color: var(--plk-board-muted); }
.plk-board-theme-dark .plk-view-switch button[aria-pressed="true"] { background: var(--plk-card-background); color: var(--plk-blue); box-shadow: 0 2px 8px rgba(0,0,0,.26); }
.plk-board-theme-dark .plk-board-stat { border-color: var(--plk-board-line); background: var(--plk-board-soft); color: var(--plk-board-muted); }
.plk-board-theme-dark .plk-board-stat--done { color: #77e0b5; }
.plk-board-theme-dark .plk-stage { box-shadow: 0 10px 30px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.025); }
.plk-board-theme-dark .plk-stage-top { box-shadow: 0 4px 12px rgba(0,0,0,.16); }
.plk-board-theme-dark .plk-stage-top.is-elevated { box-shadow: 0 12px 26px rgba(0,0,0,.32); }
.plk-board-theme-dark .plk-stage-count,
.plk-board-theme-dark .plk-add-task { border-color: color-mix(in srgb,var(--stage-color) 34%,var(--plk-board-line)); background: color-mix(in srgb,var(--stage-color) 11%,var(--plk-card-background)); color: color-mix(in srgb,var(--stage-color) 46%,var(--plk-board-ink)); }
.plk-board-theme-dark .plk-stage-view:hover,
.plk-board-theme-dark .plk-stage-view:focus { background: color-mix(in srgb,var(--stage-color) 12%,var(--plk-card-background)); color: var(--plk-board-ink); }
.plk-board-theme-dark .plk-card { box-shadow: 0 2px 7px rgba(0,0,0,.2); }
.plk-board-theme-dark .plk-card.has-cover { box-shadow: inset 0 0 0 1px color-mix(in srgb,var(--card-cover,var(--stage-color)) 21%,var(--plk-board-line)),0 2px 7px rgba(0,0,0,.2); }
.plk-board-theme-dark .plk-card.has-cover:hover { box-shadow: inset 0 0 0 1px color-mix(in srgb,var(--card-cover,var(--stage-color)) 38%,var(--plk-board-line)),0 14px 30px rgba(0,0,0,.28); }
.plk-board-theme-dark .plk-card:hover { box-shadow: 0 14px 30px rgba(0,0,0,.28); }
.plk-board-theme-dark .plk-pinned { border-color: #665424; background: #3d341d; color: #f5d66e; }
.plk-board-theme-dark .plk-task-table th,
.plk-board-theme-dark .plk-calendar-weekdays,
.plk-board-theme-dark .plk-timeline-scale { background: var(--plk-board-soft); }

/* Premium sign-in surface. */
body.plk-auth-page { background: #e9eff5; font-family: Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI Variable","Segoe UI",sans-serif; }
.plk-auth-story { background: radial-gradient(circle at 92% 8%,rgba(56,189,194,.34),transparent 32%),radial-gradient(circle at 8% 92%,rgba(37,99,235,.2),transparent 35%),linear-gradient(145deg,#061624 0%,#092e43 52%,#0a5a63 100%); box-shadow: inset -1px 0 rgba(255,255,255,.08); }
.plk-auth-brand img { box-shadow: 0 14px 38px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.18); }
.plk-auth-copy h1 { text-shadow: 0 8px 30px rgba(0,0,0,.2); }
.plk-auth-panel { background: radial-gradient(circle at 80% 12%,rgba(22,138,173,.09),transparent 28%),linear-gradient(135deg,#f9fbfd,#eaf0f6); }
.plk-auth-card { position: relative; overflow: hidden; border-color: rgba(255,255,255,.8); box-shadow: 0 36px 95px rgba(15,23,42,.15),0 8px 24px rgba(15,23,42,.08); }
.plk-auth-card::before { position: absolute; inset: 0 22px auto; height: 3px; border-radius: 0 0 999px 999px; background: linear-gradient(90deg,#168aad,#0e766e,#3156d8); content: ""; }
.plk-auth-submit { background: linear-gradient(135deg,#168aad 0%,#0e766e 58%,#0b5f8a 100%); box-shadow: 0 12px 28px rgba(14,118,110,.25),inset 0 1px 0 rgba(255,255,255,.18); }

@media (max-width: 1080px) {
    .plk-appbar { padding-inline: 14px; }
    .plk-pagebar { padding-inline: 14px; }
    .plk-task-form-scroll { grid-template-columns: minmax(0,1fr) 250px; }
}

@media (max-width: 782px) {
    .plk-appbar { height: auto; min-height: 62px; padding: 8px 10px; }
    .plk-pagebar { min-height: 64px; padding: 9px 10px; box-shadow: 0 5px 18px rgba(15,23,42,.04); }
    .plk-stage-top, body.plk-frontend-page .plk-stage-top { position: relative; top: auto; }
    .plk-mobile-tabs { border-bottom-color: color-mix(in srgb,var(--plk-line) 84%,transparent); background: rgba(250,251,253,.95); box-shadow: 0 6px 18px rgba(15,23,42,.05); backdrop-filter: blur(16px); }
    body.plk-frontend-page .plk-mobile-tabs { top: 107px; }
    .plk-mobile-tab { min-height: 34px; border-radius: 999px; box-shadow: var(--plk-shadow-xs); }
    .plk-toolbar { padding-bottom: 2px; scrollbar-width: none; }
    .plk-toolbar::-webkit-scrollbar { display: none; }
    .plk-workspace { padding-top: 10px; }
    .plk-board { padding-inline: 9px; }
    .plk-stage { border-radius: 14px; }
    .plk-card { padding: 9px 10px; border-radius: 11px; }
    .plk-card-cover { margin: 0; }
    .plk-task-dialog { height: min(96vh,920px); }
    .plk-task-form-scroll { grid-template-columns: minmax(0,1fr); }
    .plk-task-form-main { padding: 17px 14px 22px; }
    .plk-task-form-side { padding: 16px 13px; }
    .plk-dialog-footer { padding: 11px 13px calc(11px + env(safe-area-inset-bottom)); }
    .plk-library-dialog { border-radius: 0; }
    .plk-library-summary { align-items: flex-start; flex-direction: column; gap: 3px; }
    .plk-library-summary-tools { width: 100%; justify-content: flex-start; flex-wrap: wrap; }
    .plk-library-drop-guide { white-space: normal; }
    .plk-library-dropzone { inset: 62px 7px 7px; border-radius: 14px; }
    .plk-library-drop-panel { padding: 20px 16px; }
    .plk-library-content .plk-empty-state { min-height: 260px; margin: 28px 12px; }
    .plk-image-reader--library { height: calc(100vh - 14px); border-radius: 16px; }
    .plk-image-reader-header { min-height: 0; grid-template-columns: minmax(0,1fr) 34px; grid-template-rows: auto auto; gap: 8px; padding: 9px 10px 8px 13px; }
    .plk-image-reader-title { grid-column: 1; grid-row: 1; }
    .plk-image-reader-header > .plk-icon-btn { grid-column: 2; grid-row: 1; }
    .plk-image-reader-tools { grid-column: 1 / -1; grid-row: 2; justify-content: flex-start; overflow-x: auto; scrollbar-width: none; }
    .plk-image-reader-tools::-webkit-scrollbar { display: none; }
    .plk-image-reader-canvas { padding: 12px; }
    .plk-image-reader-footer-actions em { display: none; }
}

@media (max-width: 520px) {
    .plk-pagebar h1 { font-size: 17px; }
    .plk-dialog { border-radius: 18px 18px 0 0; }
    .plk-dialog-header { min-height: 65px; padding: 13px 14px; }
    .plk-dialog-header h2 { font-size: 17px; }
    .plk-task-form-main > .plk-field--full:first-child input, .plk-task-tab-panel[data-task-tab-panel="details"] > .plk-field--full:first-child input { font-size: 13px; }
    .plk-report-body, .plk-settings-body { padding: 10px; }
    .plk-settings-card { padding: 13px; }
    .plk-theme-presets { gap: 7px; }
    .plk-unsaved-guard { padding: 13px; }
    .plk-unsaved-dialog { grid-template-columns: 38px minmax(0,1fr); gap: 11px; padding: 17px 14px 14px; border-radius: 15px; }
    .plk-unsaved-icon { width: 38px; height: 38px; border-radius: 11px; }
    .plk-unsaved-actions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
    .plk-unsaved-actions .plk-btn { justify-content: center; }
    .plk-unsaved-actions .plk-btn--primary { grid-column: 1 / -1; grid-row: 1; }
    .plk-library-drop-guide { display: none; }
    .plk-library-summary-btn { min-height: 28px; }
    .plk-image-viewer-counter { min-width: 48px; padding-inline: 6px; }
    .plk-image-reader-title strong { font-size: 11px; }
    .plk-image-reader-zoom select { width: 112px; }
    .plk-image-reader-maximize { width: 35px; justify-content: center; padding-inline: 5px; }
    .plk-image-reader-maximize span { display: none; }
    .plk-image-reader-footer { min-height: 55px; }
}

@media (prefers-reduced-motion: reduce) {
    .plk-dialog, .plk-unsaved-guard, .plk-unsaved-dialog, .plk-library-dropzone { animation: none !important; }
    .plk-btn, .plk-icon-btn, .plk-explorer-row, .plk-resource-card, .plk-card-progress i, .plk-library-upload-track i, .plk-image-card-open img, .plk-image-view-cue, .plk-image-reader-tool, .plk-image-reader-maximize { transition: none !important; }
}

@media (pointer: coarse) {
    .plk-resource-select-control { width: 32px; height: 32px; }
    .plk-resource-select-control span { width: 17px; height: 17px; }
    .plk-folder-open-hint { opacity: .94; transform: none; }
    .plk-folder-hint-desktop { display: none; }
    .plk-folder-hint-touch { display: inline; }
}

/* Task image references and shareable Library navigation. */
.plk-task-media-section { margin: 4px 0 17px; padding: 13px; border: 1px solid #dce5ef; border-radius: 12px; background: linear-gradient(145deg,#fbfdff,#f6f9fc); box-shadow: inset 0 1px 0 #fff; }
.plk-task-media-section > .plk-section-heading { align-items: flex-start; margin: 0 0 10px; }
.plk-task-media-section .plk-section-heading h3 span { display: inline-grid; min-width: 19px; height: 19px; place-items: center; margin-left: 4px; padding: 0 5px; border-radius: 999px; background: #e7eff9; color: #52667e; font-size: 8px; vertical-align: 1px; }
.plk-task-media-actions { display: flex; align-items: center; justify-content: flex-end; gap: 5px; flex-wrap: wrap; }
.plk-task-media-grid { display: grid; grid-template-columns: repeat(auto-fill,minmax(132px,1fr)); gap: 9px; }
.plk-task-media-card { position: relative; min-width: 0; overflow: hidden; border: 1px solid #d8e2ed; border-radius: 10px; background: #fff; box-shadow: 0 3px 10px rgba(15,23,42,.055); }
.plk-task-media-open { position: relative; display: block; width: 100%; aspect-ratio: 4 / 3; padding: 0; overflow: hidden; border: 0; border-bottom: 1px solid #e2e8f0; background: #e9eef5; cursor: zoom-in; }
.plk-task-media-open img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .18s ease,filter .18s ease; }
.plk-task-media-open > span { position: absolute; right: 7px; bottom: 7px; display: inline-flex; align-items: center; gap: 4px; padding: 4px 6px; border: 1px solid rgba(255,255,255,.45); border-radius: 999px; background: rgba(7,16,28,.72); color: #fff; font-size: 7px; font-weight: 760; opacity: 0; transform: translateY(3px); transition: opacity .16s ease,transform .16s ease; backdrop-filter: blur(8px); }
.plk-task-media-open > span svg { width: 11px; height: 11px; }
.plk-task-media-card:hover .plk-task-media-open img, .plk-task-media-open:focus-visible img { filter: brightness(.94); transform: scale(1.025); }
.plk-task-media-card:hover .plk-task-media-open > span, .plk-task-media-open:focus-visible > span { opacity: 1; transform: none; }
.plk-task-media-card > div:last-child { display: grid; min-width: 0; gap: 2px; padding: 8px 9px 9px; }
.plk-task-media-card > div strong { overflow: hidden; color: #233246; font-size: 9px; font-weight: 720; text-overflow: ellipsis; white-space: nowrap; }
.plk-task-media-card > div small { overflow: hidden; color: #718096; font-size: 7.25px; text-overflow: ellipsis; white-space: nowrap; }
.plk-task-media-remove { position: absolute; z-index: 3; top: 6px; right: 6px; display: grid; width: 25px; height: 25px; place-items: center; padding: 0; border: 1px solid rgba(255,255,255,.55); border-radius: 8px; background: rgba(7,16,28,.7); color: #fff; cursor: pointer; box-shadow: 0 4px 13px rgba(0,0,0,.22); backdrop-filter: blur(8px); }
.plk-task-media-remove:hover, .plk-task-media-remove:focus-visible { border-color: #fecaca; background: #c9362c; outline: 2px solid rgba(255,255,255,.5); }
.plk-task-media-remove svg { width: 13px; height: 13px; }
.plk-task-media-empty { display: flex; min-height: 74px; grid-column: 1 / -1; align-items: center; justify-content: center; gap: 10px; padding: 13px; border: 1px dashed #cad6e4; border-radius: 9px; background: rgba(255,255,255,.72); color: #7a8ba0; text-align: left; }
.plk-task-media-empty > svg { width: 23px; height: 23px; color: var(--plk-blue); }
.plk-task-media-empty > span { display: grid; gap: 2px; }
.plk-task-media-empty strong { color: #34475d; font-size: 9.5px; }
.plk-task-media-empty small { color: #74859a; font-size: 8px; }

.plk-task-image-viewer { position: fixed; z-index: 100170; inset: 0; display: grid; place-items: center; padding: 18px; background: rgba(2,8,18,.82); backdrop-filter: blur(10px); }
.plk-task-image-viewer.is-maximized { padding: 0; }

.plk-task-library-picker { position: fixed; z-index: 100160; inset: 0; display: grid; place-items: center; padding: 20px; background: rgba(7,14,29,.66); backdrop-filter: blur(9px); }
.plk-task-library-picker > section { display: flex; width: min(1120px,100%); height: min(760px,calc(100vh - 40px)); flex-direction: column; overflow: hidden; border: 1px solid #d9e3ee; border-radius: 18px; background: #f5f7fa; box-shadow: 0 36px 100px rgba(3,10,24,.42); }
.plk-task-library-picker > section > header { display: flex; min-height: 66px; align-items: center; justify-content: space-between; gap: 12px; padding: 11px 14px 11px 17px; border-bottom: 1px solid #dce4ed; background: #fff; }
.plk-task-library-picker header small { display: block; color: #718096; font-size: 7px; font-weight: 780; letter-spacing: .1em; text-transform: uppercase; }
.plk-task-library-picker header h2 { margin: 2px 0 0; color: #18283b; font-size: 17px; letter-spacing: -.025em; }
.plk-task-library-picker-tools { display: grid; grid-template-columns: auto minmax(120px,1fr) minmax(180px,300px) auto; align-items: center; gap: 8px; padding: 9px 12px; border-bottom: 1px solid #dce4ed; background: #fff; }
.plk-library-history-controls { display: inline-flex; align-items: center; gap: 3px; flex: 0 0 auto; }
.plk-library-history-controls .plk-icon-btn { width: 29px; min-width: 29px; min-height: 29px; padding: 5px; border-radius: 7px; }
.plk-library-history-controls .plk-icon-btn:disabled { cursor: default; opacity: .32; }
.plk-library-pathbar { display: flex; min-width: 0; align-items: center; gap: 7px; flex: 1 1 auto; }
.plk-task-library-crumbs { display: flex; min-width: 0; align-items: center; gap: 3px; overflow-x: auto; }
.plk-task-library-crumbs button { padding: 4px 5px; border: 0; border-radius: 5px; background: transparent; color: #52657a; cursor: pointer; font-size: 8.5px; font-weight: 680; white-space: nowrap; }
.plk-task-library-crumbs button:hover { background: #eaf2ff; color: var(--plk-blue); }
.plk-task-library-crumbs span { color: #9aa8b8; font-size: 9px; }
.plk-task-library-picker-tools .plk-search { min-width: 0; }
.plk-task-library-picker-tools .plk-search input { width: 100%; min-height: 32px; margin: 0; padding: 5px 8px 5px 30px; border: 1px solid #d7e0ea; border-radius: 8px; box-shadow: none; font-size: 9px; }
.plk-task-library-picker-tools .plk-btn.is-active { border-color: var(--plk-blue); background: #eaf2ff; color: var(--plk-blue); }
.plk-task-library-results { display: grid; min-height: 0; grid-template-columns: repeat(auto-fill,minmax(178px,1fr)); grid-auto-rows: max-content; align-items: start; align-content: start; gap: 10px; padding: 13px; flex: 1 1 auto; overflow-y: auto; }
.plk-task-library-folder { display: grid; min-height: 176px; align-self: start; place-items: center; align-content: center; gap: 6px; padding: 12px; border: 1px solid #d8e2ed; border-radius: 12px; background: #fff; color: #34475d; cursor: pointer; box-shadow: 0 3px 11px rgba(15,23,42,.045); }
.plk-task-library-folder:hover, .plk-task-library-folder:focus-visible { border-color: #9dbbe5; background: #f7fbff; outline: 2px solid rgba(0,107,255,.15); transform: translateY(-1px); }
.plk-task-library-folder > span { display: grid; width: 64px; height: 56px; place-items: center; border-radius: 15px; background: linear-gradient(145deg,#edf5ff,#e4edf8); color: var(--plk-blue); }
.plk-task-library-folder svg { width: 34px; height: 34px; }
.plk-task-library-folder strong { max-width: 100%; overflow: hidden; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.plk-task-library-folder small { color: #7a8ba0; font-size: 7.5px; }
.plk-task-library-image { display: grid; min-width: 0; height: auto !important; grid-template-rows: auto auto auto; align-self: start; overflow: hidden; border: 1px solid #d8e2ed; border-radius: 12px; background: #fff; box-shadow: 0 3px 11px rgba(15,23,42,.045); }
.plk-task-library-image.is-linked { border-color: color-mix(in srgb,var(--plk-blue) 55%,#d8e2ed); box-shadow: 0 0 0 3px color-mix(in srgb,var(--plk-blue) 10%,transparent); }
.plk-task-library-preview { display: block; width: 100%; aspect-ratio: 1 / 1; padding: 0; overflow: hidden; border: 0; border-bottom: 1px solid #e2e8f0; background: #e8edf3; cursor: zoom-in; }
.plk-task-library-preview img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .16s ease; }
.plk-task-library-preview:hover img { transform: scale(1.025); }
.plk-task-library-item-copy { display: grid !important; min-width: 0; gap: 3px; padding: 8px 8px 5px; visibility: visible !important; }
.plk-task-library-image strong, .plk-task-library-image small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.plk-task-library-image strong { color: #26374b; font-size: 9px; }
.plk-task-library-image small { color: #7a8ba0; font-size: 7px; }
.plk-task-library-item-action { display: block !important; width: 100%; box-sizing: border-box; visibility: visible !important; }
.plk-task-library-image > .plk-task-library-item-action { padding: 0 8px 8px; }
.plk-task-library-image .plk-btn { display: inline-flex !important; width: 100%; min-height: 31px; margin: 0; visibility: visible !important; }
.plk-task-library-picker > section > footer { display: flex; min-height: 56px; align-items: center; justify-content: space-between; gap: 12px; padding: 9px 13px; border-top: 1px solid #dce4ed; background: #fff; color: #6c7d91; font-size: 8.5px; }
.plk-task-library-picker footer strong { color: var(--plk-blue); }
.plk-task-library-preview-overlay { position: fixed; z-index: 100190; inset: 0; display: grid; place-items: center; padding: 20px; background: rgba(2,8,18,.86); backdrop-filter: blur(10px); }
.plk-task-library-preview-overlay figure { position: relative; display: grid; max-width: min(1200px,100%); max-height: calc(100vh - 40px); gap: 8px; place-items: center; margin: 0; }
.plk-task-library-preview-overlay img { display: block; max-width: 100%; max-height: calc(100vh - 84px); border-radius: 8px; object-fit: contain; box-shadow: 0 30px 90px rgba(0,0,0,.55); }
.plk-task-library-preview-overlay .plk-icon-btn { position: absolute; z-index: 2; top: 8px; right: 8px; border-color: rgba(255,255,255,.3); background: rgba(7,16,28,.72); color: #fff; }
.plk-task-library-preview-overlay figcaption { color: #dbe6f2; font-size: 9px; }

@media (max-width: 782px) {
    .plk-task-media-section > .plk-section-heading { align-items: stretch; flex-direction: column; }
    .plk-task-media-actions { justify-content: flex-start; }
    .plk-task-media-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .plk-task-image-viewer, .plk-task-library-picker { padding: 7px; }
    .plk-task-image-viewer.is-maximized { padding: 0; }
    .plk-image-reader--task, .plk-task-library-picker > section { height: calc(100vh - 14px); border-radius: 14px; }
    .plk-task-library-picker-tools { grid-template-columns: auto minmax(0,1fr) auto; }
    .plk-task-library-picker-tools .plk-search { grid-column: 1 / -1; grid-row: 2; }
    .plk-task-library-results { grid-template-columns: repeat(2,minmax(0,1fr)); padding: 9px; }
    .plk-library-toolbar { align-items: stretch; }
    .plk-library-pathbar { width: 100%; }
}

@media (max-width: 520px) {
    .plk-task-media-grid, .plk-task-library-results { grid-template-columns: minmax(0,1fr); }
    .plk-task-media-actions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); width: 100%; }
    .plk-task-media-actions .plk-btn { white-space: normal; }
    .plk-task-library-picker-tools { grid-template-columns: auto minmax(0,1fr); }
    .plk-task-library-picker-tools > .plk-btn { grid-column: 1 / -1; }
    .plk-task-library-picker > section > footer { align-items: stretch; flex-direction: column; }
    .plk-task-library-picker footer .plk-btn { width: 100%; }
}

/* Live board presence and safe background reconciliation. */
.plk-live-presence { position: relative; flex: 0 0 auto; }
.plk-live-trigger { display: inline-flex; min-height: 36px; align-items: center; gap: 7px; margin: 0; padding: 3px 8px 3px 5px; border: 1px solid color-mix(in srgb,var(--plk-line) 86%,transparent); border-radius: 10px; background: color-mix(in srgb,var(--plk-white) 94%,var(--plk-soft)); color: var(--plk-ink); cursor: pointer; box-shadow: 0 2px 8px rgba(15,23,42,.035); }
.plk-live-trigger:hover, .plk-live-trigger:focus-visible { border-color: color-mix(in srgb,var(--plk-blue) 34%,var(--plk-line)); background: color-mix(in srgb,var(--plk-blue) 5%,var(--plk-white)); outline: 2px solid color-mix(in srgb,var(--plk-blue) 18%,transparent); outline-offset: 1px; }
.plk-live-avatars { display: flex; align-items: center; padding-left: 5px; }
.plk-live-avatar { display: inline-grid; width: 25px; height: 25px; place-items: center; margin-left: -5px; overflow: hidden; border: 2px solid var(--plk-white); border-radius: 50%; background: color-mix(in srgb,var(--plk-blue) 12%,var(--plk-soft)); color: var(--plk-blue); font-size: 7.5px; font-weight: 780; box-shadow: 0 2px 7px rgba(15,23,42,.12); }
.plk-live-avatar img { width: 100%; height: 100%; object-fit: cover; }
.plk-live-avatar--status svg { width: 13px; height: 13px; }
.plk-live-copy { display: grid; min-width: 55px; line-height: 1.1; text-align: left; }
.plk-live-copy strong { color: var(--plk-ink); font-size: 8.5px; font-weight: 750; }
.plk-live-copy small { margin-top: 2px; color: var(--plk-muted); font-size: 6.8px; }
.plk-live-dot { width: 7px; height: 7px; flex: 0 0 7px; border: 2px solid color-mix(in srgb,#12b76a 18%,var(--plk-white)); border-radius: 50%; background: #12b76a; box-shadow: 0 0 0 3px rgba(18,183,106,.1); }
.plk-live-presence.has-update .plk-live-trigger { border-color: color-mix(in srgb,#e59a16 45%,var(--plk-line)); background: color-mix(in srgb,#fff4d9 42%,var(--plk-white)); }
.plk-live-presence.has-update .plk-live-dot { border-color: color-mix(in srgb,#f3aa1c 20%,var(--plk-white)); background: #e59a16; box-shadow: 0 0 0 3px rgba(229,154,22,.13); }
.plk-live-popover { position: absolute; z-index: 1000; top: calc(100% + 9px); right: 0; width: min(300px,calc(100vw - 24px)); overflow: hidden; border: 1px solid var(--plk-line); border-radius: 13px; background: var(--plk-white); color: var(--plk-ink); box-shadow: 0 22px 60px rgba(15,23,42,.2); }
.plk-live-popover > header { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 13px; border-bottom: 1px solid var(--plk-line); background: color-mix(in srgb,var(--plk-soft) 64%,var(--plk-white)); }
.plk-live-popover > header span { display: grid; gap: 1px; }
.plk-live-popover > header strong { font-size: 10px; }
.plk-live-popover > header small { color: var(--plk-muted); font-size: 7.5px; }
.plk-live-popover > header b { display: grid; min-width: 24px; height: 24px; place-items: center; border-radius: 999px; background: color-mix(in srgb,#12b76a 13%,var(--plk-white)); color: #087a55; font-size: 8px; }
.plk-live-popover ul { display: grid; max-height: 250px; gap: 0; margin: 0; padding: 5px; overflow-y: auto; list-style: none; }
.plk-live-popover li { display: grid; grid-template-columns: 32px minmax(0,1fr) 8px; align-items: center; gap: 8px; margin: 0; padding: 7px 8px; border-radius: 8px; }
.plk-live-popover li:hover { background: color-mix(in srgb,var(--plk-blue) 5%,var(--plk-white)); }
.plk-live-popover li .plk-live-avatar { width: 30px; height: 30px; margin: 0; }
.plk-live-popover li > span:nth-child(2) { display: grid; min-width: 0; gap: 1px; }
.plk-live-popover li strong { overflow: hidden; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.plk-live-popover li small { color: var(--plk-muted); font-size: 7.2px; }
.plk-live-popover li > i { width: 7px; height: 7px; border-radius: 50%; background: #12b76a; box-shadow: 0 0 0 3px rgba(18,183,106,.1); }
.plk-live-popover li.plk-live-empty { display: block; padding: 17px 10px; color: var(--plk-muted); font-size: 8.5px; text-align: center; }
.plk-live-popover > p { margin: 0; padding: 9px 12px 11px; border-top: 1px solid var(--plk-line); color: var(--plk-muted); font-size: 7.5px; line-height: 1.45; }
.plk-board-theme-dark .plk-live-trigger, .plk-board-theme-dark .plk-live-popover { background: var(--plk-card-background); color: var(--plk-board-ink); }
.plk-board-theme-dark .plk-live-trigger:hover, .plk-board-theme-dark .plk-live-trigger:focus-visible { background: color-mix(in srgb,var(--plk-blue) 11%,var(--plk-card-background)); }
.plk-board-theme-dark .plk-live-copy strong, .plk-board-theme-dark .plk-live-popover { color: var(--plk-board-ink); }
.plk-board-theme-dark .plk-live-copy small, .plk-board-theme-dark .plk-live-popover small, .plk-board-theme-dark .plk-live-popover > p { color: var(--plk-board-muted); }
.plk-board-theme-dark .plk-live-avatar { border-color: var(--plk-card-background); background: var(--plk-board-soft); }
.plk-board-theme-dark .plk-live-popover > header { background: var(--plk-stage-background); }
.plk-board-theme-dark .plk-live-presence.has-update .plk-live-trigger { background: color-mix(in srgb,#e59a16 13%,var(--plk-card-background)); }

/* Universal task references and task-image drop target. */
.plk-task-media-section { position: relative; transition: border-color .16s ease, box-shadow .16s ease, background .16s ease; }
.plk-task-media-drop-cue { display: flex; min-height: 38px; align-items: center; justify-content: center; gap: 6px; margin-top: 9px; padding: 7px 10px; border: 1px dashed #c5d2e1; border-radius: 8px; background: rgba(255,255,255,.55); color: #667a91; font-size: 7.7px; transition: border-color .16s ease, background .16s ease, color .16s ease, transform .16s ease; }
.plk-task-media-drop-cue svg { width: 14px; height: 14px; color: var(--plk-blue); }
.plk-task-media-drop-cue strong { color: #34475d; font-size: 8px; }
.plk-task-media-section.is-file-dragging { border-color: color-mix(in srgb,var(--plk-blue) 58%,#cbd5e1); background: color-mix(in srgb,var(--plk-blue) 6%,#f8fbff); box-shadow: 0 0 0 4px color-mix(in srgb,var(--plk-blue) 11%,transparent), inset 0 1px 0 #fff; }
.plk-task-media-section.is-file-dragging .plk-task-media-drop-cue { border-color: var(--plk-blue); background: color-mix(in srgb,var(--plk-blue) 11%,#fff); color: var(--plk-blue); transform: translateY(-1px); }
.plk-task-reference-open { display: grid; width: 100%; min-height: 132px; place-items: center; align-content: center; gap: 5px; padding: 14px; border: 0; border-bottom: 1px solid #e2e8f0; background: linear-gradient(145deg,#f6f9fd,#edf3f9); color: #45627e; cursor: pointer; text-decoration: none; }
.plk-task-reference-open:not(button):not(a) { cursor: default; }
.plk-task-reference-open > span { display: grid; width: 48px; height: 48px; place-items: center; border-radius: 13px; background: #fff; color: var(--plk-blue); box-shadow: 0 7px 18px rgba(15,23,42,.09); }
.plk-task-reference-open svg { width: 25px; height: 25px; }
.plk-task-reference-open b { color: #2c4158; font-size: 8.5px; }
.plk-task-reference-open small { color: #718096; font-size: 7px; }
.plk-task-reference-open:hover, .plk-task-reference-open:focus-visible { background: color-mix(in srgb,var(--plk-blue) 8%,#f6f9fd); outline: 2px solid color-mix(in srgb,var(--plk-blue) 24%,transparent); outline-offset: -2px; }
.plk-task-library-folder { align-content: stretch; padding: 0; cursor: default; overflow: hidden; }
.plk-task-library-folder.is-linked { border-color: color-mix(in srgb,var(--plk-blue) 55%,#d8e2ed); box-shadow: 0 0 0 3px color-mix(in srgb,var(--plk-blue) 10%,transparent); }
.plk-task-library-folder-open { display: grid; min-height: 134px; place-items: center; align-content: center; gap: 5px; padding: 12px; border: 0; background: transparent; color: #34475d; cursor: pointer; }
.plk-task-library-folder-open:hover, .plk-task-library-folder-open:focus-visible { background: #f7fbff; outline: 2px solid rgba(0,107,255,.15); outline-offset: -2px; }
.plk-task-library-folder-open > span { display: grid; width: 64px; height: 56px; place-items: center; border-radius: 15px; background: linear-gradient(145deg,#edf5ff,#e4edf8); color: var(--plk-blue); }
.plk-task-library-folder-open svg { width: 34px; height: 34px; }
.plk-task-library-folder-open strong { max-width: 100%; overflow: hidden; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.plk-task-library-folder-open small { color: #7a8ba0; font-size: 7.5px; }
.plk-task-library-folder > .plk-task-library-item-action { padding: 8px; border-top: 1px solid #e2e8f0; }
.plk-task-library-folder > .plk-task-library-item-action .plk-btn { width: 100%; }
.plk-task-library-resource-preview { display: grid; width: 100%; aspect-ratio: 1 / 1; place-items: center; align-content: center; gap: 7px; border-bottom: 1px solid #e2e8f0; background: linear-gradient(145deg,#f4f8fc,#e8eff7); color: #55708d; }
.plk-task-library-resource-preview > span { display: grid; width: 58px; height: 58px; place-items: center; border-radius: 16px; background: #fff; color: var(--plk-blue); box-shadow: 0 8px 22px rgba(15,23,42,.09); }
.plk-task-library-resource-preview svg { width: 29px; height: 29px; }
.plk-task-library-resource-preview b { font-size: 8px; letter-spacing: .03em; }

@media (max-width: 1180px) {
    .plk-live-copy small { display: none; }
}
@media (max-width: 782px) {
    .plk-live-trigger { min-width: 36px; padding: 4px 6px; }
    .plk-live-copy { display: none; }
    .plk-live-popover { right: -52px; }
    .plk-task-media-drop-cue span { display: none; }
}

/* Persistent task conversation rail and replyable notification inbox. */
.plk-task-dialog { width: min(1520px,calc(100vw - 28px)); height: min(940px,calc(100vh - 28px)); max-height: none; }
.plk-task-dialog .plk-dialog-header h2 { max-width: min(760px,52vw); }
.plk-task-form-scroll { overflow: hidden; }
.plk-task-form-scroll.has-chat { grid-template-columns: minmax(500px,1fr) 255px minmax(320px,360px); }
.plk-task-form-main, .plk-task-form-side { min-height: 0; overflow-y: auto; overscroll-behavior: contain; scrollbar-gutter: stable; }
.plk-task-form-side { min-width: 0; }
.plk-task-chat-panel { display: flex; min-width: 0; min-height: 0; flex-direction: column; overflow: hidden; border-left: 1px solid #e1e7ef; background: linear-gradient(180deg,#fff 0%,#f9fbfe 100%); }
.plk-task-chat-header { display: flex; min-height: 73px; flex: 0 0 auto; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 15px 12px; border-bottom: 1px solid #e5eaf1; background: rgba(255,255,255,.92); }
.plk-task-chat-header > div { display: grid; min-width: 0; gap: 2px; }
.plk-task-chat-header span { display: flex; align-items: center; gap: 5px; color: #66758a; font-size: 7.5px; font-weight: 760; letter-spacing: .1em; text-transform: uppercase; }
.plk-task-chat-header span i { width: 7px; height: 7px; border-radius: 50%; background: #18a66b; box-shadow: 0 0 0 3px rgba(24,166,107,.12); }
.plk-task-chat-header h3 { margin: 0; color: #172235; font-size: 15px; font-weight: 770; letter-spacing: -.02em; }
.plk-task-chat-header > strong { flex: 0 0 auto; padding: 4px 7px; border: 1px solid #dce5ef; border-radius: 999px; background: #f7f9fc; color: #657286; font-size: 8px; font-weight: 700; }
.plk-task-chat-panel .plk-comments-list { display: grid; min-height: 0; flex: 1 1 auto; align-content: start; gap: 9px; padding: 13px 12px 18px; overflow-y: auto; overscroll-behavior: contain; scrollbar-gutter: stable; }
.plk-task-chat-panel .plk-comment, .plk-inbox-thread-list .plk-comment { grid-template-columns: 30px minmax(0,1fr); gap: 8px; padding: 9px 10px; border-color: #e1e7ef; border-radius: 12px; background: #fff; box-shadow: 0 3px 10px rgba(15,23,42,.045); }
.plk-task-chat-panel .plk-comment > .plk-avatar, .plk-inbox-thread-list .plk-comment > .plk-avatar { width: 29px; height: 29px; flex-basis: 29px; }
.plk-task-chat-panel .plk-comment header, .plk-inbox-thread-list .plk-comment header { flex-wrap: wrap; column-gap: 6px; row-gap: 2px; }
.plk-task-chat-panel .plk-comment header strong, .plk-inbox-thread-list .plk-comment header strong { color: #172235; font-size: 10px; }
.plk-task-chat-panel .plk-comment header time, .plk-inbox-thread-list .plk-comment header time { font-size: 7.5px; }
.plk-task-chat-panel .plk-comment p, .plk-inbox-thread-list .plk-comment p { margin-top: 5px; color: #36445a; font-size: 10px; line-height: 15px; overflow-wrap: anywhere; }
.plk-task-chat-panel .plk-comment .plk-comment-reply-context p, .plk-inbox-thread-list .plk-comment .plk-comment-reply-context p { margin: 0; color: #66758a; font-size: 9px; line-height: 13px; }
.plk-task-chat-panel .plk-comment.is-reply, .plk-inbox-thread-list .plk-comment.is-reply { margin-left: 0; border-left: 3px solid #7ba9eb; background: #f9fbff; }
.plk-comments-empty { display: grid; min-height: 150px; place-items: center; align-content: center; gap: 5px; border: 0; background: transparent; }
.plk-comments-empty span { display: grid; width: 42px; height: 42px; place-items: center; margin-bottom: 4px; border-radius: 50%; background: #edf4ff; color: var(--plk-blue); }
.plk-comments-empty span svg { width: 20px; height: 20px; }
.plk-comments-empty strong { color: #344054; font-size: 10.5px; }
.plk-comments-empty small { color: #7a8698; font-size: 8.5px; }
.plk-task-chat-panel .plk-comment-compose { display: grid; flex: 0 0 auto; gap: 8px; margin: 0; padding: 12px; border-top: 1px solid #e1e7ef; background: #fff; box-shadow: 0 -10px 26px rgba(15,23,42,.055); }
.plk-task-chat-panel .plk-comment-compose textarea { width: 100%; min-height: 72px; padding: 10px 11px; border-color: #ced8e5; border-radius: 10px; background: #fbfcfe; font-size: 10px; line-height: 15px; resize: none; }
.plk-task-chat-panel .plk-comment-compose textarea:focus, .plk-inbox-compose textarea:focus { border-color: var(--plk-blue); outline: 0; box-shadow: var(--plk-focus); }
.plk-replying-to { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 8px; padding: 7px 8px; border: 1px solid #cfe0f8; border-left: 3px solid var(--plk-blue); border-radius: 8px; background: #f4f8fe; color: #5f6d80; }
.plk-replying-to[hidden] { display: none; }
.plk-replying-to > span { display: grid; min-width: 0; gap: 1px; }
.plk-replying-to strong { color: #24528f; font-size: 8.5px; }
.plk-replying-to small { overflow: hidden; color: #66758a; font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }
.plk-replying-to button { display: grid; width: 24px; height: 24px; place-items: center; padding: 0; border: 0; border-radius: 6px; background: transparent; color: #6d7c91; cursor: pointer; }
.plk-replying-to button:hover { background: #e4eefb; color: #244b83; }
.plk-replying-to button svg { width: 12px; height: 12px; }
.plk-comment-compose-row { display: grid; grid-template-columns: minmax(0,auto) minmax(80px,1fr) auto; align-items: center; gap: 7px; }
.plk-comment-compose-row select { min-width: 0; }
.plk-comment-compose-row small { color: #8a95a5; font-size: 7.5px; text-align: right; white-space: nowrap; }
.plk-comment-compose-row .plk-btn { min-height: 32px; padding-inline: 12px; }
.plk-chat-readonly { padding: 12px; border-top: 1px solid #e4e9f0; background: #fafbfc; color: #7a8698; font-size: 9px; text-align: center; }

.plk-notifications-dialog { width: min(1140px,calc(100vw - 28px)); height: min(780px,calc(100vh - 28px)); max-height: none; }
.plk-inbox-dialog-header { align-items: center; }
.plk-inbox-header-actions { display: flex; align-items: center; gap: 8px; }
.plk-inbox-board-filter { display: flex; align-items: center; gap: 6px; color: #69778b; font-size: 8px; font-weight: 700; }
.plk-inbox-board-filter select { min-width: 150px; min-height: 34px; margin: 0; padding: 6px 30px 6px 9px; border: 1px solid #d4dde8; border-radius: 8px; background-color: #fff; color: #26354a; font-size: 9px; }
.plk-notifications-body { min-height: 0; flex: 1 1 auto; overflow: hidden; background: #fff; }
.plk-inbox-layout { display: grid; width: 100%; height: 100%; min-height: 0; grid-template-columns: 340px minmax(0,1fr); }
.plk-inbox-sidebar { display: flex; min-width: 0; min-height: 0; flex-direction: column; overflow: hidden; border-right: 1px solid #e1e7ef; background: #f8fafc; }
.plk-inbox-sidebar-heading { display: flex; min-height: 64px; align-items: center; justify-content: space-between; gap: 10px; padding: 12px 14px; border-bottom: 1px solid #e2e8f0; background: #f4f7fb; }
.plk-inbox-sidebar-heading > div { display: grid; gap: 2px; }
.plk-inbox-sidebar-heading strong { color: #253248; font-size: 10.5px; }
.plk-inbox-sidebar-heading small { color: #7b8798; font-size: 8px; }
.plk-inbox-sidebar-heading > span { display: grid; min-width: 23px; height: 23px; place-items: center; border: 1px solid #d7e0eb; border-radius: 999px; background: #fff; color: #66758a; font-size: 8px; font-weight: 720; }
.plk-inbox-conversation-list { min-height: 0; flex: 1 1 auto; overflow-y: auto; overscroll-behavior: contain; }
.plk-inbox-conversation { position: relative; display: grid; width: 100%; grid-template-columns: 34px minmax(0,1fr); align-items: start; gap: 9px; padding: 12px 13px; border: 0; border-bottom: 1px solid #e5eaf0; background: transparent; color: #344054; cursor: pointer; text-align: left; transition: background .15s ease,box-shadow .15s ease; }
.plk-inbox-conversation:hover { background: #fff; }
.plk-inbox-conversation.is-selected { z-index: 1; background: #fff; box-shadow: inset 3px 0 var(--plk-blue),0 5px 16px rgba(15,23,42,.05); }
.plk-inbox-conversation.is-unread { background: #eef5ff; }
.plk-inbox-conversation.is-unread.is-selected { background: #fff; }
.plk-inbox-conversation-icon { display: grid; width: 32px; height: 32px; place-items: center; border: 1px solid #d7e5f8; border-radius: 10px; background: #fff; color: var(--plk-blue); box-shadow: 0 2px 7px rgba(15,23,42,.04); }
.plk-inbox-conversation-icon svg { width: 15px; height: 15px; }
.plk-inbox-conversation-copy { display: grid; min-width: 0; gap: 2px; }
.plk-inbox-conversation-copy > span { display: flex; min-width: 0; align-items: center; gap: 7px; }
.plk-inbox-conversation-copy strong { min-width: 0; flex: 1 1 auto; overflow: hidden; color: #233047; font-size: 10px; font-weight: 720; text-overflow: ellipsis; white-space: nowrap; }
.plk-inbox-conversation-copy em { display: grid; min-width: 18px; height: 18px; place-items: center; border-radius: 999px; background: var(--plk-blue); color: #fff; font-size: 7.5px; font-style: normal; font-weight: 760; }
.plk-inbox-conversation-copy small { overflow: hidden; color: #627086; font-size: 8.5px; text-overflow: ellipsis; white-space: nowrap; }
.plk-inbox-conversation-copy time { color: #929dad; font-size: 7.5px; }
.plk-inbox-thread { display: flex; min-width: 0; min-height: 0; flex-direction: column; overflow: hidden; background: linear-gradient(180deg,#fff,#fbfcfe); }
.plk-inbox-thread-empty { display: grid; min-height: 100%; place-items: center; align-content: center; gap: 6px; padding: 28px; color: #7a8698; text-align: center; }
.plk-inbox-thread-empty > span { display: grid; width: 54px; height: 54px; place-items: center; margin-bottom: 6px; border-radius: 18px; background: #edf4ff; color: var(--plk-blue); box-shadow: 0 8px 24px rgba(0,107,255,.1); }
.plk-inbox-thread-empty svg { width: 26px; height: 26px; }
.plk-inbox-thread-empty h3 { margin: 0; color: #26344a; font-size: 15px; }
.plk-inbox-thread-empty p { margin: 0; font-size: 9.5px; }
.plk-inbox-thread-header { display: flex; min-height: 74px; flex: 0 0 auto; align-items: center; justify-content: space-between; gap: 16px; padding: 13px 16px; border-bottom: 1px solid #e3e8ef; background: #fff; }
.plk-inbox-thread-header > div { display: grid; min-width: 0; gap: 2px; }
.plk-inbox-thread-header span { color: #778397; font-size: 7.5px; font-weight: 760; letter-spacing: .1em; text-transform: uppercase; }
.plk-inbox-thread-header h3 { margin: 0; overflow: hidden; color: #172235; font-size: 14px; font-weight: 760; letter-spacing: -.02em; text-overflow: ellipsis; white-space: nowrap; }
.plk-inbox-thread-header small { color: #7c8797; font-size: 8px; }
.plk-inbox-thread-header small b { font-weight: 650; }
.plk-inbox-thread-list { display: grid; min-height: 0; flex: 1 1 auto; align-content: start; gap: 10px; padding: 16px 18px 20px; overflow-y: auto; overscroll-behavior: contain; scrollbar-gutter: stable; background: #f8fafc; }
.plk-inbox-compose { display: grid; flex: 0 0 auto; gap: 8px; padding: 12px 16px 13px; border-top: 1px solid #dfe5ed; background: #fff; box-shadow: 0 -12px 28px rgba(15,23,42,.055); }
.plk-inbox-compose textarea { width: 100%; min-height: 70px; margin: 0; padding: 10px 11px; border: 1px solid #ccd7e4; border-radius: 10px; background: #fbfcfe; box-shadow: none; font-size: 10px; line-height: 15px; resize: none; }
.plk-inbox-compose-row { display: flex; align-items: center; justify-content: flex-end; gap: 10px; }
.plk-inbox-compose small { color: #8b96a6; font-size: 7.5px; }
.plk-inbox-compose .plk-btn { min-height: 33px; }

@media (max-width: 1180px) {
    .plk-task-form-scroll.has-chat { grid-template-columns: minmax(430px,1fr) 220px 300px; }
    .plk-task-form-side { padding-inline: 12px; }
}

@media (max-width: 1000px) {
    .plk-task-form-scroll, .plk-task-form-scroll.has-chat { display: block; overflow-y: auto; }
    .plk-task-form-main, .plk-task-form-side { overflow: visible; }
    .plk-task-form-side { border-top: 1px solid var(--plk-line); border-left: 0; }
    .plk-task-chat-panel { min-height: 500px; border-top: 1px solid var(--plk-line); border-left: 0; }
    .plk-task-chat-panel .plk-comments-list { min-height: 280px; max-height: 440px; flex-basis: 340px; }
}

@media (max-width: 782px) {
    .plk-task-dialog, .plk-notifications-dialog { width: 100%; height: 96vh; max-height: 96vh; }
    .plk-task-dialog .plk-dialog-header h2 { max-width: 72vw; }
    .plk-task-chat-panel { min-height: 470px; }
    .plk-comment-compose-row { grid-template-columns: minmax(0,1fr) auto; }
    .plk-comment-compose-row small { display: none; }
    .plk-inbox-layout { grid-template-columns: minmax(0,1fr); grid-template-rows: minmax(160px,34%) minmax(0,1fr); }
    .plk-inbox-sidebar { border-right: 0; border-bottom: 1px solid #e1e7ef; }
    .plk-inbox-sidebar-heading { min-height: 52px; padding: 9px 11px; }
    .plk-inbox-thread-header { min-height: 62px; padding: 10px 12px; }
    .plk-inbox-thread-list { padding: 12px 10px 16px; }
    .plk-inbox-compose { padding: 10px; }
    .plk-inbox-compose small { display: none; }
    .plk-inbox-dialog-header { align-items: flex-start; }
    .plk-inbox-header-actions { flex-wrap: wrap; justify-content: flex-end; }
    .plk-inbox-board-filter span { display: none; }
    .plk-inbox-board-filter select { min-width: 126px; }
}

/* Per-person unread comment signal on task cards. */
.plk-card.has-unread-comments { border-color: color-mix(in srgb,var(--plk-blue) 48%,var(--plk-board-line,#dce2e9)); box-shadow: 0 0 0 2px color-mix(in srgb,var(--plk-blue) 9%,transparent),0 8px 20px rgba(15,23,42,.075); }
.plk-card.has-unread-comments.has-cover { box-shadow: inset 0 0 0 1px color-mix(in srgb,var(--plk-blue) 48%,var(--plk-board-line,#dce2e9)),0 0 0 2px color-mix(in srgb,var(--plk-blue) 9%,transparent),0 8px 20px rgba(15,23,42,.075); }
.plk-meta--new-comment { min-height: 20px; gap: 4px; padding: 2px 7px 2px 5px; border: 1px solid color-mix(in srgb,var(--plk-blue) 30%,#d8e5f7); border-radius: 999px; background: linear-gradient(180deg,#f1f7ff,#e5f0ff); color: color-mix(in srgb,var(--plk-blue) 86%,#173a69); box-shadow: 0 3px 9px rgba(0,107,255,.12); font-weight: 760; }
.plk-meta--new-comment svg { width: 12px; height: 12px; }
.plk-meta--new-comment b { display: inline-flex; align-items: center; gap: 4px; font-size: 7.5px; font-weight: 780; letter-spacing: .025em; text-transform: uppercase; }
.plk-meta--new-comment b::before { width: 6px; height: 6px; flex: 0 0 6px; border-radius: 50%; background: #1684ff; box-shadow: 0 0 0 3px rgba(22,132,255,.13); content: ""; }
.plk-board-theme-dark .plk-card.has-unread-comments { border-color: color-mix(in srgb,var(--plk-blue) 62%,var(--plk-board-line)); box-shadow: 0 0 0 2px color-mix(in srgb,var(--plk-blue) 15%,transparent),0 10px 22px rgba(0,0,0,.24); }
.plk-board-theme-dark .plk-meta--new-comment { border-color: color-mix(in srgb,var(--plk-blue) 42%,var(--plk-board-line)); background: color-mix(in srgb,var(--plk-blue) 18%,var(--plk-card-background)); color: var(--plk-board-ink); }

/* Personal board filter: assigned tasks plus watched tasks. */
.plk-my-tasks-toggle { position: relative; display: inline-flex; min-height: 36px; align-items: center; gap: 7px; padding: 4px 9px 4px 7px; border: 1px solid var(--plk-line); border-radius: 9px; background: #fff; color: var(--plk-muted); cursor: pointer; box-shadow: 0 1px 2px rgba(15,23,42,.035); transition: border-color .15s ease,background .15s ease,box-shadow .15s ease; white-space: nowrap; }
.plk-my-tasks-toggle:hover { border-color: color-mix(in srgb,var(--plk-blue) 48%,var(--plk-line)); }
.plk-my-tasks-toggle:focus-within { outline: 2px solid color-mix(in srgb,var(--plk-blue) 30%,transparent); outline-offset: 1px; }
.plk-my-tasks-toggle > input { position: absolute; opacity: 0; pointer-events: none; }
.plk-my-tasks-toggle .plk-switch { width: 30px; height: 18px; flex-basis: 30px; }
.plk-my-tasks-toggle .plk-switch::after { top: 3px; left: 3px; width: 12px; height: 12px; }
.plk-my-tasks-toggle > input:checked + .plk-switch { background: var(--plk-blue); }
.plk-my-tasks-toggle > input:checked + .plk-switch::after { transform: translateX(12px); }
.plk-my-tasks-copy { display: inline-flex; align-items: center; gap: 5px; }
.plk-my-tasks-copy strong { color: inherit; font-size: 9.5px; font-weight: 720; }
.plk-my-tasks-copy small { display: grid; min-width: 18px; height: 18px; place-items: center; padding: 0 4px; border-radius: 999px; background: var(--plk-soft); color: var(--plk-muted); font-size: 7.5px; font-weight: 760; }
.plk-my-tasks-toggle.is-active { border-color: color-mix(in srgb,var(--plk-blue) 34%,var(--plk-line)); background: color-mix(in srgb,var(--plk-blue) 7%,#fff); color: var(--plk-blue); box-shadow: 0 3px 10px rgba(0,107,255,.09); }
.plk-my-tasks-toggle.is-active .plk-my-tasks-copy small { background: color-mix(in srgb,var(--plk-blue) 14%,#fff); color: var(--plk-blue); }
.plk-board-theme-dark .plk-my-tasks-toggle { border-color: var(--plk-board-line); background: var(--plk-card-background); color: var(--plk-board-muted); }
.plk-board-theme-dark .plk-my-tasks-toggle.is-active { border-color: color-mix(in srgb,var(--plk-blue) 58%,var(--plk-board-line)); background: color-mix(in srgb,var(--plk-blue) 15%,var(--plk-card-background)); color: var(--plk-board-ink); }
.plk-board-theme-dark .plk-my-tasks-copy small { background: var(--plk-board-soft); color: inherit; }

@media (max-width: 520px) {
    .plk-my-tasks-toggle { min-height: 34px; padding-right: 7px; }
    .plk-my-tasks-copy strong { font-size: 8.5px; }
}

/* Library image scoring and community ranking. */
.plk-library-rating-sort { display: inline-flex; min-height: 27px; align-items: center; gap: 5px; padding: 2px 2px 2px 7px; border: 1px solid #d8e1ec; border-radius: 7px; background: #fff; color: #708096; white-space: nowrap; }
.plk-library-rating-sort span { font-size: 7.25px; font-weight: 720; }
.plk-library-rating-sort select { width: auto; min-height: 23px; margin: 0; padding: 2px 23px 2px 6px; border: 0; border-left: 1px solid #e4e9ef; border-radius: 0 5px 5px 0; background-color: #fff; color: #42546b; font-size: 7.75px; font-weight: 680; box-shadow: none; }
.plk-library-summary-btn--rate { min-height: 28px; border-color: #e6bf55; background: linear-gradient(180deg,#fffaf0,#fff4cf); color: #8a5b00; box-shadow: 0 3px 10px rgba(172,112,0,.08); }
.plk-library-summary-btn--rate svg { color: #d79200; }
.plk-library-summary-btn--rate b { min-width: 30px; padding: 2px 5px; border-radius: 999px; background: rgba(180,117,0,.11); color: #8a5b00; font-size: 7px; text-align: center; }
.plk-library-summary-btn--rate:hover, .plk-library-summary-btn--rate:focus-visible { border-color: #d9a928; background: #ffefb8; color: #704900; }

.plk-image-card-scores { position: absolute; z-index: 2; right: 0; bottom: 0; left: 0; display: flex; min-height: 46px; align-items: center; justify-content: space-between; gap: 8px; padding: 12px 10px 7px; background: linear-gradient(180deg,transparent,rgba(3,10,20,.88)); pointer-events: none; }
.plk-image-card-score { display: inline-flex; align-items: center; gap: 4px; color: rgba(255,255,255,.7); text-shadow: 0 1px 4px rgba(0,0,0,.45); }
.plk-image-card-score svg { width: 13px; height: 13px; }
.plk-image-card-score:first-child svg { color: #ffc43d; }
.plk-image-card-score:nth-child(2) svg { color: #b8d7ff; }
.plk-image-card-score b { color: #fff; font-size: 10px; font-variant-numeric: tabular-nums; }
.plk-image-card-score small { color: rgba(255,255,255,.68); font-size: 6.75px; font-weight: 680; }
.plk-image-card-score.has-score b { color: #fff7d6; }
.plk-image-rank-badge { position: absolute; z-index: 7; top: 9px; left: 43px; display: grid; min-width: 28px; height: 25px; place-items: center; padding: 0 7px; border: 1px solid rgba(255,221,122,.72); border-radius: 8px; background: rgba(70,43,0,.82); color: #ffe59a; box-shadow: 0 5px 16px rgba(0,0,0,.22); font-size: 8px; font-weight: 800; pointer-events: none; backdrop-filter: blur(9px); }
.plk-resource-card--image .plk-image-view-cue { bottom: 51px; }

.plk-image-rating-panel { display: grid; flex: 0 0 auto; grid-template-columns: minmax(350px,.75fr) minmax(520px,1.25fr); gap: 9px 16px; padding: 11px 16px 10px; border-top: 1px solid rgba(255,255,255,.1); background: radial-gradient(circle at 86% 0,rgba(213,153,28,.1),transparent 36%),linear-gradient(180deg,#111d2b,#0b1522); color: #d8e2ed; box-shadow: 0 -14px 34px rgba(0,0,0,.16); }
.plk-image-rating-panel.is-saving { opacity: .78; }
.plk-image-rating-panel.is-complete { background: radial-gradient(circle at 84% 0,rgba(28,183,127,.14),transparent 38%),linear-gradient(180deg,#101f29,#0b1720); }
.plk-image-rating-overview { display: grid; min-width: 0; grid-template-columns: minmax(82px,.7fr) minmax(132px,1.2fr) minmax(125px,1.1fr); align-items: center; gap: 7px; }
.plk-image-rating-overview > span { display: grid; min-width: 0; gap: 2px; padding: 7px 9px; border: 1px solid rgba(255,255,255,.09); border-radius: 9px; background: rgba(255,255,255,.035); }
.plk-image-rating-overview small { overflow: hidden; color: #8395aa; font-size: 6.75px; font-weight: 750; letter-spacing: .07em; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; }
.plk-image-rating-overview strong { overflow: hidden; color: #f7f9fc; font-size: 12px; font-weight: 760; text-overflow: ellipsis; white-space: nowrap; }
.plk-image-rating-overview strong em { margin-left: 3px; color: #9babc0; font-size: 7px; font-style: normal; font-weight: 620; }
.plk-image-rating-progress i { display: block; width: 100%; height: 3px; margin-top: 2px; overflow: hidden; border-radius: 999px; background: rgba(255,255,255,.09); }
.plk-image-rating-progress i b { display: block; width: var(--rating-progress); height: 100%; border-radius: inherit; background: linear-gradient(90deg,#f5b82e,#ffe27e); box-shadow: 0 0 9px rgba(255,198,61,.28); transition: width .2s ease; }
.plk-image-rating-scale { display: grid; min-width: 0; grid-template-columns: repeat(10,minmax(38px,1fr)); gap: 4px; }
.plk-image-rating-score { display: grid; min-width: 0; min-height: 46px; place-items: center; align-content: center; gap: 1px; padding: 3px; border: 1px solid rgba(255,255,255,.11); border-radius: 8px; background: rgba(255,255,255,.035); color: #66788e; cursor: pointer; transition: border-color .13s ease,background .13s ease,color .13s ease,transform .13s ease,box-shadow .13s ease; }
.plk-image-rating-score svg { width: 17px; height: 17px; }
.plk-image-rating-score span { color: #8293a7; font-size: 7px; font-weight: 760; font-variant-numeric: tabular-nums; }
.plk-image-rating-score:hover:not(:disabled), .plk-image-rating-score:focus-visible:not(:disabled) { z-index: 1; border-color: rgba(255,204,75,.68); background: rgba(255,192,39,.12); color: #ffd66b; outline: 2px solid rgba(255,195,44,.22); transform: translateY(-2px); }
.plk-image-rating-score.is-filled { border-color: rgba(244,179,29,.33); background: linear-gradient(180deg,rgba(246,180,28,.13),rgba(164,102,0,.08)); color: #ffc83d; }
.plk-image-rating-score.is-filled span { color: #f4ca67; }
.plk-image-rating-score.is-selected { border-color: #f3b927; background: linear-gradient(180deg,rgba(255,205,69,.28),rgba(195,119,0,.18)); color: #ffe183; box-shadow: 0 0 0 2px rgba(247,185,34,.16),0 7px 18px rgba(0,0,0,.15); transform: translateY(-1px); }
.plk-image-rating-score:disabled { cursor: wait; }
.plk-image-rating-help { display: flex; min-width: 0; grid-column: 1 / -1; align-items: center; justify-content: space-between; gap: 12px; }
.plk-image-rating-help > span:first-child { display: inline-flex; min-width: 0; align-items: center; gap: 6px; color: #8fa1b7; }
.plk-image-rating-help > span:first-child svg { width: 12px; height: 12px; flex: 0 0 12px; color: #efb62d; }
.plk-image-rating-panel.is-complete .plk-image-rating-help > span:first-child svg { color: #46d6a2; }
.plk-image-rating-help b { overflow: hidden; font-size: 7.5px; font-weight: 630; text-overflow: ellipsis; white-space: nowrap; }
.plk-image-rating-shortcuts { display: inline-flex; align-items: center; gap: 4px; color: #72849b; white-space: nowrap; }
.plk-image-rating-shortcuts kbd { display: inline-grid; min-width: 25px; height: 20px; place-items: center; padding: 0 5px; border: 1px solid rgba(255,255,255,.14); border-bottom-color: rgba(255,255,255,.25); border-radius: 5px; background: rgba(255,255,255,.06); color: #b9c7d7; box-shadow: 0 2px 0 rgba(0,0,0,.2); font-family: inherit; font-size: 6.75px; font-weight: 750; }
.plk-image-rating-shortcuts small { color: #78899e; font-size: 6.5px; }
.plk-image-rating-shortcuts button { margin-left: 5px; padding: 2px 0; border: 0; background: transparent; color: #8fa5bf; cursor: pointer; font-size: 7px; text-decoration: underline; text-underline-offset: 2px; }
.plk-image-rating-shortcuts button:hover, .plk-image-rating-shortcuts button:focus-visible { color: #fff; outline: 0; }

@media (max-width: 1080px) {
    .plk-image-rating-panel { grid-template-columns: minmax(0,1fr); }
    .plk-image-rating-scale { grid-row: 2; }
}

@media (max-width: 782px) {
    .plk-library-rating-sort span { display: none; }
    .plk-library-rating-sort { padding-left: 2px; }
    .plk-library-rating-sort select { border-left: 0; }
    .plk-image-rating-panel { gap: 7px; padding: 8px 10px; }
    .plk-image-rating-overview { grid-template-columns: repeat(3,minmax(96px,1fr)); overflow-x: auto; scrollbar-width: none; }
    .plk-image-rating-scale { display: flex; overflow-x: auto; padding: 2px 1px 5px; scrollbar-width: thin; }
    .plk-image-rating-score { min-width: 43px; min-height: 43px; flex: 0 0 43px; }
    .plk-image-rating-help { align-items: flex-start; flex-direction: column; gap: 5px; }
    .plk-image-rating-help b { white-space: normal; }
    .plk-image-reader--library .plk-image-reader-footer { min-height: 42px; padding-block: 6px; }
}

@media (max-width: 520px) {
    .plk-library-summary-btn--rate span { display: inline; }
    .plk-image-rating-overview { grid-template-columns: 88px 142px 132px; }
    .plk-image-rating-overview > span { padding: 6px 7px; }
    .plk-image-rating-overview strong { font-size: 10.5px; }
    .plk-image-rating-shortcuts kbd, .plk-image-rating-shortcuts small { display: none; }
    .plk-image-rating-shortcuts button { margin-left: 0; }
    .plk-image-card-scores { padding-inline: 8px; }
}

@media (prefers-reduced-motion: reduce) {
    .plk-image-rating-score, .plk-image-rating-progress i b { transition: none !important; }
}

/* Keep the companion app one click away without reloading either workspace. */
.plk-brand-group { display:flex; align-items:center; gap:10px; flex:none; }
.plk-brand-group .plk-brand { min-width:0; }
.plk-app-switch { display:inline-flex; align-items:center; justify-content:center; gap:5px; min-height:30px; padding:4px 8px; color:var(--plk-ink); background:var(--plk-soft); border:1px solid var(--plk-line); border-radius:8px; font-size:11px; font-weight:650; text-decoration:none; white-space:nowrap; }
.plk-app-switch[hidden] { display:none; }
.plk-app-switch svg { width:16px; height:16px; }
.plk-app-switch:hover { color:var(--plk-blue); border-color:var(--plk-blue); }
.plk-app-switch:focus-visible { outline:2px solid var(--plk-blue); outline-offset:2px; }
@media (max-width:780px) { .plk-brand-group { flex:1 1 auto; gap:8px; } .plk-brand-group .plk-brand { flex:0 1 auto; } }
