:root{--c-bg:#f2f2f7;--c-surface:#fff;--c-surface-2:#f9f9fb;--c-sidebar:rgba(242,242,247,.82);--c-label:#1d1d1f;--c-label-2:#6e6e73;--c-label-3:#aeaeb2;--c-separator:rgba(60,60,67,.12);--c-fill:rgba(120,120,128,.08);--c-fill-2:rgba(120,120,128,.14);--c-accent:#007aff;--c-accent-soft:rgba(0,122,255,.1);--c-accent-text:#0062cc;--c-red:#ff3b30;--c-red-text:#d70015;--c-orange:#ff9500;--c-orange-text:#c93400;--c-yellow:#ffcc00;--c-green:#34c759;--c-green-text:#248a3d;--c-indigo:#5856d6;--c-indigo-text:#3634a3;--c-gray:#8e8e93;--t-large:32px;--t-title:22px;--t-title-3:19px;--t-headline-lg:17px;--t-headline:15px;--t-body:15px;--t-callout:14px;--t-footnote:13px;--t-subcaption:12px;--t-caption:11px;--t-micro:9px;--r-xs:4px;--r-sm:8px;--r-md:12px;--r-lg:16px;--shadow-1:0 1px 2px rgba(0,0,0,.04);--shadow-2:0 8px 24px rgba(0,0,0,.12);--shadow-3:0 20px 60px rgba(0,0,0,.18);--ease:cubic-bezier(.2,.8,.2,1);--titlebar-h:32px;--bg:var(--c-bg);--glass:var(--c-surface);--white:#fff;--text:var(--c-label);--muted:var(--c-label-2);--faint:var(--c-label-3);--line:var(--c-separator);--line-soft:rgba(60,60,67,.07);--blue:var(--c-accent);--blue2:var(--c-accent-soft);--red:var(--c-red);--orange:var(--c-orange);--green:var(--c-green);--shadow:var(--shadow-3);--shadow-elevated:var(--shadow-2);--shadow-card:var(--shadow-1);--radius-lg:var(--r-lg);--radius-md:var(--r-md);--radius-sm:var(--r-sm);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--motion-fast:150ms;--motion-base:200ms;--font:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI","Helvetica Neue",sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased}
::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.18);border-radius:var(--r-lg);border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background-color:rgba(0,0,0,.32)}
:focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-radius:var(--r-sm)}
button,[role="button"],a{-webkit-tap-highlight-color:transparent}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.sprite{position:absolute;width:0;height:0}svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}button,input,select,textarea{font:inherit}.app{min-height:100vh;display:grid;grid-template-columns:270px 1fr}.rail{position:fixed;inset:0 auto 0 0;width:270px;padding:14px 12px 12px;background:rgba(246,246,248,.88);backdrop-filter:blur(30px) saturate(170%);border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:30}.brand-row{display:flex}.workspace,.account{border:0;background:transparent;border-radius:var(--r-md);display:flex;align-items:center;gap:10px;padding:8px;width:100%;text-align:left;color:var(--text)}.workspace:hover,.account:hover,.nav:hover,.project-btn:hover{background:rgba(0,0,0,.045)}.workspace span:nth-child(2),.account span:nth-child(2){flex:1}.workspace b,.workspace small,.account b,.account small{display:block}.workspace b,.account b{font-size:var(--t-callout)}.workspace small,.account small{font-size:var(--t-caption);color:var(--muted);margin-top:2px}.brand{width:34px;height:34px;border-radius:var(--r-sm);background:#1c1c1e;color:#fff;display:grid;place-items:center;font-weight:700;object-fit:cover;flex:0 0 auto}.rail nav{display:grid;gap:2px;margin-top:17px}.nav{height:40px;border:0;border-radius:var(--r-sm);background:transparent;color:#4a4a4d;display:flex;align-items:center;gap:11px;padding:0 10px;text-align:left}.nav b{margin-left:auto;background:rgba(0,0,0,.06);border-radius:var(--r-sm);padding:2px 7px;font-size:var(--t-caption);color:var(--muted)}.nav.active{background:rgba(0,119,237,.1);color:var(--blue);font-weight:600}.works{margin-top:28px}.works header{padding:0 10px 7px;display:flex;justify-content:space-between;color:#8e8e93;font-size:var(--t-caption);letter-spacing:.08em}.works header button{border:0;background:transparent;color:var(--muted)}.works header svg{width:15px}.project-btn{width:100%;border:0;background:transparent;border-radius:var(--r-md);display:flex;align-items:center;gap:10px;padding:7px 9px;color:var(--text);text-align:left}.project-btn.active{background:#fff;box-shadow:var(--shadow-card)}.project-logo{width:37px;height:37px;border-radius:var(--r-md);display:grid;place-items:center;color:white;font-size:var(--t-caption);font-weight:700}.project-btn span:nth-child(2){flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--t-footnote)}.project-btn small{color:var(--faint)}.spacer{flex:1}.account{margin-top:4px}.avatar{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#e4e4e7;color:#555;font-size:var(--t-caption);font-weight:700;border:2px solid #fff;flex:0 0 auto}.avatar.dark{background:linear-gradient(145deg,#252525,#6b6b70);color:#fff}.mini-stack{display:flex;margin-left:auto}.mini-stack .avatar{width:23px;height:23px;margin-left:-7px;font-size:var(--t-micro)}.app main{grid-column:2;min-width:0}.topbar{height:64px;position:sticky;top:0;background:rgba(245,245,247,.76);backdrop-filter:blur(25px) saturate(170%);border-bottom:1px solid var(--line);display:flex;justify-content:center;align-items:center;padding:0 24px;z-index:20}.search{width:310px;height:34px;border:0;border-radius:var(--r-sm);background:rgba(0,0,0,.045);display:flex;align-items:center;gap:8px;padding:0 10px;color:var(--muted)}.search span{flex:1;text-align:left;font-size:var(--t-footnote)}.search svg{width:16px}.search kbd,.command kbd{border:0;border-radius:var(--r-xs);background:rgba(255,255,255,.75);color:#999;padding:3px 6px;font-size:var(--t-caption);box-shadow:inset 0 0 0 1px var(--line)}.actions{position:absolute;right:24px;display:flex;gap:7px}
.notice-wrap{position:relative}
.notice-panel{position:absolute;top:44px;right:0;width:340px;max-width:calc(100vw - 24px);max-height:70vh;overflow:auto;background:rgba(250,250,252,.98);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);z-index:60}
.notice-panel-head{display:flex;justify-content:space-between;align-items:center;padding:13px 14px;border-bottom:1px solid var(--line);font-size:var(--t-footnote);font-weight:700;position:sticky;top:0;background:inherit;border-radius:var(--r-lg) var(--r-lg) 0 0}
.notice-panel-head button{border:0;background:transparent;color:var(--blue);font-size:var(--t-caption);font-weight:600}
.notice-perm-row{display:flex;flex-direction:column;gap:8px;padding:11px 14px;border-bottom:1px solid var(--line);background:var(--blue2)}
.notice-perm-row span{font-size:var(--t-caption);color:var(--text)}
.notice-perm-row .secondary{height:32px;font-size:var(--t-subcaption)}
.notice-list{display:flex;flex-direction:column}
.notice-item{display:flex;gap:10px;align-items:flex-start;padding:11px 14px;border-bottom:1px solid var(--line);cursor:pointer;text-align:left}
.notice-item:last-child{border-bottom:0}
.notice-item:hover{background:rgba(0,0,0,.03)}
.notice-item.unread{background:rgba(0,119,237,.05)}
.notice-item .project-logo{width:32px;height:32px;border-radius:var(--r-sm);font-size:var(--t-micro);flex:0 0 auto}
.notice-body{flex:1;min-width:0}
.notice-body p{margin:0;font-size:var(--t-footnote);line-height:1.4;color:var(--text)}
.notice-body small{display:block;margin-top:3px;color:var(--muted);font-size:var(--t-caption)}
.notice-dot{width:7px;height:7px;border-radius:50%;background:var(--blue);margin-top:6px;flex:0 0 auto}
.notice-empty{padding:40px 20px;text-align:center;color:var(--muted);font-size:var(--t-footnote)}
@media(max-width:600px){.notice-panel{position:fixed;top:auto;bottom:0;left:0;right:0;width:100%;max-width:100%;max-height:75vh;border-radius:var(--r-lg) var(--r-lg) 0 0}}.icon{width:36px;height:36px;border:0;border-radius:var(--r-sm);background:transparent;display:grid;place-items:center;color:var(--text);position:relative}.icon:hover{background:rgba(0,0,0,.05)}.icon i{display:none;position:absolute;width:6px;height:6px;border-radius:50%;background:var(--red);right:6px;top:6px;border:2px solid var(--bg)}.icon i.show{display:block}.primary{height:36px;border:0;border-radius:var(--r-sm);padding:0 14px;background:var(--blue);color:white;display:flex;gap:7px;align-items:center;font-weight:600;box-shadow:0 3px 11px rgba(0,119,237,.22)}.primary svg{width:16px}.content{max-width:1170px;margin:auto;padding:48px 40px 90px}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:29px}.kicker{font-size:var(--t-subcaption);color:var(--muted);margin-bottom:7px}.page-head h1{margin:0;font-size:var(--t-large);letter-spacing:-.045em}.page-head p{color:var(--muted);font-size:var(--t-callout);margin:8px 0 0}.head-actions{display:flex;gap:8px;align-items:center}.secondary{height:36px;border:1px solid var(--line);border-radius:var(--r-sm);background:white;padding:0 13px;color:var(--text)}.segments{display:flex;background:rgba(0,0,0,.05);padding:3px;border-radius:var(--r-sm)}.segments button{border:0;background:transparent;border-radius:var(--r-sm);color:var(--muted);padding:7px 10px}.segments button.active{background:white;color:var(--text);box-shadow:0 1px 4px rgba(0,0,0,.1)}.summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:32px}.metric{background:var(--glass);border:1px solid var(--line);border-radius:var(--r-lg);padding:16px;box-shadow:var(--shadow-card)}.metric small{color:var(--muted);font-size:var(--t-subcaption)}.metric strong{font-size:var(--t-title);display:block;margin-top:6px;letter-spacing:-.04em}.section-head{display:flex;justify-content:space-between;align-items:center;margin:28px 2px 10px}.section-head h2{font-size:var(--t-footnote);color:var(--muted);margin:0}.section-head button{border:0;background:transparent;color:var(--blue);font-size:var(--t-footnote)}.check{width:21px;height:21px;border-radius:50%;border:1.6px solid #c8c8cc;background:white;position:relative}.check.done{background:var(--blue);border-color:var(--blue)}.check.done:after{content:'✓';position:absolute;inset:0;display:grid;place-items:center;color:white;font-size:var(--t-caption)}.task-meta{font-size:var(--t-caption);color:var(--muted);margin-top:5px}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.member-card{background:var(--glass);border:1px solid rgba(255,255,255,.9);border-radius:var(--r-lg);padding:17px}.member-top{display:flex;gap:10px;align-items:center}.member-top .avatar{width:42px;height:42px}.member-card b,.member-card small{display:block}.member-card small{font-size:var(--t-caption);color:var(--muted);margin-top:3px}.member-role{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:15px;padding-top:11px;color:var(--muted);font-size:var(--t-caption)}.invite-banner{border-radius:var(--r-lg);padding:20px;background:linear-gradient(135deg,#087cf0,#5aacff);color:#fff;display:flex;align-items:center;margin-bottom:25px}.invite-banner h3{margin:0 0 4px}.invite-banner p{margin:0;opacity:.82;font-size:var(--t-footnote)}.invite-banner button{margin-left:auto;border:0;border-radius:var(--r-sm);background:white;color:var(--blue);padding:10px 14px;font-weight:600}.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}.day{background:var(--glass);min-height:125px;padding:10px}.day>span{font-size:var(--t-caption);color:var(--muted)}.day.today>span{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:var(--blue);color:white}.cal-task{margin-top:7px;border-left:3px solid var(--blue);background:var(--blue2);padding:6px;border-radius:var(--r-xs);font-size:var(--t-caption);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cal-task-ghost{border-left:2px dashed #5856d6;background:transparent;opacity:.6;font-style:italic;cursor:default;display:flex;align-items:center;gap:4px}
.cal-task-ghost svg{width:10px;height:10px;flex:0 0 auto}.cal-task.done{opacity:.55;text-decoration:line-through}.cal-prio-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--red);margin-right:4px;vertical-align:middle}.empty{text-align:center;padding:80px 15px;color:var(--muted)}.scrim{position:fixed;inset:0;background:rgba(0,0,0,.2);backdrop-filter:blur(3px);z-index:40;opacity:0;pointer-events:none;transition:.2s}.scrim.show{opacity:1;pointer-events:auto}.drawer{position:fixed;right:0;top:0;bottom:0;width:min(610px,100vw);z-index:50;background:rgba(250,250,252,.96);backdrop-filter:blur(34px);box-shadow:-20px 0 60px rgba(0,0,0,.12);transform:translateX(102%);transition:.3s;overflow:auto}.drawer.open{transform:none}.drawer-head{height:64px;padding:0 21px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(250,250,252,.86);backdrop-filter:blur(20px);z-index:2}.drawer-body{padding:25px}.drawer-title{display:flex;gap:12px}.drawer-title textarea{border:0;background:transparent;outline:0;resize:none;flex:1;font:650 1.4rem/1.3 var(--font)}.props{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;margin-top:20px}.prop{background:rgba(255,255,255,.72);padding:12px}.prop label{display:block;font-size:var(--t-caption);color:var(--muted);margin-bottom:6px}.prop input,.prop select{width:100%;border:0;background:transparent;outline:0}
.prop-extra{margin-top:6px;display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.btn-text-tiny{border:0;background:transparent;color:var(--blue);font-size:var(--t-caption);font-weight:600;cursor:pointer;padding:0}
.btn-text-tiny:hover{text-decoration:underline}
.btn-text-tiny.danger-text{color:var(--red)}
.task-toggle-row{display:flex;gap:16px;flex-wrap:wrap;margin:2px 0 4px}
.task-toggle-field{flex:1 1 200px;display:flex;flex-direction:column;gap:8px}
.recurring-tag{display:inline-flex;vertical-align:middle;margin-right:5px;color:#5856d6}
.recurring-tag svg{width:12px;height:12px}
.project-task-row.row-recurring{border-left:3px solid #5856d6}
.board-task-card.card-recurring{border-left:3px solid #5856d6}.drawer-section{margin-top:26px}.drawer-section h3{font-size:var(--t-footnote)}.notes,.comment-field{width:100%;border:1px solid var(--line);border-radius:var(--r-md);background:white;padding:12px;outline:0;resize:vertical}.notes{min-height:105px}.comment{display:flex;gap:8px;margin:10px 0}.comment-body{background:white;border-radius:var(--r-md);padding:9px 11px;font-size:var(--t-subcaption);flex:1}.comment-body small{display:block;color:var(--muted);margin-bottom:3px}.comment-form{display:flex;gap:7px}.modal-layer{position:fixed;inset:0;background:rgba(0,0,0,.23);backdrop-filter:blur(8px);display:grid;place-items:center;padding:16px;z-index:70}.modal-layer[hidden],.command-layer[hidden]{display:none}.modal-card{width:min(490px,100%);max-height:90vh;overflow:auto;background:rgba(250,250,252,.97);border-radius:var(--r-lg);padding:23px;box-shadow:var(--shadow)}.modal-head{display:flex;justify-content:space-between}.modal-head h2{margin:0;font-size:var(--t-title-3)}.modal-head p{margin:5px 0 0;color:var(--muted);font-size:var(--t-subcaption)}.form{display:grid;gap:13px;margin-top:20px}.form label>span{display:block;font-size:var(--t-caption);color:var(--muted);margin:0 0 6px 2px}.field{width:100%;height:42px;border:1px solid var(--line);border-radius:var(--r-md);background:white;padding:0 11px;outline:0}.field:focus{border-color:rgba(0,119,237,.45);box-shadow:0 0 0 3px rgba(0,119,237,.09)}textarea.field{height:85px;padding-top:10px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:9px}.modal-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:20px}.invite-tabs{display:flex;background:rgba(0,0,0,.05);padding:3px;border-radius:var(--r-sm);margin-top:18px}.invite-tabs button{flex:1;border:0;background:transparent;border-radius:var(--r-sm);padding:8px;color:var(--muted)}.invite-tabs button.active{background:white;color:var(--text);box-shadow:0 1px 4px rgba(0,0,0,.08)}.link-box{display:flex;align-items:center;gap:8px;background:white;border:1px solid var(--line);border-radius:var(--r-md);padding:9px;margin-top:13px}.link-box code{font-size:var(--t-caption);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.command-layer{position:fixed;inset:0;background:rgba(0,0,0,.2);backdrop-filter:blur(7px);z-index:80;padding-top:12vh}.command{width:min(620px,calc(100% - 26px));margin:auto;background:rgba(250,250,252,.98);border-radius:var(--r-lg);box-shadow:0 25px 80px rgba(0,0,0,.22);overflow:hidden}.command-input{height:58px;display:flex;align-items:center;gap:9px;padding:0 14px;border-bottom:1px solid var(--line)}.command-input input{flex:1;border:0;background:transparent;outline:0}.results{padding:8px;max-height:400px;overflow:auto}.result{display:flex;align-items:center;gap:10px;padding:10px;border-radius:var(--r-sm);cursor:pointer}.result:hover{background:rgba(0,0,0,.045)}.result-icon{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;flex:0 0 auto;background:var(--blue2);color:var(--blue)}.result-icon svg{width:15px;height:15px}.result-icon.task{background:rgba(0,0,0,.06);color:var(--muted)}.toast{position:fixed;bottom:22px;left:50%;transform:translate(-50%,15px);background:#242426;color:white;border-radius:var(--r-md);padding:10px 14px;font-size:var(--t-subcaption);opacity:0;pointer-events:none;transition:.2s;z-index:100}.toast.show{opacity:1;transform:translate(-50%,0)}.mobile{display:none}#appShell[hidden],#authScreen[hidden]{display:none}.auth-screen{position:fixed;inset:0;display:grid;place-items:center;background:var(--bg);z-index:5}.auth-card{width:min(380px,90vw);background:var(--white);border-radius:var(--r-lg);padding:32px;box-shadow:var(--shadow);text-align:center}.auth-card h1{margin:14px 0 4px;font-size:var(--t-title);letter-spacing:-.03em}.auth-card p{color:var(--muted);font-size:var(--t-footnote);margin:0 0 18px}.auth-card .brand{margin:0 auto}.auth-status{min-height:18px;color:var(--muted)}.auth-status.error{color:var(--red)}.auth-status.ok{color:var(--green)}
@media(max-width:900px){.app{display:block}.rail{transform:translateX(-103%);transition:.25s}.rail.open{transform:none}.app main{grid-column:auto}.mobile{display:grid}.topbar{justify-content:flex-start;padding-left:58px}.content{padding:32px 20px 85px}.summary{grid-template-columns:repeat(2,1fr)}.team-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.topbar{height:58px}.search{width:38px;padding:0;justify-content:center}.search span,.search kbd,.primary span{display:none}.primary{width:38px;padding:0;justify-content:center}.content{padding:25px 14px 80px}.page-head{align-items:flex-start}.page-head h1{font-size:var(--t-large)}.summary{gap:8px}.metric{padding:13px}.team-grid{grid-template-columns:1fr}.invite-banner{display:block}.invite-banner button{margin:14px 0 0}.calendar{grid-template-columns:repeat(7,minmax(75px,1fr));overflow:auto}.props{grid-template-columns:1fr}.drawer-body{padding:20px 15px}.form-row{grid-template-columns:1fr}}
.project-logo.image{overflow:hidden;background:#fff!important}.project-logo.image img{width:100%;height:100%;object-fit:contain;padding:6%;box-sizing:border-box}.project-logo.large{width:66px;height:66px;border-radius:var(--r-lg);font-size:var(--t-headline-lg)}.project-info{display:grid;grid-template-columns:1.15fr 1fr;gap:13px}.info-card{background:var(--glass);border:1px solid rgba(255,255,255,.9);border-radius:var(--r-lg);padding:18px;min-height:150px}.info-card:first-child{grid-row:span 2}.info-card .section-head{margin:0 0 14px}.project-notes{white-space:pre-wrap;color:#454549;font-size:var(--t-footnote);line-height:1.65}.info-row{display:grid;grid-template-columns:120px 1fr auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid var(--line);color:var(--text);text-decoration:none;font-size:var(--t-subcaption)}.info-row span{color:var(--muted);overflow:hidden;text-overflow:ellipsis}.info-row code{font-size:var(--t-caption)}.sensitive{border-color:rgba(255,159,10,.18)}textarea.field.tall{height:110px}.form label small{display:block;color:var(--muted);font-size:var(--t-caption);margin:5px 2px 0}@media(max-width:760px){.project-info{grid-template-columns:1fr}.info-card:first-child{grid-row:auto}.head-actions{flex-wrap:wrap;justify-content:flex-end}}
.mobile-tabbar{display:none}
.form-error{display:block;margin:4px 0 0;padding:10px 12px;border-radius:var(--r-sm);background:#fff0ef;color:#b42318;font-size:var(--t-caption);line-height:1.4}
.form-error[hidden]{display:none}
.field.field-error,.brand-picker-btn.field-error{border-color:var(--red);box-shadow:0 0 0 3px rgba(255,69,58,.1)}
.project-member{display:flex;align-items:center;gap:10px;padding:9px 0;border-top:1px solid var(--line)}.project-member b,.project-member small{display:block}.project-member b{font-size:var(--t-footnote)}.project-member small{margin-top:2px;color:var(--muted);font-size:var(--t-caption)}
.workspace-list{display:grid;gap:8px;margin-top:18px}
.workspace-choice{width:100%;border:1px solid var(--line);background:white;border-radius:var(--r-md);padding:11px 13px;display:flex;align-items:center;gap:12px;text-align:left;cursor:pointer}
.workspace-choice:hover{background:rgba(0,0,0,.02)}
.workspace-choice.active{border-color:rgba(0,119,237,.35);background:var(--blue2)}
.ws-choice-details{flex:1;min-width:0}
.ws-choice-title{display:flex;align-items:center;gap:8px}
.ws-choice-title b{font-size:var(--t-callout)}
.ws-choice-details small{color:var(--muted);font-size:var(--t-caption);margin-top:3px;display:block}
.badge{padding:2px 7px;border-radius:var(--r-sm);font-size:var(--t-micro);font-weight:600;background:rgba(0,0,0,.06);color:var(--muted)}
.badge.owner{background:#e7f8ec;color:#197a39}
.badge.guest{background:var(--blue2);color:var(--blue)}
.badge.admin{background:#fff2d8;color:#936300}
.badge.granted{background:#e7f8ec;color:#197a39}
.badge.denied{background:#fff0ef;color:#b42318}
.ws-active-mark{color:var(--blue);font-weight:700;font-size:var(--t-body);margin-left:auto}
.modal-foot-action{margin-top:14px;border-top:1px solid var(--line);padding-top:14px;text-align:center}
.desktop-titlebar{position:fixed;top:0;left:0;right:0;height:38px;z-index:200;display:flex;align-items:stretch;background:#eef0f3;border-bottom:1px solid var(--line);-webkit-app-region:drag}
.desktop-titlebar[hidden]{display:none}
.desktop-titlebar-drag{flex:1}
.desktop-titlebar-brand{display:flex;align-items:center;gap:8px;padding-left:12px;font-size:var(--t-subcaption);font-weight:600;color:var(--muted);-webkit-app-region:drag;user-select:none}
.desktop-titlebar-icon{width:16px;height:16px;border-radius:var(--r-xs);display:block}
body.has-desktop-titlebar.platform-darwin .desktop-titlebar-brand{padding-left:80px}
.desktop-titlebar-controls{display:flex;-webkit-app-region:no-drag}
.titlebar-btn{width:46px;height:38px;border:0;background:transparent;display:grid;place-items:center;color:var(--muted);cursor:pointer;padding:0}
.titlebar-btn svg{width:10px;height:10px}
.titlebar-btn:hover{background:rgba(0,0,0,.07)}
.titlebar-btn.close:hover{background:#e81123;color:#fff}
body.has-desktop-titlebar{padding-top:38px}
body.has-desktop-titlebar .rail{inset:38px auto 0 0}
body.has-desktop-titlebar .topbar{top:38px}
body.has-desktop-titlebar.platform-darwin .desktop-titlebar-controls{display:none}
body.has-desktop-titlebar.platform-darwin .desktop-titlebar{background:transparent;border-bottom:0}
@media(max-width:900px){body.has-desktop-titlebar .rail.open{inset:38px auto 0 0}}
.modal-foot-action button{width:100%;justify-content:center}
.topbar-ws-pill{display:none;align-items:center;gap:7px;padding:4px 10px 4px 6px;border-radius:var(--r-lg);background:rgba(0,0,0,.04);border:1px solid rgba(0,0,0,.08);color:var(--text);font-size:var(--t-footnote);font-weight:600;cursor:pointer}
.topbar-ws-pill .brand{width:22px;height:22px;border-radius:var(--r-sm);font-size:var(--t-micro)}
.topbar-ws-pill .chevron{width:14px;height:14px;stroke-width:2.2;opacity:.6}
.projects-carousel{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;margin-bottom:26px}
.project-pill-card{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--glass);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-card);text-align:left;cursor:pointer;transition:var(--motion-fast);color:var(--text)}
.project-pill-card:hover{transform:translateY(-1px);background:#fff;box-shadow:0 6px 20px rgba(0,0,0,.06)}
.project-pill-info{flex:1;min-width:0}
.project-pill-info b{display:block;font-size:var(--t-callout);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.project-pill-info small{display:block;color:var(--muted);font-size:var(--t-caption);margin-top:2px}
.project-pill-card .arrow{color:var(--faint);font-size:var(--t-headline-lg);margin-left:auto}
.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;margin-top:10px}
.project-card-full{background:var(--glass);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px;box-shadow:var(--shadow-card);cursor:pointer;transition:var(--motion-fast)}
.project-card-full:hover{background:#fff;transform:translateY(-2px);box-shadow:0 10px 30px rgba(0,0,0,.07)}
.pcard-top{display:flex;justify-content:space-between;align-items:flex-start}
.pcard-badge-group{display:flex;flex-direction:column;align-items:flex-end;gap:5px}
.pcard-badge{font-size:var(--t-caption);text-transform:uppercase;letter-spacing:.05em;padding:4px 8px;border-radius:var(--r-sm);background:rgba(0,0,0,.05);color:var(--muted);font-weight:600}
.pcard-badge.archived{background:rgba(255,159,10,.12);color:#936300}
.project-card-full h3{margin:14px 0 4px;font-size:var(--t-headline-lg);letter-spacing:-.02em}
.project-card-full p{margin:0 0 16px;color:var(--muted);font-size:var(--t-footnote);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pcard-stats{display:flex;gap:20px;border-top:1px solid var(--line);padding-top:12px}
.pcard-stats strong{display:block;font-size:var(--t-headline-lg)}
.pcard-stats small{display:block;color:var(--muted);font-size:var(--t-caption);margin-top:1px}
@media(max-width:600px){.topbar-ws-pill{display:inline-flex;position:absolute;left:48px;bottom:10px;max-width:44vw;height:34px}.topbar-ws-pill>span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar .mobile-title{display:none!important}.projects-carousel{display:flex;overflow-x:auto;gap:9px;margin:0 -12px 22px;padding:0 12px 4px;scroll-snap-type:x proximity;scrollbar-width:none}.projects-carousel::-webkit-scrollbar{display:none}.project-pill-card{min-width:210px;flex:0 0 auto;scroll-snap-align:start}}
@media(max-width:600px){.rail{z-index:45;background:#f6f6f8;backdrop-filter:none;-webkit-backdrop-filter:none}.scrim{backdrop-filter:none;-webkit-backdrop-filter:none;background:rgba(0,0,0,.34)}}
@media(max-width:600px){html{background:var(--bg)}body{min-height:100dvh;overflow-x:hidden;padding:0 env(safe-area-inset-right) 0 env(safe-area-inset-left)}button{touch-action:manipulation}.app main{min-height:100dvh}.topbar{height:calc(54px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 12px 0;justify-content:center;background:rgba(248,248,250,.88);border-bottom-color:rgba(0,0,0,.06)}#openNav{position:absolute;left:10px;bottom:9px}.mobile-title{display:block;font-weight:650;font-size:var(--t-body);max-width:48vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar>.search{position:absolute;right:92px;bottom:9px}.topbar>.actions{right:10px;bottom:9px}.topbar #addTask{display:none}.content{padding:18px 12px calc(95px + env(safe-area-inset-bottom));max-width:100%;overflow:hidden}.page-head{display:grid;gap:15px;margin-bottom:22px}.page-head>div:first-child{min-width:0}.page-head h1{font-size:var(--t-large);line-height:1.1}.page-head p{line-height:1.45}.head-actions{width:100%;justify-content:flex-start;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.head-actions::-webkit-scrollbar{display:none}.head-actions>.segments{flex:0 0 auto}.head-actions>.secondary{flex:0 0 auto}.summary{display:flex;overflow-x:auto;gap:9px;margin:0 -12px 25px;padding:0 12px 4px;scroll-snap-type:x proximity;scrollbar-width:none}.summary::-webkit-scrollbar{display:none}.metric{min-width:138px;scroll-snap-align:start}.calendar{margin:0 -12px;border-radius:0;border-left:0;border-right:0}.day{min-height:96px;padding:7px}.cal-task{font-size:var(--t-micro)}.team-grid{gap:9px}.member-card{padding:15px}.drawer{width:100%;top:0;border-radius:0;padding-bottom:env(safe-area-inset-bottom)}.drawer-head{height:calc(56px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top)}.drawer-body{padding:18px 14px calc(30px + env(safe-area-inset-bottom))}.modal-layer{align-items:end;padding:0}.modal-card{width:100%;max-height:92dvh;border-radius:var(--r-lg) var(--r-lg) 0 0;padding:22px 16px calc(18px + env(safe-area-inset-bottom))}.modal-card:before{content:'';display:block;width:38px;height:5px;border-radius:var(--r-xs);background:#d1d1d6;margin:-11px auto 14px}.modal-actions{position:sticky;bottom:0;background:rgba(250,250,252,.96);padding-top:10px}.modal-actions .primary,.modal-actions .secondary{width:auto}.command-layer{padding-top:calc(env(safe-area-inset-top) + 10px)}.command{width:calc(100% - 20px);border-radius:var(--r-lg)}.toast{bottom:calc(82px + env(safe-area-inset-bottom));max-width:calc(100% - 24px);text-align:center}.mobile-tabbar{position:fixed;z-index:35;left:8px;right:8px;bottom:calc(7px + env(safe-area-inset-bottom));height:66px;display:grid;grid-template-columns:1fr 1fr 64px 1fr 1fr;align-items:center;padding:6px 7px;background:rgba(250,250,252,.9);backdrop-filter:blur(30px) saturate(180%);-webkit-backdrop-filter:blur(30px) saturate(180%);border:1px solid rgba(255,255,255,.85);border-radius:var(--r-lg);box-shadow:0 10px 35px rgba(0,0,0,.16)}.mobile-tabbar button{height:52px;border:0;background:transparent;color:#8e8e93;border-radius:var(--r-md);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:var(--t-micro)}.mobile-tabbar button svg{width:20px;height:20px}.mobile-tabbar button.active{color:var(--blue);background:var(--blue2)}.mobile-tabbar .tab-fab{width:54px;height:54px;margin-top:-22px;justify-self:center;border-radius:var(--r-lg);background:var(--blue);color:white;box-shadow:0 8px 20px rgba(0,119,237,.35)}.mobile-tabbar .tab-fab svg{width:24px;height:24px}.rail{width:min(86vw,330px);padding-top:calc(14px + env(safe-area-inset-top));padding-bottom:calc(14px + env(safe-area-inset-bottom));box-shadow:20px 0 60px rgba(0,0,0,.18)}.auth-card{width:calc(100% - 28px);padding:28px 22px}.auth-screen{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}input,select,textarea{font-size:16px!important}}

/* ---------- PREMIUM MOBILE-FIRST PROJECT DETAILS VIEW ---------- */
.project-nav-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;gap:10px}
.back-pill-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 14px 6px 10px;border-radius:var(--r-lg);background:var(--c-surface);border:1px solid var(--c-separator);font-size:var(--t-footnote);font-weight:600;color:var(--c-label);cursor:pointer;transition:.15s;box-shadow:0 2px 8px rgba(0,0,0,.03)}
.back-pill-btn:hover{background:var(--bg);transform:translateX(-1px)}
.back-pill-btn svg{width:16px;height:16px;stroke-width:2.4}
.project-nav-actions{display:flex;align-items:center;gap:7px}
.btn-compact{height:34px;padding:0 12px;font-size:var(--t-footnote)}
.prop-with-add{display:flex;gap:6px;align-items:center}.prop-with-add select{flex:1}.prop-with-add .icon-btn{flex:0 0 auto;width:28px;height:28px;font-weight:700}
.icon-btn{width:34px;height:34px;border:1px solid var(--c-separator);border-radius:var(--r-sm);background:var(--c-surface);display:grid;place-items:center;color:var(--c-label);cursor:pointer;transition:.15s}
.icon-btn:hover{background:var(--bg)}
.icon-btn svg{width:16px;height:16px}

.project-hero-card{background:var(--glass);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px;box-shadow:var(--shadow-card);margin-bottom:16px}
.project-hero-top{display:flex;align-items:flex-start;gap:14px}
.project-hero-headings{flex:1;min-width:0}
.project-badge-row{display:flex;align-items:center;gap:8px;margin-bottom:5px;flex-wrap:wrap}
.type-badge{font-size:var(--t-caption);font-weight:650;padding:2px 8px;border-radius:var(--r-sm);background:var(--blue2);color:var(--blue);text-transform:uppercase;letter-spacing:.04em}
.status-dot-badge{font-size:var(--t-caption);font-weight:600;color:var(--green)}
.status-dot-badge.archived{color:var(--faint)}
.project-title{margin:0;font-size:var(--t-title);font-weight:700;letter-spacing:-.03em;line-height:1.2;word-break:break-word}
.project-desc{margin:9px 0 0;font-size:var(--t-footnote);color:var(--muted);line-height:1.45}
/* ---------- Compact marka header (Aşama 5) ---------- */
.project-hero-compact{padding:14px 16px}
.project-hero-compact .project-hero-top{align-items:center;gap:13px}
.project-hero-top .project-logo{width:52px;height:52px;border-radius:var(--r-md);font-size:var(--t-body)}
.project-title.project-title-compact{font-size:var(--t-title-3);margin:0}
.project-progress-row{display:flex;align-items:center;gap:10px;margin-top:10px}
.progress-thin{flex:1;height:5px;border-radius:var(--r-xs);background:rgba(0,0,0,.06);overflow:hidden}
.progress-thin>span{display:block;height:100%;background:var(--blue);border-radius:var(--r-xs);transition:width var(--motion-base)}
.progress-summary-text{font-size:var(--t-caption);color:var(--muted);white-space:nowrap;flex:0 0 auto}
@media(max-width:600px){.progress-summary-text{white-space:normal;text-align:right}}

.project-mode-nav{display:flex;background:rgba(0,0,0,.045);padding:4px;border-radius:var(--r-md);margin-bottom:18px}
.pmode-btn{flex:1;height:38px;border:0;background:transparent;border-radius:var(--r-sm);display:flex;align-items:center;justify-content:center;gap:6px;font-size:var(--t-footnote);font-weight:600;color:var(--muted);cursor:pointer;transition:.15s}
.pmode-btn.active{background:var(--c-surface);color:var(--c-label);box-shadow:0 2px 8px rgba(0,0,0,.07)}
.count-pill{font-size:var(--t-caption);background:rgba(0,0,0,.07);color:var(--muted);padding:2px 6px;border-radius:var(--r-sm)}
.has-dot{width:6px;height:6px;border-radius:50%;background:var(--blue)}

.project-tasks-container{display:grid;gap:12px}
.tasks-group-header{margin:6px 2px 4px}
.tasks-group-header h2{font-size:var(--t-subcaption);font-weight:700;color:var(--muted);letter-spacing:.06em;margin:0}
.tasks-group-header.mt-done{margin-top:22px}
.done-buckets{display:grid;gap:4px}
.done-bucket-header{width:100%;border:0;background:transparent;display:flex;align-items:center;gap:8px;padding:9px 6px;color:var(--muted);font-size:var(--t-footnote);font-weight:600;cursor:pointer;border-radius:var(--r-sm);text-align:left}
.done-bucket-header:hover{background:rgba(0,0,0,.04);color:var(--text)}
.done-bucket-header .chevron{width:13px;height:13px;transition:transform var(--motion-fast)}
.done-bucket-header[aria-expanded="true"] .chevron{transform:rotate(180deg)}
.done-bucket .project-tasks-list{margin:2px 0 10px}
.project-tasks-list{background:var(--glass);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-card)}
.project-tasks-list.done-group{opacity:.85}
.project-task-row{display:flex;align-items:center;gap:12px;padding:13px 14px;border-bottom:1px solid var(--line);background:transparent;transition:background .15s;cursor:pointer}
.project-task-row:last-child{border-bottom:0}
.project-task-row:hover{background:rgba(255,255,255,.6)}
.project-task-row.done .ptask-title-text{text-decoration:line-through;color:var(--muted)}
.ptask-content{flex:1;min-width:0}
.ptask-title-text{font-size:var(--t-callout);font-weight:580;line-height:1.35;word-break:break-word;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ptask-meta-tags{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:5px}
.prio-tag.high{font-size:var(--t-micro);font-weight:600;background:#fff0ef;color:#b42318;padding:2px 6px;border-radius:var(--r-xs)}
.content-type-tag{font-size:var(--t-micro);font-weight:600;background:var(--blue2);color:var(--blue);padding:2px 6px;border-radius:var(--r-xs);text-transform:uppercase;letter-spacing:.03em}
.project-tag{display:inline-flex;align-items:center;gap:5px;font-size:var(--t-caption);color:var(--muted)}
.project-logo.mini{width:16px;height:16px;border-radius:var(--r-xs);font-size:var(--t-micro);flex:0 0 auto}
.due-tag{display:inline-flex;align-items:center;gap:4px;font-size:var(--t-caption);color:var(--muted)}
.due-tag svg{width:12px;height:12px}
.due-tag.late{color:var(--red);font-weight:600}.due-tag.today{color:var(--blue);font-weight:600}.due-tag.soon{color:var(--orange)}.due-tag.far{color:var(--faint)}
.assignee-tag{display:inline-flex;align-items:center;gap:5px;font-size:var(--t-caption);font-weight:600;color:var(--assignee-color,var(--muted));max-width:130px}
.assignee-tag .assignee-dot{width:7px;height:7px;border-radius:50%;background:var(--assignee-color,var(--muted));flex:0 0 auto}
.assignee-tag .assignee-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.meta-chip{display:inline-flex;align-items:center;gap:3px;font-size:var(--t-caption);color:var(--muted)}
.meta-chip svg{width:12px;height:12px}
.avatar.mini{width:20px;height:20px;font-size:var(--t-micro);border:0}
.status-chip{font-size:var(--t-caption);font-weight:600;padding:4px 8px;border-radius:var(--r-sm);background:#eff0f2;white-space:nowrap}
.status-chip.progress{background:var(--blue2);color:var(--blue)}
.status-chip.review{background:#fff2d8;color:#936300}
.status-chip.done{background:#e7f8ec;color:#197a39}

.empty-project-state{text-align:center;padding:46px 20px;background:var(--glass);border:1px solid rgba(255,255,255,.9);border-radius:var(--r-lg)}
.empty-circle{width:52px;height:52px;border-radius:var(--r-lg);background:var(--blue2);color:var(--blue);display:grid;place-items:center;margin:0 auto 12px}
.empty-circle svg{width:26px;height:26px}
.empty-project-state h3{font-size:var(--t-title-3);margin:0 0 6px;letter-spacing:-.02em}
.empty-project-state p{font-size:var(--t-footnote);color:var(--muted);margin:0 0 16px}

.project-board-wrap{width:100%;overflow-x:auto;padding-bottom:24px}
.board-columns-row{display:flex;gap:12px;width:100%;min-width:100%;align-items:stretch}
.board-column{flex:1 1 0px;min-width:220px;position:relative;background:rgba(0,0,0,.028);border-radius:var(--r-lg);padding:12px;display:flex;flex-direction:column}
.board-column.collapsed{flex:0 0 96px !important;min-width:96px !important;overflow:hidden}
.project-board-wrap.fit-columns .board-columns-row{width:100%;min-width:100%}
.project-board-wrap.fit-columns .board-column:not(.collapsed){flex:1 1 0px;min-width:220px}

.project-mode-nav-wrap{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.board-col-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding:0 2px}
.col-title-left{display:flex;align-items:center;gap:7px}
.col-title-left h3{font-size:var(--t-subcaption);font-weight:700;margin:0;letter-spacing:.04em}
.col-dot{width:8px;height:8px;border-radius:50%}
.col-dot.status-todo{background:#8e8e93}
.col-dot.status-progress{background:var(--blue)}
.col-dot.status-review{background:var(--orange)}
.col-dot.status-done{background:var(--green)}
.col-count-bubble{font-size:var(--t-caption);font-weight:700;background:rgba(0,0,0,.06);padding:2px 7px;border-radius:var(--r-sm);color:var(--muted)}
.col-header-right{display:flex;align-items:center;gap:4px}
.col-collapse-btn{border:0;background:transparent;color:var(--muted);width:22px;height:22px;display:grid;place-items:center;cursor:pointer;border-radius:var(--r-sm)}
.col-collapse-btn:hover{background:rgba(0,0,0,.06)}
.col-collapse-btn svg{width:14px;height:14px;transition:transform var(--motion-fast)}
.board-column.collapsed .col-collapse-btn svg{transform:rotate(-90deg)}
.board-column.collapsed .board-col-header{padding:0;gap:4px}
.board-column.collapsed .col-title-left h3{display:none}
.board-collapsed-summary{width:100%;border:1px dashed var(--line);background:transparent;border-radius:var(--r-sm);padding:14px 4px;color:var(--muted);font-size:var(--t-caption);font-weight:600;cursor:pointer;text-align:center;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.board-collapsed-summary:hover{background:rgba(0,0,0,.02);color:var(--text)}
.board-cards-stack{display:grid;gap:8px;flex:1;align-content:start;min-height:120px;transition:background .18s ease}
.board-task-card{background:var(--c-surface);border:1px solid var(--c-separator);border-radius:var(--r-md);padding:12px 14px;box-shadow:var(--shadow-card);cursor:pointer;transition:var(--motion-fast);color:var(--c-label)}
.board-task-card:hover{transform:translateY(-1px);box-shadow:var(--shadow-elevated);border-color:var(--c-label-3)}
.board-task-card.card-done{background:var(--c-fill);opacity:.65;border-color:var(--c-separator)}
.board-task-card.card-done .bcard-title{text-decoration:line-through;color:var(--c-label-2)}
.bcard-top{display:flex;align-items:flex-start;gap:9px}
.bcard-title{font-size:var(--t-footnote);line-height:1.35;word-break:break-word;flex:1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--c-label)}
.check.mini{width:18px;height:18px;margin-top:1px;flex:0 0 auto;border:1.6px solid var(--c-separator);background:transparent}
.check.mini:hover{border-color:var(--c-label-2)}
.check.mini:after{font-size:var(--t-micro)}
.bcard-footer{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:6px;margin-top:10px;border-top:1px solid var(--c-separator);padding-top:8px}
.bcard-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.bcard-footer .assignee-tag{max-width:100px}
.due-pill{font-size:var(--t-caption);color:var(--muted)}
.due-pill.late{color:var(--red);font-weight:600}.due-pill.today{color:var(--blue);font-weight:600}.due-pill.soon{color:var(--orange)}.due-pill.far{color:var(--faint)}
.prio-dot.high{color:var(--red);font-size:var(--t-subcaption)}
.board-empty-col{text-align:center;padding:26px 8px;color:var(--faint);font-size:var(--t-subcaption)}

.project-view-wrapper.board-view-mode{display:flex;flex-direction:column;min-height:calc(100vh - 202px);height:auto}
.project-view-wrapper.board-view-mode .project-board-wrap{width:100%;height:auto;overflow-x:auto;overflow-y:visible;padding-bottom:32px}
.project-view-wrapper.board-view-mode .board-columns-row{height:auto;align-items:stretch}
.project-view-wrapper.board-view-mode .board-cards-stack{overflow-y:visible;max-height:none;height:auto;padding-bottom:16px}

.project-info-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}
.info-box-card{background:var(--glass);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px;box-shadow:var(--shadow-card)}
.info-overview-card{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:18px}.info-overview-identity{display:flex;align-items:center;gap:13px;min-width:0}.info-overview-identity h2{font-size:var(--t-headline-lg);margin:7px 0 2px}.info-overview-identity p{font-size:var(--t-subcaption);color:var(--muted);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.info-overview-meta{display:flex;align-items:center;gap:18px;flex:0 0 auto}.info-overview-meta span small,.info-overview-meta span b{display:block}.info-overview-meta small{font-size:var(--t-micro);color:var(--muted);margin-bottom:3px}.info-overview-meta b{font-size:var(--t-subcaption)}.info-overview-meta i{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:5px}.info-empty-inline{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:var(--t-subcaption);padding:10px 0}.info-empty-inline button{border:0;background:transparent;color:var(--blue);font-weight:650}
.ibox-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.ibox-title{display:flex;align-items:center;gap:9px}
.ibox-title svg{width:18px;height:18px;color:var(--blue)}
.ibox-title h3{font-size:var(--t-body);margin:0;font-weight:700}
.btn-text{border:0;background:transparent;color:var(--blue);font-size:var(--t-subcaption);font-weight:600;cursor:pointer}
.ibox-notes-body{white-space:pre-wrap;color:var(--c-label);font-size:var(--t-footnote);line-height:1.6;margin:0}
.ibox-members-list{display:grid;gap:9px}
.pmember-item{display:flex;align-items:center;gap:11px;padding:9px 0;border-bottom:1px solid var(--c-separator)}
.pmember-item:last-child{border-bottom:0}
.pmember-details{flex:1;min-width:0}
.pmember-details b{display:block;font-size:var(--t-footnote);color:var(--c-label)}
.pmember-details small{display:block;font-size:var(--t-caption);color:var(--c-label-2);margin-top:1px}
.role-badge{font-size:var(--t-micro);font-weight:600;padding:3px 8px;border-radius:var(--r-sm);background:var(--c-fill-2);color:var(--c-label-2)}
.role-badge.owner{background:#e7f8ec;color:#197a39}
.role-badge.guest{background:var(--c-fill-2);color:var(--c-label)}
.role-badge.admin{background:rgba(255,149,0,.15);color:var(--c-orange-text)}
.role-badge.manager{background:rgba(255,149,0,.15);color:var(--c-orange-text)}
.ibox-social-list{display:grid;gap:8px}
.social-row-link{display:flex;align-items:center;gap:12px;padding:10px 12px;background:var(--c-surface-2);border:1px solid var(--c-separator);border-radius:var(--r-md);text-decoration:none;color:var(--c-label);transition:.15s}
.social-row-link:hover{background:var(--c-fill-2)}
.social-icon-dot{width:32px;height:32px;border-radius:var(--r-sm);background:var(--c-fill-2);color:var(--c-label);display:grid;place-items:center;font-size:var(--t-caption);font-weight:700}
.social-text{flex:1;min-width:0}
.social-text b{display:block;font-size:var(--t-footnote);color:var(--c-label)}
.social-url{display:block;font-size:var(--t-caption);color:var(--c-label-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ext-arrow{width:15px;height:15px;color:var(--c-label-3)}
.sensitive-box{border-color:rgba(255,159,10,.25);background:rgba(255,250,240,.06)}
.ibox-creds-list{display:grid;gap:9px}
.cred-item-card{background:var(--c-surface-2);border:1px solid var(--c-separator);border-radius:var(--r-md);padding:12px}
.cred-head-line{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.cred-head-line b{font-size:var(--t-footnote);color:var(--c-label)}
.cred-head-line code{background:var(--c-fill-2);padding:2px 6px;border-radius:var(--r-xs);font-size:var(--t-caption);color:var(--c-label-2)}
.cred-pass-line{display:flex;justify-content:space-between;align-items:center;background:var(--c-fill);padding:8px 12px;border-radius:var(--r-sm)}
.pass-val{font-family:monospace;font-size:var(--t-footnote);letter-spacing:1px;color:var(--c-label)}
.pass-val.masked{letter-spacing:3px}
.cred-actions{display:flex;gap:6px}
.btn-action-small{height:26px;padding:0 8px;border:1px solid var(--c-separator);border-radius:var(--r-sm);background:var(--c-surface);font-size:var(--t-caption);font-weight:600;color:var(--c-label);cursor:pointer}
.btn-action-small:hover{background:var(--c-fill-2)}

@media(max-width:600px){
  .project-hero-card{padding:14px;border-radius:var(--r-lg);margin-bottom:14px}
  .project-hero-top{gap:11px}
  .project-title{font-size:var(--t-title)}
  .board-column{flex:0 0 82vw;scroll-snap-align:center}
  .board-columns-row{scroll-snap-type:x mandatory}
  .project-board-wrap{margin:0 -12px;padding:0 12px 10px}
  .info-box-card{padding:14px;border-radius:var(--r-lg)}
  .project-info-layout{grid-template-columns:1fr}.info-overview-card{display:grid}.info-overview-meta{justify-content:space-between;gap:10px}.info-overview-meta .secondary{margin-left:auto}.info-overview-identity p{white-space:normal}
}
.danger{height:36px;border:1px solid rgba(255,69,58,.3);border-radius:var(--r-sm);background:rgba(255,69,58,.08);padding:0 13px;color:var(--red);font-weight:600}
.modal-danger-row{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px;margin-top:20px;padding-top:14px;border-top:1px solid var(--line)}
.cal-nav{display:flex;align-items:center;gap:7px}
.cal-nav .icon-btn{width:36px;height:36px}
.cal-modes{flex:0 0 auto}.cal-more{border:0;background:transparent;color:var(--blue);font-size:var(--t-caption);padding:6px 2px}.calendar-week .day{min-height:360px}.calendar-agenda{display:grid;gap:12px}.calendar-agenda section{display:grid;grid-template-columns:180px 1fr;gap:16px;padding:14px;background:var(--glass);border:1px solid var(--line);border-radius:var(--r-lg)}.agenda-date b,.agenda-date span{display:block}.agenda-date b{font-size:var(--t-footnote);text-transform:capitalize}.agenda-date span{font-size:var(--t-caption);color:var(--muted);margin-top:4px}.calendar-agenda .cal-task{font-size:var(--t-subcaption);padding:9px;margin-top:5px;white-space:normal}.calendar-agenda .cal-task:first-child{margin-top:0}
.danger:hover{background:rgba(255,69,58,.15)}

/* ---------- Sekmeli marka ayarları (Aşama 11) ---------- */
.modal-card.settings-modal-card{width:min(760px,100%);padding:0;overflow:hidden}
.settings-modal{height:min(760px,90vh);display:grid;grid-template-rows:auto auto minmax(0,1fr) auto}
.settings-modal-head{padding:20px 22px 14px;border-bottom:1px solid var(--c-separator)}
.settings-tabs{display:flex;gap:4px;padding:9px 16px;border-bottom:1px solid var(--c-separator);overflow-x:auto;scrollbar-width:none;background:var(--c-surface-2)}
.settings-tabs::-webkit-scrollbar{display:none}
.settings-tabs button{flex:0 0 auto;border:0;background:transparent;color:var(--c-label-2);border-radius:var(--r-sm);padding:8px 11px;font-size:var(--t-subcaption);font-weight:650}
.settings-tabs button.active{background:var(--c-surface);color:var(--c-label);box-shadow:0 1px 5px rgba(0,0,0,.08)}
.settings-modal-body{overflow:auto;padding:20px 22px}
.admin-table{width:100%;border-collapse:collapse;font-size:var(--t-footnote)}
.admin-table th{text-align:left;font-size:var(--t-caption);letter-spacing:.05em;color:var(--muted);font-weight:700;padding:0 10px 8px;text-transform:uppercase}
.admin-table td{padding:10px;border-top:1px solid var(--c-separator);vertical-align:middle}
.admin-table td b{display:block}
.admin-table td small{display:block;color:var(--muted);font-size:var(--t-caption);margin-top:1px}
.admin-brand-cell{display:flex;align-items:center;gap:9px}
.admin-brand-cell .project-logo{width:26px;height:26px;border-radius:var(--r-sm);font-size:var(--t-micro)}
.admin-logo-btn{height:30px;padding:0 11px;font-size:var(--t-caption);display:inline-flex;align-items:center;cursor:pointer}
.impersonate-box{flex-direction:column;align-items:stretch;gap:9px;padding:13px;background:var(--blue2);border-color:rgba(0,119,237,.25)}
.impersonate-box>div:first-child{font-size:var(--t-subcaption);color:var(--text)}
.link-box-row{display:flex;align-items:center;gap:8px}
.link-box-row code{font-size:var(--t-caption);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;background:var(--c-fill-2);color:var(--c-label);border-radius:var(--r-sm);padding:7px 9px}
.settings-panel{display:none;gap:14px}.settings-panel.active{display:grid}
.settings-panel label>span{display:block;font-size:var(--t-caption);color:var(--muted);margin:0 0 6px 2px}
.settings-modal-footer{margin:0;padding:13px 22px;border-top:1px solid var(--c-separator);background:var(--c-surface-2)}
.settings-section-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:3px}
.settings-section-title b,.settings-section-title small{display:block}.settings-section-title b{font-size:var(--t-callout)}.settings-section-title small,.settings-hint{font-size:var(--t-caption);color:var(--muted);margin-top:3px;line-height:1.45}
.settings-repeat-list{display:grid;gap:10px}
.settings-repeat-row{display:grid;grid-template-columns:140px 1fr 1.4fr auto;gap:7px;align-items:center;padding:10px;border:1px solid var(--c-separator);border-radius:var(--r-md);background:var(--c-surface-2);color:var(--c-label)}
.settings-row-actions{display:flex;justify-content:flex-end;gap:6px}.settings-row-actions .icon-btn{width:34px;height:34px;text-decoration:none}.danger-icon{color:var(--red)}
.settings-secret-row{display:grid;gap:10px;padding:14px;border:1px solid var(--c-separator);border-radius:var(--r-md);background:var(--c-surface-2);color:var(--c-label)}
.settings-team-list{display:grid;gap:8px}.settings-member{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid var(--c-separator);border-radius:var(--r-md);background:var(--c-surface-2);color:var(--c-label)}.settings-member>div{flex:1;min-width:0}.settings-member b,.settings-member small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-member b{font-size:var(--t-footnote)}.settings-member small{font-size:var(--t-caption);color:var(--muted);margin-top:2px}
.member-color-input{width:26px;height:26px;padding:0;border:1px solid var(--c-separator);border-radius:var(--r-sm);background:none;cursor:pointer;flex:0 0 auto}
.member-color-input::-webkit-color-swatch-wrapper{padding:2px}
.member-color-input::-webkit-color-swatch{border:0;border-radius:var(--r-xs)}
.member-color-dot{width:14px;height:14px;border-radius:50%;background:var(--assignee-color,var(--muted));flex:0 0 auto;border:2px solid var(--c-surface);box-shadow:0 0 0 1px var(--c-separator)}
.member-actions{display:flex;align-items:center;gap:2px}
.member-action{width:28px;height:28px;border:0;background:transparent;border-radius:var(--r-sm);display:grid;place-items:center;color:var(--faint);cursor:pointer;transition:.15s;flex:0 0 auto}
.member-action svg{width:14px;height:14px}
.member-action:hover{background:var(--bg);color:var(--text)}
.member-action.active{color:#936300}
.member-action.danger:hover{background:rgba(255,69,58,.1);color:var(--red)}
.settings-empty{padding:30px;text-align:center;border:1px dashed var(--c-separator);border-radius:var(--r-md);color:var(--muted);font-size:var(--t-subcaption)}
.danger-zone{margin-top:18px;padding:15px;border:1px solid rgba(255,69,58,.24);border-radius:var(--r-md);background:rgba(255,69,58,.04)}.danger-zone>b{font-size:var(--t-footnote);color:var(--red)}.danger-zone p{font-size:var(--t-caption);line-height:1.45;color:var(--muted)}.danger-zone>div{display:flex;justify-content:flex-end;gap:8px}
.color-field{padding:5px;max-width:120px}
@media(max-width:760px){.settings-repeat-row{grid-template-columns:1fr 1fr}.settings-repeat-row>[name="linkUrl"]{grid-column:1/-1}.settings-repeat-row .settings-row-actions{grid-column:1/-1}.settings-member{flex-wrap:wrap}.settings-member>div{min-width:50%}}
@media(max-width:600px){.modal-card.settings-modal-card{max-height:94dvh}.settings-modal{height:94dvh}.settings-modal-head{padding:10px 16px}.settings-tabs{padding:7px 12px}.settings-modal-body{padding:16px}.settings-modal-footer{padding:11px 16px calc(11px + env(safe-area-inset-bottom))}.settings-repeat-row,.settings-secret-row .form-row{grid-template-columns:1fr}.settings-repeat-row>[name="linkUrl"],.settings-repeat-row .settings-row-actions{grid-column:auto}.settings-section-title{align-items:flex-start}.settings-section-title .secondary{flex:0 0 auto}}
@media(max-width:600px){.calendar-agenda section{grid-template-columns:1fr;gap:9px}.cal-modes{order:-1}.calendar-week{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.calendar-week .day{min-width:82vw;min-height:55vh;scroll-snap-align:center}.cal-nav{flex:0 0 auto}}
.logo-upload-row{display:flex;align-items:center;gap:12px}
.logo-upload-row input[type=file]{flex:1;height:auto;border:1px dashed var(--c-separator);border-radius:var(--r-md);background:var(--c-surface);color:var(--c-label);padding:9px 11px;font-size:var(--t-footnote)}

/* ---------- Görev detay drawer: üst bar eylemleri, otomatik kayıt, alt görevler, bağlantılar, aktivite ---------- */
.drawer-head-actions{display:flex;align-items:center;gap:6px}
.autosave-status{font-size:var(--t-caption);color:var(--muted);white-space:nowrap}
.autosave-status.ok{color:var(--green)}
.autosave-status.error{color:var(--red)}
.task-menu-wrap{position:relative}
.task-menu{position:absolute;top:calc(100% + 4px);right:0;min-width:190px;background:var(--c-surface);border:1px solid var(--c-separator);border-radius:var(--r-md);box-shadow:var(--shadow-elevated);padding:6px;display:grid;gap:2px;z-index:10;backdrop-filter:blur(20px)}
.task-menu[hidden]{display:none}
.task-menu button{border:0;background:transparent;text-align:left;padding:9px 10px;border-radius:var(--r-sm);font-size:var(--t-footnote);color:var(--c-label);cursor:pointer}
.task-menu button:hover{background:var(--c-fill-2)}
.task-menu button.danger-text{color:var(--red)}
.section-count{font-weight:400;color:var(--muted);font-size:var(--t-subcaption);margin-left:4px}
.icon-btn-tiny{border:0;background:transparent;color:var(--faint);width:22px;height:22px;display:grid;place-items:center;border-radius:var(--r-sm);cursor:pointer;flex:0 0 auto}
.icon-btn-tiny:hover{background:rgba(0,0,0,.06);color:var(--red)}
.icon-btn-tiny svg{width:12px;height:12px}
.subtask-row{display:flex;align-items:center;gap:9px;padding:7px 2px}
.subtask-row span:not(.icon-btn-tiny){flex:1;font-size:var(--t-footnote)}
.subtask-done-text{text-decoration:line-through;color:var(--muted)}
.subtask-add-form,.link-add-form{display:flex;gap:7px;margin-top:8px}
.subtask-add-form input{flex:1}
.link-add-form{flex-wrap:wrap}
.link-add-form select{flex:0 0 140px}
.link-add-form input{flex:1;min-width:120px}
.task-link-row{display:flex;align-items:center;gap:9px;padding:7px 2px}
.task-link-row a{flex:1;font-size:var(--t-footnote);color:var(--blue);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.link-type-badge{font-size:var(--t-micro);font-weight:600;background:rgba(0,0,0,.06);color:var(--muted);padding:2px 6px;border-radius:var(--r-xs);flex:0 0 auto}
.activity-row{display:flex;align-items:center;gap:8px;padding:6px 2px;font-size:var(--t-subcaption);color:var(--muted)}
.activity-row b{color:var(--text);font-weight:600}
.activity-row small{margin-left:auto;flex:0 0 auto}

/* ---------- Brand picker (marka seçimi: logo + ad, Yeni görev formu) ---------- */
.brand-picker{position:relative}
.brand-picker-btn{display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;text-align:left}
.brand-picker-selected{display:flex;align-items:center;gap:8px;min-width:0;overflow:hidden}
.brand-picker-selected span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.brand-picker-btn .chevron{width:16px;height:16px;flex:0 0 auto;color:var(--muted)}
.brand-picker-list{position:absolute;top:calc(100% + 4px);left:0;right:0;max-height:240px;overflow:auto;background:var(--c-surface);border:1px solid var(--c-separator);border-radius:var(--r-md);box-shadow:var(--shadow-elevated);padding:6px;z-index:10;backdrop-filter:blur(20px)}
.brand-picker-option{width:100%;display:flex;align-items:center;gap:8px;border:0;background:transparent;padding:8px;border-radius:var(--r-sm);text-align:left;cursor:pointer;font-size:var(--t-footnote);color:var(--c-label)}
.brand-picker-option:hover{background:var(--c-fill-2)}
.brand-picker-option[aria-selected="true"]{background:var(--blue2);color:var(--blue);font-weight:600}

/* ---------- LogoUploader (shared by Yeni Marka + Marka Ayarları) ---------- */
.logo-uploader{display:flex;gap:14px;align-items:flex-start}
.logo-uploader-preview{width:64px;height:64px;border-radius:var(--r-lg);flex:0 0 auto;overflow:hidden;display:grid;place-items:center;color:#fff;font-weight:700;font-size:var(--t-headline-lg);
  background-image:linear-gradient(45deg,#e9e9ec 25%,transparent 25%),linear-gradient(-45deg,#e9e9ec 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#e9e9ec 75%),linear-gradient(-45deg,transparent 75%,#e9e9ec 75%);
  background-size:14px 14px;background-position:0 0,0 7px,7px -7px,-7px 0;background-color:#fff}
.logo-uploader-preview img{width:100%;height:100%;object-fit:contain;padding:6%;box-sizing:border-box}
.logo-uploader-preview .logo-preview-fallback{width:100%;height:100%;display:grid;place-items:center;background:var(--blue)}
.logo-uploader-controls{flex:1;min-width:0;display:grid;gap:8px}
.logo-dropzone{border:1.5px dashed var(--line);border-radius:var(--r-md);padding:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-align:center;cursor:pointer;color:var(--muted);background:rgba(0,0,0,.015);transition:var(--motion-fast)}
.logo-dropzone svg{width:20px;height:20px;color:var(--faint)}
.logo-dropzone span{font-size:var(--t-footnote);color:var(--text)}
.logo-dropzone small{font-size:var(--t-caption);color:var(--muted)}
.logo-dropzone:hover,.logo-dropzone.drag-over{border-color:var(--blue);background:var(--blue2);color:var(--blue)}
.logo-uploader-actions{display:flex;gap:14px}
.logo-uploader-actions button{border:0;background:transparent;color:var(--blue);font-size:var(--t-subcaption);font-weight:600;cursor:pointer;padding:0}
.logo-uploader-actions button.danger-text{color:var(--red)}
.logo-uploader-status{font-size:var(--t-caption);color:var(--muted);min-height:14px}
.logo-uploader-status.error{color:var(--red)}
.logo-uploader-status.ok{color:var(--green)}

/* ---------- DRAG & DROP: sidebar project reorder ---------- */
.project-btn[draggable]{cursor:grab}
.project-btn.dragging{opacity:.4;box-shadow:var(--shadow-elevated)}
.project-btn.drag-over{box-shadow:inset 0 2px 0 var(--blue)}

/* ---------- DRAG & DROP + long-press: kanban board ---------- */
.board-task-card[draggable]{cursor:grab}
.board-task-card.dragging{opacity:.9;cursor:grabbing;transform:scale(1.04) rotate(-1.5deg);box-shadow:0 18px 30px -8px rgba(0,0,0,.22),0 2px 6px rgba(0,0,0,.08)}
.board-cards-stack.drag-over{background:rgba(0,0,0,.035)}
.status-popover{position:fixed;z-index:130;background:var(--c-surface);border:1px solid var(--c-separator);border-radius:var(--r-md);box-shadow:var(--shadow-elevated);padding:6px;display:grid;gap:2px;min-width:170px;backdrop-filter:blur(20px)}
.status-popover button{border:0;background:transparent;text-align:left;padding:9px 11px;border-radius:var(--r-sm);font-size:var(--t-footnote);color:var(--c-label);cursor:pointer}
.status-popover button:hover{background:var(--c-fill-2)}
.status-popover button.current{color:var(--blue);font-weight:600}
.kb-menu{min-width:200px}
.kb-menu-filter{width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:var(--r-sm);padding:7px 9px;font-size:var(--t-footnote);outline:0}
.kb-menu-list{display:grid;gap:2px}
.kb-menu-list button{display:flex;align-items:center;gap:8px}
.kb-menu-list kbd{border:1px solid var(--line);border-radius:var(--r-xs);padding:1px 5px;font-size:var(--t-micro);color:var(--muted)}
.kb-menu-empty{padding:9px 11px;color:var(--muted);font-size:var(--t-footnote)}
.kb-menu [aria-selected=true]{background:rgba(0,0,0,.06)}

/* ---------- Completion celebration ---------- */
@keyframes checkPulse{0%{transform:scale(1)}40%{transform:scale(1.35);box-shadow:0 0 0 8px rgba(0,119,237,.16)}100%{transform:scale(1);box-shadow:0 0 0 0 rgba(0,119,237,0)}}
.check.pulse{animation:checkPulse .5s ease}
@keyframes rowFlash{0%{background:rgba(48,184,88,.22)}100%{background:transparent}}
.project-task-row.just-done{animation:rowFlash .65s ease}
.board-task-card.just-done{animation:rowFlash .65s ease}

/* ---------- In-app notification pop-ups ---------- */
.popup-stack{position:fixed;top:18px;right:18px;display:flex;flex-direction:column;gap:10px;z-index:120;max-width:340px;width:calc(100vw - 36px)}
.popup-card{display:flex;gap:10px;align-items:flex-start;background:var(--c-surface);border:1px solid var(--c-separator);border-radius:var(--r-lg);padding:12px 12px 12px 13px;box-shadow:var(--shadow-elevated);cursor:pointer;animation:popupIn .25s ease;backdrop-filter:blur(20px);color:var(--c-label)}
.popup-card.leaving{animation:popupOut .2s ease forwards}
@keyframes popupIn{from{opacity:0;transform:translateX(24px)}to{opacity:1;transform:translateX(0)}}
@keyframes popupOut{from{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(24px)}}
.popup-card .project-logo{width:34px;height:34px;flex:0 0 auto}
.popup-card .project-logo svg{width:16px;height:16px;stroke:white}
.popup-body{flex:1;min-width:0}
.popup-body b{display:block;font-size:var(--t-footnote);margin-bottom:2px;color:var(--c-label)}
.popup-body p{margin:0;font-size:var(--t-subcaption);color:var(--c-label-2);line-height:1.4}
.popup-close{border:0;background:transparent;color:var(--c-label-3);padding:2px;flex:0 0 auto}
.popup-close svg{width:13px;height:13px}
@media(max-width:600px){.popup-stack{left:10px;right:10px;top:calc(10px + env(safe-area-inset-top));max-width:100%;width:auto}}
.app-download{margin-top:6px;padding-top:6px;border-top:1px solid var(--line-soft)}
.app-download a{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:var(--r-sm);color:var(--muted);text-decoration:none;font-size:var(--t-subcaption)}
.app-download a:hover{background:rgba(0,0,0,.045);color:var(--text)}
.app-download svg{width:14px;height:14px}
.app-download-alt{padding:0 8px 2px!important;font-size:var(--t-caption)!important;color:var(--faint)!important}

/* ---------- Kısayol ipuçları (hover/focus tooltip) ---------- */
.shortcut-tip{position:fixed;top:0;left:0;z-index:200;display:flex;gap:4px;align-items:center;padding:5px 7px;border-radius:var(--r-sm);background:rgba(29,29,31,.94);backdrop-filter:blur(8px);color:#fff;font-size:var(--t-caption);font-weight:600;letter-spacing:.01em;white-space:nowrap;box-shadow:0 10px 26px rgba(0,0,0,.2);opacity:0;transform:translateY(3px) scale(.98);pointer-events:none;transition:opacity .12s ease,transform .12s ease}
.shortcut-tip.show{opacity:1;transform:translateY(0) scale(1)}
.shortcut-tip kbd{border:0;border-radius:var(--r-xs);background:rgba(255,255,255,.16);color:#fff;padding:2px 5px;font:inherit;box-shadow:none}

/* ---------- Kısayollar modalı (? tuşu) ---------- */
.shortcuts-body{display:grid;gap:22px;margin-top:18px}.summary-modal-body{margin-top:6px;max-height:56vh;overflow:auto}
.shortcuts-group h3{margin:0 0 4px;font-size:var(--t-caption);font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.07em}
.shortcut-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:9px 2px;border-top:1px solid var(--line)}
.shortcuts-group h3+.shortcut-row{border-top:0}
.shortcut-row span:first-child{font-size:var(--t-footnote);color:var(--text)}
.kbd-group{display:flex;gap:4px;flex:0 0 auto}
.kbd-group kbd{border:0;border-radius:var(--r-sm);background:rgba(0,0,0,.05);color:var(--text);padding:3px 7px;font-size:var(--t-caption);font-weight:600;box-shadow:inset 0 -1.5px 0 rgba(0,0,0,.06),inset 0 0 0 1px var(--line-soft)}

/* ---------- Uygulama Ayarları (hesap + kısayol düzenleyici) ---------- */
.account-settings-profile{display:flex;align-items:center;gap:16px;padding:2px 2px 20px}
.account-settings-profile b{display:block;font-size:var(--t-body)}
.account-settings-profile small{display:block;color:var(--muted);font-size:var(--t-subcaption);margin-top:2px}
.account-settings-profile .badge{margin-top:6px;display:inline-block}
/* Avatar upload wrapper */
.avatar-upload{position:relative;cursor:pointer;flex:0 0 auto}
.avatar-upload input[type="file"]{display:none}
.avatar-upload .avatar{transition:filter .2s}
.avatar-upload:hover .avatar{filter:brightness(.85)}
.avatar-upload .avatar-overlay{position:absolute;inset:0;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.45);color:#fff;font-size:var(--t-micro);font-weight:600;opacity:0;transition:opacity .2s;pointer-events:none;letter-spacing:.01em}
.avatar-upload:hover .avatar-overlay{opacity:1}
.avatar-upload .avatar-overlay svg{width:18px;height:18px;stroke:#fff;stroke-width:2}
/* Avatar with image */
.avatar.has-image{padding:0;overflow:hidden;border:2px solid var(--line)}
.avatar.has-image img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}
/* Sidebar avatar image */
#accountAvatar.has-image{padding:0;overflow:hidden}
#accountAvatar.has-image img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}
/* Profile name editing */
.profile-name-row{display:flex;align-items:center;gap:6px}
.profile-name-row .edit-name-btn{border:0;background:transparent;color:var(--muted);cursor:pointer;padding:2px;border-radius:var(--r-sm);display:grid;place-items:center;transition:color .15s,background .15s}
.profile-name-row .edit-name-btn:hover{color:var(--blue);background:rgba(0,119,237,.08)}
.profile-name-row .edit-name-btn svg{width:14px;height:14px}
.profile-name-input{border:1px solid var(--c-separator);border-radius:var(--r-sm);padding:3px 8px;font-size:var(--t-body);font-weight:600;outline:none;width:100%;max-width:220px;background:var(--c-surface);color:var(--c-label);box-shadow:0 0 0 3px rgba(0,119,237,.09);transition:border-color .15s,box-shadow .15s}
.profile-name-actions{display:flex;gap:4px;margin-top:4px}
.profile-name-actions button{border:0;border-radius:var(--r-sm);padding:3px 10px;font-size:var(--t-caption);font-weight:600;cursor:pointer;transition:background .15s}
.profile-name-actions .save-name{background:var(--blue);color:#fff}
.profile-name-actions .save-name:hover{background:#005ec4}
.profile-name-actions .cancel-name{background:rgba(0,0,0,.06);color:var(--text)}
.profile-name-actions .cancel-name:hover{background:rgba(0,0,0,.1)}
/* Avatar loading state */
.avatar-upload.uploading .avatar{opacity:.5}
.avatar-upload.uploading .avatar-overlay{opacity:1;background:rgba(0,0,0,.55)}
.avatar-upload .avatar-spinner{display:none;position:absolute;inset:0;border-radius:50%;border:3px solid transparent;border-top-color:#fff;animation:spin .7s linear infinite}
.avatar-upload.uploading .avatar-spinner{display:block}
@keyframes spin{to{transform:rotate(360deg)}}
.shortcut-editor-list{margin-bottom:20px}
.shortcut-edit-row{display:flex;align-items:center;gap:10px;padding:9px 11px;border:1px solid var(--c-separator);border-radius:var(--r-md);background:var(--c-surface-2);color:var(--c-label);transition:border-color .15s,box-shadow .15s}
.shortcut-edit-row span:first-child{flex:1;min-width:0;font-size:var(--t-footnote);color:var(--c-label)}
.shortcut-edit-row .kbd-group{min-width:0}
.shortcut-edit-row.recording{border-color:var(--blue);box-shadow:0 0 0 3px rgba(0,119,237,.12)}
.shortcut-edit-row.recording kbd{background:var(--blue2);color:var(--blue)}
.shortcut-edit-actions{display:flex;align-items:center;gap:4px;flex:0 0 auto}

/* ---------- MARKA DAVET ONAY POP-UP & ARKA PLAN BULANIKLIĞI ---------- */
.invite-blurred-content{filter:blur(14px) brightness(0.95);pointer-events:none;user-select:none;transition:filter .35s ease}
.invite-confirm-overlay{position:fixed;inset:0;z-index:160;background:rgba(0,0,0,.35);backdrop-filter:blur(4px);display:grid;place-items:center;padding:20px;animation:inviteFadeIn .25s ease}
.invite-confirm-card{width:min(440px,100%);background:var(--c-surface);border:1px solid var(--c-separator);border-radius:var(--r-lg);padding:32px 26px;box-shadow:0 24px 60px rgba(0,0,0,.18),0 4px 16px rgba(0,0,0,.06);text-align:center;animation:invitePopUp .3s cubic-bezier(.16,1,.3,1);position:relative;color:var(--c-label)}
.invite-logo-wrap{display:inline-flex;margin-bottom:14px;position:relative}
.invite-logo-wrap .project-logo{width:68px;height:68px;border-radius:var(--r-lg);font-size:var(--t-title);font-weight:700;box-shadow:0 8px 24px rgba(0,0,0,.12)}
.invite-confirm-badge{display:inline-block;padding:3px 10px;border-radius:var(--r-lg);background:var(--blue2);color:var(--blue);font-size:var(--t-caption);font-weight:700;letter-spacing:.04em;text-transform:uppercase;margin-bottom:8px}
.invite-confirm-title{font-size:var(--t-title);font-weight:750;letter-spacing:-.03em;margin:0 0 6px;color:var(--c-label)}
.invite-confirm-desc{font-size:var(--t-callout);color:var(--c-label-2);line-height:1.45;margin:0 0 20px}
.invite-members-box{background:var(--c-fill);border:1px solid var(--c-separator);border-radius:var(--r-lg);padding:14px;margin-bottom:22px;text-align:left}
.invite-members-box-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;font-size:var(--t-subcaption);font-weight:600;color:var(--c-label-2)}
.invite-avatar-stack{display:flex;align-items:center;padding-left:6px}
.invite-avatar-stack .avatar{width:32px;height:32px;border-radius:50%;margin-left:-6px;border:2.5px solid var(--c-surface);box-shadow:0 2px 6px rgba(0,0,0,.1);font-size:var(--t-caption);font-weight:600;display:grid;place-items:center;flex-shrink:0;background:var(--blue2);color:var(--blue)}
.invite-avatar-stack .avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}
.invite-members-text{font-size:var(--t-footnote);color:var(--c-label);margin-top:9px;line-height:1.4}
.invite-members-text b{font-weight:600}
.invite-confirm-actions{display:flex;gap:10px}
.invite-confirm-actions button.invite-accept-btn{flex:1;height:44px;border:0;border-radius:var(--r-md);background:var(--blue);color:#fff;font-weight:600;font-size:var(--t-body);display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;box-shadow:0 4px 14px rgba(0,119,237,.28);transition:transform .15s,box-shadow .15s,background .15s}
.invite-confirm-actions button.invite-accept-btn:hover{background:#0066cc;transform:translateY(-1px);box-shadow:0 6px 18px rgba(0,119,237,.35)}
.invite-confirm-actions button.invite-accept-btn:active{transform:none}
.invite-confirm-actions button.invite-decline-btn{height:44px;padding:0 20px;border:1px solid var(--c-separator);border-radius:var(--r-md);background:var(--c-surface);color:var(--c-label-2);font-weight:500;font-size:var(--t-callout);cursor:pointer;transition:background .15s,color .15s}
.invite-confirm-actions button.invite-decline-btn:hover{background:var(--c-fill-2);color:var(--c-label)}

body.invite-preview-mode .rail,body.invite-preview-mode .topbar{pointer-events:none;user-select:none;filter:blur(3px);opacity:.85;transition:filter .35s ease,opacity .35s ease}

.icon-btn.danger-hover:hover{color:var(--red);background:rgba(255,69,58,.1)}
.settings-leave-box{margin-top:20px;padding-top:14px;border-top:1px solid var(--line);text-align:center}
.btn-leave-brand-full{width:100%;height:38px;border:1px solid rgba(255,69,58,.25);border-radius:var(--r-md);background:rgba(255,69,58,.06);color:var(--red);font-weight:600;font-size:var(--t-footnote);display:flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;transition:background .15s,border-color .15s}
.btn-leave-brand-full:hover{background:rgba(255,69,58,.14);border-color:var(--red)}
.btn-leave-brand-full svg{width:16px;height:16px}
.btn-leave-brand{margin-left:auto;font-size:var(--t-caption)}

@keyframes inviteFadeIn{from{opacity:0}to{opacity:1}}
@keyframes invitePopUp{from{opacity:0;transform:scale(0.92) translateY(8px)}to{opacity:1;transform:none}}

/* ===================== Flowtask Marka Kimliği (Brand Identity) ===================== */
:root {
  --font-brand: 'Bodoni Moda', Georgia, serif;
  --font: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --brand-komur: #242424;
  --brand-kirik-beyaz: #f4f1eb;
  --brand-grafit: #30302e;
  --brand-inci: #e9eaec;
  --brand-sicak-gri: #d8d4cc;
}

:root, [data-theme="light"] {
  --c-bg: #f4f1eb;
  --c-surface: #ffffff;
  --c-surface-2: #f9f7f3;
  --c-sidebar: rgba(244,241,235,.94);
  --c-label: #242424;
  --c-label-2: #6e6a63;
  --c-label-3: #9e9a92;
  --c-separator: #e2ded6;
  --c-fill: rgba(36,36,36,.05);
  --c-fill-2: rgba(36,36,36,.09);
  --c-accent: #242424;
  --c-accent-soft: rgba(36,36,36,.07);
  --c-accent-text: #242424;
  --c-gray: #d8d4cc;
  --bg: var(--c-bg);
  --glass: var(--c-surface);
  --white: #ffffff;
  --text: var(--c-label);
  --muted: var(--c-label-2);
  --faint: var(--c-label-3);
  --line: var(--c-separator);
  --line-soft: rgba(36,36,36,.06);
  --blue: var(--c-accent);
  --blue2: var(--c-accent-soft);
  --shadow-1: 0 1px 3px rgba(36,36,36,.04), 0 1px 2px rgba(36,36,36,.02);
  --shadow-2: 0 6px 20px rgba(36,36,36,.08);
  --shadow-3: 0 18px 50px rgba(36,36,36,.12);
}

[data-theme="dark"] {
  --c-bg: #1a1a18;
  --c-surface: #242424;
  --c-surface-2: #2e2e2a;
  --c-sidebar: rgba(26,26,24,.95);
  --c-label: #f4f1eb;
  --c-label-2: #a8a59e;
  --c-label-3: #706d67;
  --c-separator: #383835;
  --c-fill: rgba(244,241,235,.06);
  --c-fill-2: rgba(244,241,235,.11);
  --c-accent: #f4f1eb;
  --c-accent-soft: rgba(244,241,235,.12);
  --c-accent-text: #f4f1eb;
  --c-gray: #4a4a46;
  --bg: var(--c-bg);
  --glass: var(--c-surface);
  --white: #242424;
  --text: var(--c-label);
  --muted: var(--c-label-2);
  --faint: var(--c-label-3);
  --line: var(--c-separator);
  --line-soft: rgba(244,241,235,.08);
  --blue: var(--c-accent);
  --blue2: var(--c-accent-soft);
  --shadow-1: 0 1px 3px rgba(0,0,0,.4);
  --shadow-2: 0 8px 24px rgba(0,0,0,.5);
  --shadow-3: 0 24px 60px rgba(0,0,0,.65);
}

@media(prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --c-bg: #1a1a18;
    --c-surface: #242424;
    --c-surface-2: #2e2e2a;
    --c-sidebar: rgba(26,26,24,.95);
    --c-label: #f4f1eb;
    --c-label-2: #a8a59e;
    --c-label-3: #706d67;
    --c-separator: #383835;
    --c-fill: rgba(244,241,235,.06);
    --c-fill-2: rgba(244,241,235,.11);
    --c-accent: #f4f1eb;
    --c-accent-soft: rgba(244,241,235,.12);
    --c-accent-text: #f4f1eb;
    --c-gray: #4a4a46;
    --bg: var(--c-bg);
    --glass: var(--c-surface);
    --white: #242424;
    --text: var(--c-label);
    --muted: var(--c-label-2);
    --faint: var(--c-label-3);
    --line: var(--c-separator);
    --line-soft: rgba(244,241,235,.08);
    --blue: var(--c-accent);
    --blue2: var(--c-accent-soft);
  }
}

.brand-title,.brand-wordmark{font-family:var(--font-brand);font-weight:500;letter-spacing:-.02em}
.brand-tagline,.brand-motto{font-family:var(--font-brand);font-style:italic;color:var(--c-label-2);font-size:var(--t-caption);letter-spacing:.04em}
.auth-card h1{font-family:var(--font-brand);font-weight:500;letter-spacing:-.02em;margin:12px 0 2px;font-size:var(--t-large)}
.page-head h1{font-family:var(--font-brand);font-weight:500;letter-spacing:-.02em}
.modal-head h2{font-family:var(--font-brand);font-weight:500}
.project-title{font-family:var(--font-brand);font-weight:500}

#themeToggle .theme-icon-sun,#themeToggle .theme-icon-moon{width:18px;height:18px;transition:transform var(--motion-base) var(--ease)}
html:not([data-theme="dark"]) #themeToggle .theme-icon-sun{display:none}
html:not([data-theme="dark"]) #themeToggle .theme-icon-moon{display:block}
html[data-theme="dark"] #themeToggle .theme-icon-sun{display:block}
html[data-theme="dark"] #themeToggle .theme-icon-moon{display:none}
#themeToggle:hover svg{transform:rotate(20deg) scale(1.1)}

.theme-settings-row{margin-top:18px;padding-top:14px;border-top:1px solid var(--c-separator)}
.theme-settings-row b{display:block;font-size:var(--t-footnote);color:var(--c-label)}
.theme-settings-row p{margin:3px 0 10px;color:var(--c-label-2);font-size:var(--t-caption)}
.theme-picker-group{display:flex;gap:8px}
.theme-choice-btn{flex:1;height:36px;border:1px solid var(--c-separator);border-radius:var(--r-sm);background:var(--c-surface);color:var(--c-label);font-size:var(--t-footnote);font-weight:500;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:all var(--motion-fast) var(--ease)}
.theme-choice-btn:hover{background:var(--c-fill)}
.theme-choice-btn.active{border-color:var(--c-label);background:var(--c-fill-2);font-weight:600}

/* ===================== Redesign · Kabuk ===================== */
body{background:var(--c-bg);color:var(--c-label)}
.rail{background:var(--c-sidebar);-webkit-backdrop-filter:blur(30px) saturate(180%);backdrop-filter:blur(30px) saturate(180%);border-right:1px solid var(--c-separator)}
.workspace b,.account b{font-size:var(--t-callout);font-weight:600}
.workspace small,.account small{font-size:var(--t-caption);color:var(--c-label-2)}
.workspace:hover,.account:hover,.nav:hover,.project-btn:hover{background:var(--c-fill)}
.nav{border-radius:var(--r-sm);color:var(--c-label);font-size:var(--t-callout)}
.nav svg{color:var(--c-accent)}
.nav.active{background:var(--c-accent-soft);color:var(--c-label);font-weight:600}
.nav b{background:transparent;color:var(--c-label-2);font-size:var(--t-footnote);font-weight:500}
.works header{color:var(--c-label-2);font-size:var(--t-caption);font-weight:600;letter-spacing:.02em}
.project-btn{border-radius:var(--r-sm);font-size:var(--t-callout)}
.project-btn.active{background:var(--c-accent-soft);box-shadow:none}
.project-btn small{color:var(--c-label-3);font-size:var(--t-footnote)}
.project-btn .project-logo{font-size:var(--t-micro)}
.topbar{background:var(--c-sidebar);-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);border-bottom:1px solid var(--c-separator)}
.search{border-radius:var(--r-sm);background:var(--c-fill);color:var(--c-label-2)}
.search span{font-size:var(--t-callout)}
.search kbd,.command kbd{background:var(--c-surface);color:var(--c-label-2);box-shadow:inset 0 0 0 1px var(--c-separator)}
.icon{border-radius:var(--r-sm);color:var(--c-label-2)}
.icon:hover{background:var(--c-fill);color:var(--c-label)}
.primary{border-radius:var(--r-sm);background:var(--c-accent);color:var(--c-bg);font-size:var(--t-callout);font-weight:500;box-shadow:0 1px 3px rgba(0,0,0,.08);transition:all var(--motion-fast) var(--ease)}
.primary:hover{opacity:.92;transform:translateY(-0.5px)}
.primary:active{opacity:.85;transform:translateY(0)}
[data-theme="dark"] .primary{background:var(--c-accent);color:var(--brand-komur)}
[data-theme="dark"] .primary:hover{background:#e5e2da}
.secondary{border:1px solid var(--c-separator);border-radius:var(--r-sm);background:var(--c-surface);color:var(--c-label);font-size:var(--t-callout);font-weight:500;transition:all var(--motion-fast) var(--ease)}
.secondary:hover{background:var(--c-fill)}
.field{border:1px solid transparent;border-radius:var(--r-sm);background:var(--c-fill);font-size:var(--t-callout)}
.field:focus{background:var(--c-surface);border-color:var(--c-accent);box-shadow:0 0 0 3px var(--c-accent-soft)}
.segments,.invite-tabs{background:var(--c-fill-2);border-radius:var(--r-sm)}
.segments button,.invite-tabs button{border-radius:var(--r-sm);color:var(--c-label);font-size:var(--t-footnote);font-weight:500}
.segments button.active,.invite-tabs button.active{background:var(--c-surface);box-shadow:0 1px 3px rgba(0,0,0,.12),0 0 0 .5px rgba(0,0,0,.04);font-weight:600}
:focus-visible{outline:2px solid var(--c-accent);outline-offset:2px}
@media(min-width:901px){
  .app{grid-template-columns:260px 1fr}
  .rail{width:260px;padding:12px 10px}
  .topbar{height:52px}
}
@media(min-width:601px){
  .nav{height:32px;gap:10px}
  .project-btn{padding:5px 10px}
  .project-btn .project-logo{width:24px;height:24px;border-radius:var(--r-xs)}
  .search{height:30px}
  .icon{width:32px;height:32px}
  .primary{height:32px;padding:0 14px}
  .secondary{height:32px}
  .field{height:36px}
}
/* Dar ekranda kenar çubuğu açılır menüdür: örtünün (scrim) üstünde, opak ve bulanıksız olmalı. */
@media(max-width:900px){
  .rail{z-index:45;background:var(--c-bg);-webkit-backdrop-filter:none;backdrop-filter:none}
}
@media(max-width:600px){
  .topbar{background:var(--c-sidebar)}
  .mobile-title{font-size:var(--t-headline-lg);font-weight:600}
  .field{height:44px}
  .mobile-tabbar{left:0;right:0;bottom:0;height:calc(56px + env(safe-area-inset-bottom));padding:4px 6px env(safe-area-inset-bottom);border:0;border-top:1px solid var(--c-separator);border-radius:0;background:var(--c-sidebar);box-shadow:none}
  .mobile-tabbar button{height:48px;border-radius:0;color:var(--c-gray);font-size:var(--t-caption);font-weight:500}
  .mobile-tabbar button.active{background:transparent;color:var(--c-accent)}
  .mobile-tabbar .tab-fab{width:44px;height:44px;margin-top:0;border-radius:50%;background:var(--c-accent);box-shadow:0 4px 12px rgba(0,122,255,.3)}
  .content{padding-bottom:calc(84px + env(safe-area-inset-bottom))}
  .toast{bottom:calc(68px + env(safe-area-inset-bottom))}
}

/* ===================== Redesign · İçerik ===================== */
.kicker{font-size:var(--t-footnote);font-weight:500;color:var(--c-label-2)}
.page-head h1{font-weight:700;letter-spacing:-.02em;color:var(--c-label)}
.page-head p{font-size:var(--t-callout);color:var(--c-label-2)}
.metric{background:var(--c-surface);border:1px solid var(--c-separator);border-radius:var(--r-md);box-shadow:var(--shadow-1)}
.metric small{font-size:var(--t-footnote);color:var(--c-label-2)}
.metric strong{font-size:var(--t-title);font-weight:700;letter-spacing:-.02em}
.section-head h2{font-size:var(--t-footnote);font-weight:600;color:var(--c-label-2);letter-spacing:.02em}
.section-head button{color:var(--c-accent);font-size:var(--t-footnote);font-weight:500}
.project-tasks-list{background:var(--c-surface);border:1px solid var(--c-separator);border-radius:var(--r-md);box-shadow:none}
.project-task-row{position:relative;border-bottom:0}
.project-task-row:not(:last-child)::after{content:'';position:absolute;left:50px;right:0;bottom:0;height:1px;background:var(--c-separator)}
.project-task-row:hover{background:var(--c-surface-2)}
.ptask-title-text{font-size:var(--t-headline);font-weight:500;color:var(--c-label)}
.ptask-content{min-width:0}
.ptask-meta-tags{font-size:var(--t-footnote);color:var(--c-label-2)}
.check{border:1.6px solid var(--c-separator);background:transparent;transition:all var(--motion-fast) var(--ease)}
.check:hover{border-color:var(--c-label-2)}
.check.done{background:var(--c-label);border-color:var(--c-label)}
.check.done:after{color:var(--c-bg)}
.status-chip,.status-pill{font-size:var(--t-caption);font-weight:600;border-radius:var(--r-sm);background:rgba(142,142,147,.14);color:#636366}
.status-chip.progress,.status-pill.status-progress{background:rgba(0,122,255,.12);color:var(--c-accent-text)}
.status-chip.review,.status-pill.status-review{background:rgba(255,149,0,.14);color:var(--c-orange-text)}
.status-chip.approval,.status-pill.status-approval{background:rgba(88,86,214,.12);color:var(--c-indigo-text)}
.status-chip.done,.status-pill.status-done{background:rgba(52,199,89,.14);color:var(--c-green-text)}
.due-tag.late,.due-pill.late{color:var(--c-red-text)}
.prio-tag.high{color:var(--c-red-text)}
.project-pill-card,.project-card-full{background:var(--c-surface);border:1px solid var(--c-separator);border-radius:var(--r-md);box-shadow:var(--shadow-1)}
.project-pill-card:hover,.project-card-full:hover{background:var(--c-surface-2);box-shadow:var(--shadow-2);border-color:var(--c-label-3);transform:none}
.project-pill-info b,.project-card-full h3{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.member-card{background:var(--c-surface);border:1px solid var(--c-separator);border-radius:var(--r-md)}
.member-role{font-size:var(--t-footnote);border-top-color:var(--c-separator)}
.invite-banner{background:var(--c-surface);color:var(--c-label);border:1px solid var(--c-separator);border-radius:var(--r-md)}
.invite-banner p{color:var(--c-label-2);opacity:1}
.invite-banner button{background:var(--c-accent);color:#fff;border-radius:var(--r-sm)}
.project-hero-card{background:var(--c-surface);border:1px solid var(--c-separator);border-radius:var(--r-lg);box-shadow:var(--shadow-1);padding:18px}
.project-title.project-title-compact{font-size:var(--t-title);font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.project-hero-headings{min-width:0}
.progress-thin{background:var(--c-fill-2);height:4px;border-radius:var(--r-xs);overflow:hidden}
.progress-thin>span{background:var(--c-label);border-radius:var(--r-xs);transition:width var(--motion-base) var(--ease)}
.back-pill-btn{border:1px solid var(--c-separator);border-radius:var(--r-sm);background:transparent;color:var(--c-label);font-size:var(--t-footnote);font-weight:500;padding:6px 12px;transition:all var(--motion-fast)}
.back-pill-btn:hover{background:var(--c-fill);border-color:var(--c-label-3);opacity:1}
.icon-btn{border:1px solid var(--c-separator);border-radius:var(--r-sm);background:var(--c-surface);color:var(--c-label-2);transition:all var(--motion-fast)}
.icon-btn:hover{background:var(--c-fill-2);color:var(--c-label);border-color:var(--c-label-3)}
.project-nav-actions .btn-compact{height:32px;padding:0 14px;border-radius:var(--r-sm);background:var(--c-label);color:var(--c-bg);font-weight:500;font-size:var(--t-callout);border:0;box-shadow:0 1px 3px rgba(0,0,0,.12);transition:all var(--motion-fast);white-space:nowrap}
.project-nav-actions .btn-compact:hover{opacity:.92;transform:translateY(-0.5px)}
.project-mode-nav{background:var(--c-fill-2);border-radius:var(--r-sm);padding:2px;border:1px solid var(--c-separator)}
.pmode-btn{border-radius:var(--r-xs);font-size:var(--t-footnote);font-weight:500;color:var(--c-label-2);transition:all var(--motion-fast)}
.pmode-btn:hover{color:var(--c-label)}
.pmode-btn.active{background:var(--c-surface);color:var(--c-label);box-shadow:0 1px 3px rgba(0,0,0,.15);font-weight:600}
.count-pill{background:var(--c-fill-2);color:var(--c-label-2)}
.board-column{background:var(--c-fill);border:1px solid var(--c-separator);border-radius:var(--r-md);padding:12px;display:flex;flex-direction:column}
.board-task-card{background:var(--c-surface);border:1px solid var(--c-separator);border-radius:var(--r-md);box-shadow:var(--shadow-1);color:var(--c-label);transition:all var(--motion-fast)}
.board-task-card:hover{transform:translateY(-1px);box-shadow:var(--shadow-2);border-color:var(--c-label-3)}
.board-task-card.card-done{background:var(--c-fill);border-color:var(--c-separator);opacity:.65}
.bcard-title{font-size:var(--t-callout);font-weight:500;color:var(--c-label)}
/* Klavye ile seçili satır/kart: satırlarda/kartlarda kullanılan köşe yarıçapıyla tutarlı. */
.kb-selected{box-shadow:0 0 0 2px var(--c-accent) inset;border-radius:var(--r-md)}
.col-dot.status-todo{background:var(--c-gray)}
.col-dot.status-progress{background:var(--c-accent)}
.col-dot.status-review{background:var(--c-orange)}
.col-dot.status-done{background:var(--c-green)}
.col-title-left h3{font-size:var(--t-caption);font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--c-label-2);margin:0}
.col-count-bubble{background:var(--c-fill-2);color:var(--c-label-2);border-radius:var(--r-xs);padding:2px 7px;font-size:var(--t-micro);font-weight:600}
.board-empty-col{color:var(--c-label-3);font-size:var(--t-footnote)}
.info-card,.info-box-card,.info-overview-card{background:var(--c-surface);border:1px solid var(--c-separator);border-radius:var(--r-md);box-shadow:var(--shadow-1)}
@media(min-width:601px){
  .project-task-row{padding:11px 16px}
  .pmode-btn{height:30px}
  .project-mode-nav{padding:2px}
}
@media(max-width:600px){
  .summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;margin:0 0 24px;padding:0;gap:8px}
  .metric{min-width:0}
  .project-nav-bar{flex-wrap:nowrap}
  .project-nav-actions{gap:6px;flex:0 0 auto}
  .project-nav-actions .icon-btn{width:34px;height:34px}
  .project-nav-actions .btn-compact{height:34px;padding:0 10px}
  .project-task-row{padding:12px 14px;min-height:44px}
}

/* ===================== Redesign · Katmanlar ===================== */
.calendar{background:var(--c-separator);border:0;border-radius:var(--r-md)}
.day{background:var(--c-surface)}
.day>span{font-size:var(--t-footnote);color:var(--c-label);font-weight:500}
.day.today>span{background:var(--c-accent);color:#fff}
.cal-task{background:var(--c-fill);color:var(--c-label);border-radius:var(--r-xs);font-size:var(--t-subcaption)}
.calendar-agenda section{background:var(--c-surface);border:0;border-radius:var(--r-md)}
.drawer{background:var(--c-bg);box-shadow:var(--shadow-3);border-left:1px solid var(--c-separator)}
.drawer-head{background:var(--c-sidebar);-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px);border-bottom:1px solid var(--c-separator)}
.drawer-title textarea{font-family:var(--font-brand);font-weight:500;font-size:var(--t-title-3);color:var(--c-label);line-height:1.3}
.props{background:var(--c-surface);border:1px solid var(--c-separator);border-radius:var(--r-md)}
.prop{background:transparent}
.prop label{color:var(--c-label-2);font-size:var(--t-callout);font-weight:500}
.prop input,.prop select{color:var(--c-label);font-size:var(--t-callout);font-weight:500}
.drawer-section h3{font-size:var(--t-footnote);font-weight:600;color:var(--c-label-2)}
.notes,.comment-field{border:1px solid var(--c-separator);background:var(--c-surface);border-radius:var(--r-md);color:var(--c-label)}
.comment-body{background:var(--c-surface);border:1px solid var(--c-separator);border-radius:var(--r-md);color:var(--c-label)}
.modal-layer{background:rgba(0,0,0,.25);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.modal-card{background:var(--c-surface);border:1px solid var(--c-separator);box-shadow:var(--shadow-3)}
.modal-head h2{font-size:var(--t-title-3);font-weight:700}
.modal-head p{font-size:var(--t-footnote);color:var(--c-label-2)}
.form label>span{font-size:var(--t-footnote);color:var(--c-label-2)}
.notice-panel{background:var(--c-surface);-webkit-backdrop-filter:blur(30px) saturate(180%);backdrop-filter:blur(30px) saturate(180%);border:1px solid var(--c-separator);box-shadow:var(--shadow-2);color:var(--c-label)}
.notice-panel-head{background:transparent;border-bottom-color:var(--c-separator)}
.notice-item.unread{background:var(--c-accent-soft)}
.command{background:var(--c-surface);-webkit-backdrop-filter:blur(30px) saturate(180%);backdrop-filter:blur(30px) saturate(180%);border:1px solid var(--c-separator);box-shadow:var(--shadow-3);color:var(--c-label)}
.command-input input{font-size:var(--t-headline-lg);color:var(--c-label)}
.result:hover{background:var(--c-accent-soft)}
.toast{background:var(--c-surface-2);border:1px solid var(--c-separator);border-radius:var(--r-md);font-size:var(--t-footnote);color:var(--c-label);box-shadow:var(--shadow-2)}
.auth-card{border-radius:var(--r-lg);box-shadow:var(--shadow-2)}
.auth-card h1{font-size:var(--t-title);font-weight:700;letter-spacing:-.02em}
#googleSignIn{background:var(--c-surface);color:var(--c-label);border:1px solid rgba(0,0,0,.18);box-shadow:none}
#googleSignIn:hover{background:var(--c-surface-2)}
@media(min-width:601px){
  .calendar{grid-template-columns:repeat(7,minmax(0,1fr))}
  .day{min-width:0}
  .drawer{width:min(560px,100vw)}
  .drawer-head{height:52px}
  .modal-actions .primary,.modal-actions .secondary{min-width:88px;justify-content:center}
  #googleSignIn{height:44px}
}
.props{grid-template-columns:1fr;gap:0}
.prop{display:grid;grid-template-columns:120px minmax(0,1fr);align-items:center;column-gap:12px;padding:10px 16px;border-bottom:1px solid var(--c-separator)}
.prop:last-child{border-bottom:0}
.prop label{margin:0}
.prop input,.prop select{text-align:right;text-align-last:right}
.prop>:not(label){grid-column:2}
.prop-extra{align-items:flex-end}
@media(max-width:600px){
  .prop{grid-template-columns:96px minmax(0,1fr);min-height:44px}
  .cal-task{font-size:var(--t-caption)}
  .modal-actions{background:var(--c-surface)}
}

/* ===================== Redesign · Yardımcı sınıflar ===================== */
.project-logo.logo-placeholder{background:#c7c7cc}
.project-logo.logo-summary{background:var(--c-accent);color:#fff;display:inline-grid;place-items:center}
.project-logo.logo-icon{color:#fff;display:inline-grid;place-items:center}
.project-logo.xl{width:68px;height:68px;border-radius:var(--r-lg);font-size:var(--t-title)}
.back-pill-btn.is-dimmed{opacity:.6}
.progress-thin>.progress-preview{width:45%}
.invite-preview-list{margin-top:20px}
.invite-preview-row{margin-bottom:8px}
.push-right{margin-left:auto}
.avatar.extra{background:var(--c-fill-2);color:var(--c-label-2);font-size:var(--t-caption)}
.avatar.avatar-lg{width:52px;height:52px;font-size:var(--t-headline)}
svg.svg-17{width:17px;height:17px}
.settings-section-title.spaced{margin-top:20px}
.empty-state-wrap{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:55vh;text-align:center;padding:40px 20px}
.empty-state-emoji{font-size:var(--t-large);margin-bottom:16px}
.empty-state-title{font-size:var(--t-title);font-weight:700;margin:0 0 8px;color:var(--c-label)}
.empty-state-text{color:var(--c-label-2);max-width:420px;line-height:1.5;margin:0 0 24px;font-size:var(--t-body)}
#declineCreateWsBtn{padding:10px 22px}
.brand.auth-logo{width:44px;height:44px;border-radius:var(--r-md)}
#googleSignIn{width:100%;justify-content:center;gap:10px}

/* ===================== Redesign · Masaüstü başlık çubuğu ===================== */
.desktop-titlebar{height:var(--titlebar-h);background:var(--c-sidebar);-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border-bottom:1px solid var(--c-separator)}
.desktop-titlebar-brand{font-size:var(--t-subcaption);font-weight:600;color:var(--c-label-2)}
.titlebar-btn{width:46px;height:var(--titlebar-h);color:var(--c-label)}
.titlebar-btn:hover{background:var(--c-fill-2)}
.titlebar-btn.close:hover{background:#c42b1c;color:#fff}
body.has-desktop-titlebar{padding-top:var(--titlebar-h)}
body.has-desktop-titlebar .rail{inset:var(--titlebar-h) auto 0 0}
body.has-desktop-titlebar .topbar{top:var(--titlebar-h)}
@media(max-width:900px){body.has-desktop-titlebar .rail.open{inset:var(--titlebar-h) auto 0 0}}
body.has-desktop-titlebar .drawer{top:var(--titlebar-h)}
body.platform-darwin{--titlebar-h:38px}

/* ===================== Tek kişisel alan ===================== */
/* Kenar çubuğu üstü artık yalnızca logo + kullanıcı adı; tıklanamaz. */
div.workspace{cursor:default}
div.workspace:hover{background:transparent}

/* ===================== Hızlı görev ipucu satırı ===================== */
.task-form-hint{margin:-4px 0 0;font-size:var(--t-caption);color:var(--muted);display:flex;gap:4px;align-items:center}
.task-form-hint kbd{border:0;border-radius:var(--r-sm);background:rgba(0,0,0,.05);color:var(--text);padding:3px 7px;font-size:var(--t-caption);font-weight:600;box-shadow:inset 0 -1.5px 0 rgba(0,0,0,.06),inset 0 0 0 1px var(--line-soft)}
@media (hover:none){.task-form-hint{display:none}}
.auth-divider{display:flex;align-items:center;gap:10px;margin:18px 0 14px;color:var(--muted);font-size:var(--t-caption)}.auth-divider:before,.auth-divider:after{content:'';flex:1;height:1px;background:var(--line)}
.auth-form{display:grid;gap:9px;text-align:left}.auth-form[hidden]{display:none}.auth-form .primary{width:100%;justify-content:center;margin-top:4px}
#googleSignIn{width:100%;justify-content:center}
.auth-switch{margin:6px 0 0!important;text-align:center}.link-btn{border:0;background:none;padding:0;color:var(--blue);font:inherit;cursor:pointer}.link-btn:hover{text-decoration:underline}
.credentials-section{display:grid;gap:8px;margin:18px 0;padding:14px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--white)}.credentials-section p{margin:0;color:var(--muted);font-size:var(--t-footnote)}.credentials-form{margin-top:4px;gap:8px}.credentials-hint{color:var(--muted);font-size:var(--t-caption)}.credentials-section .auth-status{min-height:0}
.field{color:var(--c-label)}
