.project-home{--workbench-border:var(--hairline-4);--workbench-border-strong:color-mix(in srgb, var(--accent) 24%, transparent);--workbench-text:var(--ink);--workbench-muted:var(--muted);width:100%;max-width:none;min-height:calc(100svh - 72px);margin:0 auto;padding:0 clamp(22px,4vw,72px);position:relative}.project-home>*,.project-dashboard{min-width:0}.project-stage{background:0 0;border:0;grid-template-columns:minmax(0,1fr);height:calc(100svh - 72px);min-height:680px;display:grid;position:relative;overflow:clip}.project-stage-watermark{color:var(--hairline-1);letter-spacing:-.12em;pointer-events:none;-webkit-user-select:none;user-select:none;white-space:nowrap;font-family:Songti SC,STSong,Noto Serif SC,serif;font-size:clamp(180px,23vw,390px);font-weight:600;line-height:.75;position:absolute;top:49%;left:1vw;transform:translateY(-50%)}.project-stage-copy{z-index:8;grid-area:1/1;place-self:end start;max-width:500px;margin-bottom:clamp(66px,10vh,112px);padding-left:clamp(4px,1.5vw,24px);position:relative}.project-stage-copy h1{color:var(--workbench-text);letter-spacing:-.035em;text-wrap:balance;max-width:9ch;margin:0;font-family:Songti SC,Noto Serif SC,Source Han Serif SC,serif;font-size:clamp(42px,4.5vw,68px);font-weight:650;line-height:.98}.project-current-summary{max-width:46ch;margin-top:22px}.project-current-summary h2{color:var(--ink);letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:clamp(20px,1.8vw,28px);font-weight:640;line-height:1.25;overflow:hidden}.project-current-summary p,.project-stage-message,.project-input-hint{color:var(--muted);margin:9px 0 0;font-size:13px;line-height:1.6}.project-stage-actions{flex-wrap:wrap;align-items:center;gap:9px;margin-top:24px;display:flex}.project-stage-actions .button{border-radius:999px;gap:8px;min-height:46px;padding-inline:16px}.project-enter-button{box-shadow:0 14px 34px rgb(var(--shadow-ink) / 30%);min-width:132px}.project-library-button,.project-new-button{background:var(--material);border-color:var(--hairline-4);color:var(--accent)}.project-library-button:hover,.project-new-button:hover{background:var(--material);border-color:color-mix(in srgb, var(--accent) 24%, transparent);color:var(--ink)}.project-input-hint{color:var(--tertiary);margin-top:15px;font-size:11px}.project-stage-error{color:var(--danger);max-width:42ch;margin-top:20px}.project-stage-error strong{font-size:15px}.project-stage-error p{color:var(--danger);margin:6px 0 0;font-size:12px;line-height:1.55}.project-carousel{perspective:1200px;touch-action:pan-x;z-index:4;outline:none;grid-area:1/1;align-self:stretch;min-width:0;position:relative}.project-carousel:focus-visible:after{border:1px solid color-mix(in srgb, var(--accent) 46%, transparent);content:"";pointer-events:none;border-radius:24px;position:absolute;inset:16% 6%}.project-carousel-track{transform-style:preserve-3d;margin:0;padding:0;list-style:none;position:absolute;inset:0}.project-carousel-item{aspect-ratio:1.62;max-width:520px;transform-style:preserve-3d;width:min(36vw,520px);transition:transform .56s cubic-bezier(.22,1,.36,1),opacity .42s ease-out,filter .42s ease-out;position:absolute;top:49%;left:50%}.project-carousel-item[data-offset="0"]{filter:brightness();opacity:1;z-index:5;transform:translate(-50%,-50%)rotateX(0)rotate(-1.8deg)scale(1)}.project-carousel-item[data-offset="-1"]{filter:brightness(.94)saturate(.95);opacity:.82;z-index:4;transform:translate3d(-50%,calc(-50% - 285px),-130px)rotateX(-67deg)rotate(-1.8deg)scale(.88)}.project-carousel-item[data-offset="1"]{filter:brightness(.94)saturate(.95);opacity:.82;z-index:4;transform:translate3d(-50%,calc(290px - 50%),-130px)rotateX(67deg)rotate(-1.8deg)scale(.88)}.project-carousel-item[data-offset="-2"]{filter:brightness(.65)saturate(.78);opacity:.34;z-index:2;transform:translate3d(-50%,calc(-50% - 445px),-300px)rotateX(-10deg)rotate(-1.8deg)scale(.68)}.project-carousel-item[data-offset="2"]{filter:brightness(.65)saturate(.78);opacity:.34;z-index:2;transform:translate3d(-50%,calc(450px - 50%),-300px)rotateX(10deg)rotate(-1.8deg)scale(.68)}.project-carousel-card{min-width:0;height:100%;transform-style:preserve-3d;width:100%;position:relative}.project-card-link{appearance:none;background:var(--surface);border:1px solid var(--hairline-4);box-shadow:0 28px 62px rgb(var(--shadow-ink) / 34%);color:inherit;cursor:pointer;text-align:left;border-radius:24px;width:100%;min-width:0;height:100%;padding:0;text-decoration:none;display:block;position:relative;overflow:hidden}.project-carousel-item[data-offset="0"] .project-card-link:hover,.project-carousel-item[data-offset="0"] .project-card-link:focus-visible{border-color:color-mix(in srgb, var(--accent) 25%, transparent);box-shadow:0 32px 72px rgb(var(--shadow-ink) / 40%)}.project-card-link:focus-visible{outline:2px solid var(--accent-strong);outline-offset:4px}.project-card-cover{background:var(--surface-canvas);width:100%;height:100%;display:block;position:absolute;inset:0;overflow:hidden}.project-card-cover img{filter:saturate(.9)contrast(1.06);object-fit:cover;object-position:50% 38%;opacity:0;width:100%;height:100%;transition:opacity .28s ease-out}.project-card-cover[data-state=loaded] img{opacity:1}.project-card-cover-fallback{color:var(--accent);opacity:0;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.project-card-cover[data-state=error] .project-card-cover-fallback{opacity:1}.project-card-shade{background:linear-gradient(180deg, color-mix(in srgb, var(--accent) 12%, transparent) 24%, var(--material) 100%);pointer-events:none;position:absolute;inset:0}.project-card-content{z-index:2;flex-direction:column;min-width:0;padding:25px 28px;display:flex;position:absolute;bottom:0;left:0;right:0}.project-card-status-row{align-items:center;gap:10px;min-width:0;display:flex}.project-status{background:var(--hairline-5);border:1px solid color-mix(in srgb, var(--accent) 21%, transparent);color:var(--accent);white-space:nowrap;border-radius:999px;align-items:center;min-height:24px;padding:5px 9px;font-size:10px;font-weight:680;line-height:1;display:inline-flex}.project-status[data-status=IN_PRODUCTION],.project-status[data-status=APPROVED],.project-status[data-status=DELIVERED]{background:color-mix(in srgb, var(--success) 17%, transparent);border-color:color-mix(in srgb, var(--success) 22%, transparent);color:var(--success)}.project-status[data-status=IN_REVIEW]{background:var(--hairline-5);border-color:color-mix(in srgb, var(--warning) 22%, transparent);color:var(--warning)}.project-status[data-status=ON_HOLD]{background:var(--hairline-5);border-color:color-mix(in srgb, var(--danger) 22%, transparent);color:var(--danger)}.project-stage-label{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.project-card-title{color:var(--ink);letter-spacing:-.03em;text-overflow:ellipsis;text-shadow:0 2px 18px var(--material);white-space:nowrap;margin-top:10px;font-size:clamp(23px,2vw,31px);font-weight:650;line-height:1.18;display:block;overflow:hidden}.project-card-facts{border-top:1px solid var(--hairline-4);grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:15px;padding-top:12px;display:grid}.project-card-facts>span{min-width:0}.project-card-facts small,.project-card-facts b{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.project-card-facts small{color:var(--muted);font-size:9px;font-weight:500}.project-card-facts b{color:var(--accent);margin-top:4px;font-size:11px;font-weight:620}.project-carousel-item:not([data-offset="0"]) .project-card-status-row,.project-carousel-item:not([data-offset="0"]) .project-card-facts{display:none}.project-carousel-item:not([data-offset="0"]) .project-card-title{color:var(--ink);text-shadow:0 2px 16px var(--material);margin:0;font-size:21px}.project-carousel-item[data-offset="-1"] .project-card-link,.project-carousel-item[data-offset="1"] .project-card-link{border-color:var(--hairline-5)}.project-carousel-item:not([data-offset="0"]) .project-card-content{padding:20px 24px}.project-carousel-item:not([data-offset="0"]) .project-card-shade{background:linear-gradient(180deg, color-mix(in srgb, var(--accent) 4%, transparent) 36%, var(--material) 100%)}.project-card-menu{z-index:7;position:absolute;top:12px;right:12px}.project-card-menu button{min-height:44px}.project-card-menu-trigger{background:var(--material);border:1px solid var(--hairline-4);color:var(--muted);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;width:44px;min-height:44px;display:flex}.project-card-menu-trigger:hover,.project-card-menu-trigger:focus-visible,.project-card-menu-trigger[aria-expanded=true]{background:var(--surface-muted);border-color:color-mix(in srgb, var(--accent) 30%, transparent);color:var(--ink)}.project-card-menu-trigger:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}.project-card-menu>div{background:var(--surface);border:1px solid var(--hairline-5);box-shadow:0 16px 36px rgb(var(--shadow-ink) / 42%);border-radius:12px;min-width:164px;padding:6px;position:absolute;top:calc(100% + 4px);right:0}.project-card-menu>div button{color:var(--danger);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:9px;align-items:center;gap:8px;width:100%;padding:0 10px;font-size:13px;display:flex}.project-card-menu>div button:hover,.project-card-menu>div button:focus-visible{background:var(--hairline-3);outline:none}.project-carousel-position{color:var(--tertiary);letter-spacing:.14em;z-index:7;align-items:center;gap:11px;font-size:10px;display:flex;position:absolute;bottom:clamp(32px,5vh,54px);left:50%;transform:translate(-50%)}.project-carousel-divider{background:var(--hairline-4);width:58px;height:1px;display:block}.project-carousel-loading{position:absolute;inset:0}.project-carousel-loading>span{aspect-ratio:1.62;background:var(--hairline-1);border:1px solid var(--hairline-2);border-radius:24px;width:min(36vw,520px);max-width:520px;position:absolute;top:49%;left:50%}.project-carousel-loading>span:first-child{opacity:.35;transform:translate3d(-50%,calc(-50% - 240px),-120px)rotateX(-64deg)scale(.88)}.project-carousel-loading>span:nth-child(2){animation:1.4s ease-in-out infinite project-loading-pulse;transform:translate(-50%,-50%)rotate(-1.8deg)}.project-carousel-loading>span:nth-child(3){opacity:.35;transform:translate3d(-50%,calc(240px - 50%),-120px)rotateX(64deg)scale(.88)}@keyframes project-loading-pulse{50%{background:var(--hairline-3)}}.project-carousel-empty{color:var(--tertiary);flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex;position:absolute;inset:0}.project-carousel-empty strong{font-size:14px;font-weight:580}.project-library:not([open]){display:none}.project-library{background:var(--material-strong);border:1px solid var(--workbench-border-strong);box-shadow:0 34px 90px rgb(var(--shadow-ink) / 48%);z-index:20;border-radius:18px;grid-template-rows:auto auto auto minmax(0,1fr);width:auto;max-width:none;max-height:720px;margin:0;padding:24px;display:grid;position:fixed;inset:clamp(20px,4vw,58px) clamp(4px,2vw,28px) clamp(18px,3vw,42px) clamp(260px,22vw,360px);overflow:hidden}.project-library::backdrop{background:var(--material);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}@supports ((-webkit-backdrop-filter:blur(20px)) or (backdrop-filter:blur(20px))){.project-library,.project-card-menu>div,.project-trash-dialog{-webkit-backdrop-filter:blur(20px)saturate(122%);backdrop-filter:blur(20px)saturate(122%)}}.project-library-heading{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.project-library-heading h2{color:var(--ink);letter-spacing:-.03em;margin:0;font-size:clamp(26px,2.5vw,38px);font-weight:650;line-height:1.05}.project-library-heading p{color:var(--muted);margin:8px 0 0;font-size:12px;line-height:1.5}.project-library-close{background:var(--hairline-1);border:1px solid var(--hairline-3);color:var(--muted);cursor:pointer;border-radius:12px;flex:none;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.project-library-close:hover,.project-library-close:focus-visible{background:var(--hairline-3);color:var(--ink);outline:2px solid color-mix(in srgb, var(--accent) 38%, transparent);outline-offset:2px}.project-view-switch{border-bottom:1px solid var(--hairline-2);align-items:center;gap:4px;margin-top:18px;padding-bottom:10px;display:flex}.project-view-switch button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;align-items:center;gap:7px;min-height:40px;padding:0 14px;font-size:12px;display:inline-flex}.project-view-switch button[aria-pressed=true]{background:color-mix(in srgb, var(--accent) 22%, transparent);color:var(--ink);font-weight:650}.project-view-switch button>span{background:var(--hairline-2);border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 5px;font-size:10px;display:inline-flex}.project-toolbar{grid-template-columns:minmax(220px,1fr) auto;gap:10px;min-width:0;padding:15px 0;display:grid}.project-search{align-items:center;min-width:0;display:flex;position:relative}.project-search .ui-icon{color:var(--tertiary);pointer-events:none;position:absolute;left:13px}.project-search input{background:var(--hairline-1);border:1px solid var(--hairline-3);color:var(--ink);border-radius:12px;width:100%;min-width:0;min-height:44px;padding:0 13px 0 42px}.project-search input::placeholder{color:var(--tertiary)}.project-search input:focus{background:var(--hairline-2);border-color:color-mix(in srgb, var(--accent) 40%, transparent);outline:2px solid var(--hairline-5);outline-offset:2px}.project-toolbar-controls{gap:10px;display:flex}.project-toolbar-controls select{background-color:var(--surface);border:1px solid var(--hairline-3);color:var(--accent);border-radius:12px;min-width:138px;min-height:44px;padding-inline:12px 30px}.project-library-content{scrollbar-color:#b9a8f047 transparent;min-height:0;padding-right:4px;overflow-y:auto}.project-library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.project-library-card{background:var(--hairline-1);border:1px solid var(--hairline-2);border-radius:14px;min-width:0;min-height:96px;position:relative}.project-library-card[data-selected=true]{background:var(--hairline-4);border-color:color-mix(in srgb, var(--accent) 25%, transparent)}.project-library-card-select{color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:92px minmax(0,1fr) 20px;align-items:center;gap:13px;width:100%;min-height:94px;padding:10px 58px 10px 10px;display:grid}.project-library-card-select:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px;border-radius:13px}.project-library-card .project-card-cover{border-radius:10px;width:92px;height:72px;position:relative;inset:auto}.project-library-card-select>span:not(.project-card-cover){min-width:0}.project-library-card-select strong,.project-library-card-select small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.project-library-card-select strong{color:var(--ink);font-size:14px;font-weight:640}.project-library-card-select small{color:var(--muted);margin-top:7px;font-size:10px}.project-library-card-select>.ui-icon{color:var(--accent)}.project-library-card .project-card-menu{top:7px;right:7px}.project-library-card .project-card-menu-trigger{width:40px;min-height:40px}.project-dashboard-state{background:var(--hairline-1);border:1px solid var(--hairline-3);border-radius:14px;justify-content:space-between;align-items:center;gap:24px;min-height:132px;padding:22px;display:flex}.project-dashboard-state strong{color:var(--ink);font-size:16px}.project-dashboard-state p{color:var(--muted);overflow-wrap:anywhere;margin:6px 0 0;font-size:12px;line-height:1.55}.project-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.project-dashboard-card{background:var(--hairline-1);border:1px solid var(--hairline-3);border-radius:14px;flex-direction:column;min-width:0;min-height:218px;display:flex}.project-dashboard-card>header{justify-content:space-between;align-items:center;min-height:48px;padding:12px 14px 0 16px;display:flex}.trash-project-card>header>.ui-icon{color:var(--muted)}.trash-status{background:var(--hairline-2);border-color:var(--hairline-2);color:var(--muted)}.trash-project-content{flex-direction:column;flex:1;gap:14px;min-width:0;padding:8px 16px 16px;display:flex}.trash-project-content h3{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:17px;overflow:hidden}.trash-project-content p{color:var(--muted);margin:5px 0 0;font-size:11px}.trash-project-facts{border-top:1px solid var(--hairline-2);grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:auto;padding-top:11px;display:grid}.trash-project-facts small,.trash-project-facts strong{display:block}.trash-project-facts small{color:var(--tertiary);font-size:9px}.trash-project-facts strong{color:var(--ink);margin-top:4px;font-size:10px}.trash-project-content>.button{align-self:flex-start}.trash-retry-note{background:var(--hairline-3);border-radius:10px;padding:9px;font-size:11px;color:var(--warning)!important}.project-trash-dialog{background:var(--surface);border:1px solid var(--hairline-4);color:var(--ink);max-block-size:calc(100dvh - 32px);border-radius:16px;width:100%;max-width:min(460px,100vw - 32px);padding:28px;overflow-y:auto}.project-trash-dialog::backdrop{background:var(--material);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.trash-dialog-icon{background:var(--hairline-4);color:var(--danger);border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;margin-bottom:17px;display:flex}.project-trash-dialog h2{color:var(--ink);margin:0 0 10px;font-size:24px}.project-trash-dialog>p{color:var(--muted);overflow-wrap:anywhere;margin:0;line-height:1.65}.trash-dialog-note{background:var(--hairline-1);color:var(--muted);overflow-wrap:anywhere;border-radius:11px;margin-top:16px;padding:11px 12px;font-size:12px;line-height:1.6}.trash-dialog-error{background:var(--hairline-3);overflow-wrap:anywhere;border-radius:10px;padding:10px 12px;font-size:12px;color:var(--danger)!important;margin-top:12px!important}.trash-dialog-actions{justify-content:flex-end;gap:9px;margin-top:22px;display:flex}.sr-only{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (max-width:1180px){.project-stage-copy h1{font-size:clamp(40px,5vw,58px)}.project-stage-actions{flex-direction:column;align-items:stretch;max-width:260px}.project-stage-actions .button{justify-content:center}.project-carousel-item,.project-carousel-loading>span{width:min(40vw,500px)}.project-library{left:150px}}@media (max-width:900px){.project-home{min-height:0;padding:0 18px 54px}.project-stage{height:auto;min-height:0;padding-top:56px;display:block;overflow:visible}.project-stage-watermark{font-size:min(38vw,220px);top:150px;left:50%;transform:translate(-50%)}.project-stage-copy{max-width:680px;margin:0 auto;padding:0 4px}.project-stage-copy h1{max-width:none;font-size:clamp(42px,10vw,62px)}.project-stage-actions{flex-direction:row;align-items:center;max-width:none}.project-carousel{perspective:none;touch-action:pan-y;height:390px;margin-top:26px;overflow:hidden}.project-carousel-track{padding:0;position:absolute;inset:0;overflow:visible}.project-carousel-item{opacity:.55;width:min(76vw,430px);max-width:430px;position:absolute;top:48%;left:50%}.project-carousel-item[data-offset="-2"]{opacity:0;pointer-events:none;transform:translate(calc(-50% - min(136vw,940px)),-50%)scale(.72)}.project-carousel-item[data-offset="-1"]{filter:brightness(.86)saturate(.9);opacity:.54;transform:translate(calc(-50% - min(68vw,470px)),-50%)scale(.8)}.project-carousel-item[data-offset="0"]{filter:none;opacity:1;z-index:5;transform:translate(-50%,-50%)scale(1)}.project-carousel-item[data-offset="1"]{filter:brightness(.86)saturate(.9);opacity:.54;transform:translate(calc(-50% + min(68vw,470px)),-50%)scale(.8)}.project-carousel-item[data-offset="2"]{opacity:0;pointer-events:none;transform:translate(calc(-50% + min(136vw,940px)),-50%)scale(.72)}.project-card-content{padding:21px 22px}.project-card-title{font-size:clamp(21px,5vw,28px)}.project-carousel-position{bottom:17px}.project-library{max-height:min(760px,100svh - 110px);inset:18px 0}.project-library-grid,.project-dashboard-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width:620px){.project-home{padding-inline:12px}.project-stage{padding-top:34px}.project-stage-copy{padding-inline:7px}.project-stage-copy h1{font-size:clamp(38px,12vw,50px)}.project-current-summary h2{font-size:20px}.project-stage-actions{grid-template-columns:1fr 1fr;display:grid}.project-stage-actions .project-enter-button{grid-column:1/-1}.project-stage-actions .button{min-width:0;padding-inline:11px;font-size:12px}.project-carousel{height:340px;margin-top:18px}.project-carousel-track{padding-inline:7vw;scroll-padding-inline:7vw}.project-carousel-item{flex-basis:84vw}.project-card-facts{gap:10px}.project-library{border-radius:16px;max-height:calc(100svh - 76px);padding:18px;top:8px;bottom:8px}.project-library-heading p{max-width:32ch}.project-toolbar{grid-template-columns:minmax(0,1fr)}.project-toolbar-controls{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.project-toolbar-controls label:only-child{grid-column:1/-1}.project-toolbar-controls select{width:100%;min-width:0}.project-library-card-select{grid-template-columns:82px minmax(0,1fr) 18px}.project-library-card .project-card-cover{width:82px}.project-dashboard-state{flex-direction:column;align-items:stretch}.trash-dialog-actions{grid-template-columns:1fr 1fr;display:grid}}@media (prefers-reduced-motion:reduce){.project-carousel-item,.project-card-cover img{transition:none}.project-carousel-loading>span:nth-child(2){animation:none}}
