.projects-body { background: #f3f8f6; }
.projects-body main { min-height: calc(100vh - 76px); }
.projects-body button, .projects-body input, .projects-body textarea, .projects-body select { font: inherit; }
.project-hero { position: relative; overflow: hidden; background: #08262d; color: #fff; }
.project-hero::before { position: absolute; inset: 0; background: radial-gradient(circle at 78% 25%, rgba(57,211,184,.16), transparent 28%), linear-gradient(125deg, transparent 36%, rgba(95,224,201,.035) 36.2%, transparent 36.5%); content: ""; }
.project-hero::after { position: absolute; right: 4%; bottom: -230px; width: 560px; height: 560px; border: 1px solid rgba(128,234,216,.1); border-radius: 50%; box-shadow: 0 0 0 80px rgba(128,234,216,.025), 0 0 0 160px rgba(128,234,216,.018); content: ""; }
.project-hero-inner { position: relative; z-index: 1; display: grid; grid-template-columns: 1.04fr .96fr; align-items: center; gap: 86px; min-height: 570px; padding-top: 76px; padding-bottom: 82px; }
.project-hero-copy h1 { margin: 0 0 23px; font-size: clamp(43px, 5vw, 66px); line-height: 1.08; letter-spacing: -.055em; }
.project-hero-copy h1 em { color: #6cdbc9; font-style: normal; }
.project-hero-copy p { max-width: 590px; margin-bottom: 31px; color: #9eb6b9; font-size: 16px; line-height: 1.9; }
.project-hero .eyebrow { color: #6cdbc9; }
.project-hero .button.primary { background: #60d4c0; color: #08262d; box-shadow: 0 16px 40px rgba(51,195,171,.18); }
.project-hero .button.secondary { border-color: rgba(255,255,255,.16); background: rgba(255,255,255,.06); color: #fff; }

.project-hero-board { position: relative; width: 100%; max-width: 500px; min-height: 352px; overflow: hidden; padding: 22px; border: 1px solid rgba(255,255,255,.12); border-radius: 22px; background: linear-gradient(145deg, rgba(255,255,255,.095), rgba(255,255,255,.035)); box-shadow: 0 35px 80px rgba(0,0,0,.3); backdrop-filter: blur(15px); transform: perspective(1000px) rotateY(-4deg) rotateX(1deg); }
.board-glow { position: absolute; top: -120px; right: -80px; width: 290px; height: 290px; border-radius: 50%; background: rgba(45,202,177,.16); filter: blur(10px); }
.board-head, .board-foot { position: relative; display: flex; align-items: center; justify-content: space-between; color: #789b9f; font-size: 9px; font-weight: 800; letter-spacing: .1em; }
.board-head { padding-bottom: 19px; border-bottom: 1px solid rgba(255,255,255,.08); }
.board-head span { display: flex; align-items: center; gap: 8px; }.board-head i { width: 7px; height: 7px; border-radius: 50%; background: #5de0c8; box-shadow: 0 0 0 5px rgba(93,224,200,.1); }.board-head b { color: #a7c7c7; }
.board-content { position: relative; padding: 30px 4px 26px; }.board-title small, .board-title strong { display: block; }.board-title small { margin-bottom: 8px; color: #76999d; font-size: 10px; }.board-title strong { font-size: 20px; letter-spacing: -.02em; }
.board-rail { display: flex; align-items: center; margin: 31px 0 25px; }.board-rail span { padding: 6px 8px; border-radius: 6px; color: #668b8f; font-size: 9px; font-weight: 750; }.board-rail span.done { color: #78dbc9; }.board-rail span.active { background: #60d4c0; color: #08262d; }.board-rail > i { flex: 1; height: 1px; background: rgba(255,255,255,.1); }
.board-scenes { display: grid; grid-template-columns: repeat(3,1fr); gap: 9px; }.board-scenes span { position: relative; overflow: hidden; height: 74px; border: 1px solid rgba(255,255,255,.08); border-radius: 10px; background: linear-gradient(145deg,#143b42,#0b2d34); }.board-scenes span::after { position: absolute; right: -12px; bottom: -19px; width: 62px; height: 62px; border-radius: 50%; background: rgba(66,202,179,.14); content: ""; }.board-scenes b { position: absolute; z-index: 1; top: 9px; left: 10px; color: #70969a; font-size: 9px; }.board-scenes i { position: absolute; right: 13px; bottom: 14px; width: 32px; height: 23px; border-radius: 50% 50% 40% 55%; background: linear-gradient(145deg,#5ccdb9,#186c68); transform: rotate(-13deg); }
.board-foot { padding-top: 15px; border-top: 1px solid rgba(255,255,255,.08); }

.project-library { padding-top: 82px; padding-bottom: 120px; }
.library-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; margin-bottom: 34px; }
.section-kicker { color: #0a8d7e; font-size: 10px; font-weight: 850; letter-spacing: .15em; }.library-head h2 { margin: 8px 0 8px; font-size: 35px; letter-spacing: -.04em; }.library-head p { margin: 0; color: #74878a; font-size: 13px; }
.library-tools { display: flex; gap: 10px; }.search-box { display: flex; align-items: center; width: 260px; height: 43px; padding: 0 13px; border: 1px solid #d9e6e4; border-radius: 10px; background: #fff; color: #849a9b; }.search-box span { margin-right: 8px; font-size: 20px; line-height: 1; }.search-box input { width: 100%; border: 0; outline: 0; color: #15353b; background: transparent; font-size: 13px; }.library-tools select { height: 43px; padding: 0 35px 0 13px; border: 1px solid #d9e6e4; border-radius: 10px; outline: 0; background: #fff; color: #405e63; font-size: 12px; font-weight: 700; }
.project-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.project-item { position: relative; overflow: hidden; min-height: 310px; border: 1px solid #dae7e4; border-radius: 16px; background: #fff; box-shadow: 0 14px 42px rgba(18,65,65,.055); transition: border-color .25s ease, transform .25s ease, box-shadow .25s ease; }.project-item:hover { border-color: rgba(22,168,149,.5); box-shadow: 0 24px 52px rgba(18,65,65,.12); transform: translateY(-5px); }
.project-cover { position: relative; height: 130px; overflow: hidden; padding: 17px; background: #0b3037; color: white; }.project-cover::before { position: absolute; inset: 0; background: radial-gradient(circle at 76% 40%,rgba(67,214,187,.24),transparent 28%), linear-gradient(135deg,transparent 50%,rgba(255,255,255,.04) 50.5%,transparent 51%); content: ""; }.project-cover::after { position: absolute; right: -23px; bottom: -52px; width: 150px; height: 150px; border: 1px solid rgba(101,220,200,.2); border-radius: 50%; box-shadow: 0 0 0 28px rgba(101,220,200,.04); content: ""; }.project-cover-top { position: relative; z-index: 1; display: flex; justify-content: space-between; color: #7da1a4; font-size: 9px; font-weight: 800; letter-spacing: .1em; }.project-cover-top b { color: #6bd6c3; }.project-cover-mark { position: absolute; z-index: 1; bottom: 18px; left: 18px; display: grid; width: 42px; height: 42px; place-items: center; border-radius: 12px; background: linear-gradient(145deg,#62d7c2,#248f83); color: #07252c; font-size: 18px; font-weight: 900; }
.project-card-body { padding: 21px 21px 18px; }.project-card-head { display: flex; align-items: start; gap: 12px; }.project-card-head > div { min-width: 0; flex: 1; }.project-card-head h3 { overflow: hidden; margin: 0 0 7px; color: #102d34; font-size: 18px; letter-spacing: -.02em; text-overflow: ellipsis; white-space: nowrap; }.project-card-head p { overflow: hidden; height: 40px; margin: 0; color: #738689; font-size: 12px; line-height: 1.65; }
.project-menu { display: flex; gap: 2px; }.project-menu button { display: grid; width: 28px; height: 28px; padding: 0; place-items: center; border: 0; border-radius: 7px; background: #f1f6f4; color: #6e8587; cursor: pointer; }.project-menu button:hover { background: #e0f3ee; color: #087b71; }.project-menu button.delete:hover { background: #fff0ed; color: #b94b3a; }
.project-meta { display: flex; align-items: center; gap: 14px; margin-top: 20px; padding-top: 16px; border-top: 1px solid #edf2f1; color: #789093; font-size: 10px; font-weight: 650; }.project-meta span:first-child { margin-right: auto; }.open-project { display: inline-flex; align-items: center; gap: 7px; color: #087b71; font-weight: 800; text-decoration: none; }.open-project:hover { gap: 10px; }
.empty-projects { padding: 78px 20px; border: 1px dashed #bed4d0; border-radius: 18px; background: rgba(255,255,255,.6); text-align: center; }.empty-mark { position: relative; width: 92px; height: 82px; margin: 0 auto 27px; }.empty-mark span,.empty-mark i { position: absolute; width: 63px; height: 55px; border: 1px solid #a8cbc4; border-radius: 11px; background: #eff8f5; }.empty-mark span { top: 0; left: 2px; transform: rotate(-8deg); }.empty-mark i { right: 1px; bottom: 0; background: #dff5ef; transform: rotate(7deg); }.empty-mark b { position: absolute; z-index: 2; right: 22px; bottom: 14px; color: #087b71; font-size: 24px; }.empty-projects h2 { margin-bottom: 9px; font-size: 25px; }.empty-projects p { margin-bottom: 24px; color: #71878a; }

.project-dialog, .confirm-dialog { width: min(580px,calc(100% - 32px)); padding: 0; border: 0; border-radius: 18px; color: #102d34; box-shadow: 0 35px 100px rgba(5,34,39,.28); }.project-dialog::backdrop,.confirm-dialog::backdrop { background: rgba(4,27,32,.64); backdrop-filter: blur(5px); }.project-dialog form { position: relative; padding: 34px; }.dialog-accent { position: absolute; top: 0; right: 0; left: 0; height: 5px; background: linear-gradient(90deg,#18aa97,#7edecb); }.dialog-heading { display: flex; align-items: start; justify-content: space-between; gap: 20px; margin-bottom: 27px; }.dialog-heading span { color: #0b8d80; font-size: 9px; font-weight: 850; letter-spacing: .15em; }.dialog-heading h2 { margin: 7px 0 7px; font-size: 27px; letter-spacing: -.035em; }.dialog-heading p { margin: 0; color: #6f8386; font-size: 13px; }.dialog-close { width: 34px; height: 34px; border: 0; border-radius: 9px; background: #eef5f3; color: #597174; font-size: 22px; cursor: pointer; }.project-field { display: block; margin-top: 18px; }.project-field > span { display: block; margin-bottom: 8px; color: #37565b; font-size: 12px; font-weight: 800; }.project-field small { color: #8ba0a2; font-weight: 600; }.project-field input,.project-field textarea { width: 100%; border: 1px solid #d6e4e2; border-radius: 10px; outline: 0; background: #f9fcfb; color: #102d34; font-size: 14px; transition: border-color .15s,box-shadow .15s; }.project-field input { height: 48px; padding: 0 14px; }.project-field textarea { padding: 13px 14px; line-height: 1.7; resize: vertical; }.project-field input:focus,.project-field textarea:focus { border-color: #2bb7a4; box-shadow: 0 0 0 4px rgba(43,183,164,.1); }.dialog-actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 27px; }.button.danger { background: #a94033; color: #fff; }
.confirm-dialog { width: min(430px,calc(100% - 32px)); text-align: center; }.confirm-dialog form { padding: 35px; }.confirm-icon { display: grid; width: 50px; height: 50px; margin: 0 auto 20px; place-items: center; border-radius: 50%; background: #fff0ed; color: #a94033; font-size: 22px; font-weight: 900; }.confirm-dialog h2 { margin-bottom: 10px; font-size: 23px; }.confirm-dialog p { color: #718487; font-size: 13px; line-height: 1.7; }.confirm-dialog .dialog-actions { justify-content: center; }
.project-toast { position: fixed; z-index: 100; right: 24px; bottom: 24px; max-width: min(360px,calc(100% - 32px)); padding: 13px 17px; border-radius: 10px; background: #0a3037; color: #fff; box-shadow: 0 18px 50px rgba(4,34,39,.24); font-size: 12px; font-weight: 700; opacity: 0; pointer-events: none; transform: translateY(12px); transition: opacity .2s,transform .2s; }.project-toast.show { opacity: 1; transform: translateY(0); }

@media (max-width: 980px) { .project-hero-inner { grid-template-columns: 1fr; gap: 44px; }.project-hero-board { max-width: 650px; }.project-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }.projects-body .nav { display: none; } }
@media (max-width: 700px) { .projects-body .shell { width: min(100% - 28px,1180px); }.projects-body .header-inner { min-height: 66px; }.projects-body .brand small { display: none; }.projects-body .header-action { padding: 9px 12px; }.project-hero-inner { min-height: 0; padding-top: 62px; padding-bottom: 62px; }.project-hero-copy h1 { font-size: 42px; }.project-hero-copy p { font-size: 14px; }.project-hero-board { min-height: 310px; padding: 18px; transform: none; }.library-head { align-items: stretch; flex-direction: column; }.library-tools { flex-direction: column; }.search-box { width: 100%; }.project-grid { grid-template-columns: 1fr; }.project-library { padding-top: 58px; padding-bottom: 80px; }.project-dialog form { padding: 27px 20px; }.dialog-actions .button { flex: 1; min-height: 45px; padding: 0 12px; }.footer-bottom { align-items: center; flex-direction: column; gap: 8px; text-align: center; } }
@media (prefers-reduced-motion: reduce) { .project-item,.project-toast { transition: none; } }

.project-hero-inner{display:block}.project-hero-board{display:none}.project-hero{padding-top:36px;padding-bottom:30px}.project-hero-copy h1{font-size:clamp(28px,4vw,42px);line-height:1.2}.project-hero-copy p{max-width:680px}.project-library{padding-top:20px}

.project-more{display:inline-block;margin:12px 0 0 10px;font-size:12px;color:#55736b}.project-more summary{cursor:pointer}.project-more[open]{display:block}
