:root{color:#17382f;font-synthesis:none;text-rendering:optimizelegibility;background:#f4f0e7;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,a{font:inherit;color:inherit}.signed-out-page{background:radial-gradient(circle at 15% 10%,#be84432e,#0000 32rem),radial-gradient(circle at 85% 80%,#2f655326,#0000 35rem),#f4f0e7;place-items:center;min-height:100vh;padding:2rem;display:grid}.signed-out-card{background:#ffffffd1;border:1px solid #17382f1f;border-radius:1.5rem;width:min(100%,35rem);padding:clamp(2rem,7vw,4rem);box-shadow:0 28px 80px #24302b1f}.brand{align-items:center;gap:.75rem;font-weight:800;text-decoration:none;display:inline-flex}.brand-mark{color:#fffaf0;letter-spacing:.08em;background:#17382f;border-radius:.7rem;place-items:center;width:2.65rem;height:2.65rem;font-size:.78rem;display:grid}.signed-out-card .brand{margin-bottom:4rem}.eyebrow{color:#9a642b;letter-spacing:.12em;text-transform:uppercase;margin:0 0 .55rem;font-size:.76rem;font-weight:850}h1,h2,p{margin-top:0}h1{letter-spacing:-.055em;margin-bottom:1rem;font-size:clamp(3rem,9vw,5.4rem);line-height:.92}.lede{color:#64716c;max-width:29rem;margin-bottom:2rem;line-height:1.65}.fine-print{color:#7e8884;text-align:center;margin:1rem 0 0;font-size:.8rem}.button{cursor:pointer;border:0;border-radius:.8rem;padding:.95rem 1.2rem;font-weight:800}.button.primary{color:#fff;background:#17382f;width:100%;box-shadow:0 8px 18px #17382f29}.button.primary:hover{background:#245243}.button.secondary{color:#254b3f;background:#ffffffc2;border:1px solid #17382f2e}.button.secondary:hover{background:#fff}.button.compact{white-space:nowrap;width:auto}.button:disabled{cursor:wait;opacity:.6}.app-shell{min-height:100vh}.site-header{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffff9e;border-bottom:1px solid #17382f1a;justify-content:space-between;align-items:center;height:4.75rem;padding:0 clamp(1rem,4vw,4rem);display:flex}.header-actions{align-items:center;gap:1.2rem;display:flex}.header-actions>a{color:#65736e;font-size:.86rem;font-weight:750;text-decoration:none}.content{width:min(100% - 2rem,1080px);margin:0 auto;padding:clamp(3rem,7vw,6rem) 0}.page-heading{justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2rem;display:flex}.page-heading h1{margin-bottom:.6rem}.page-heading p:last-child{color:#66736f;max-width:37rem;margin:0;font-size:1.05rem;line-height:1.55}.primary-actions{gap:.7rem;display:flex}.breadcrumbs{color:#68766f;flex-wrap:wrap;align-items:center;gap:.45rem;margin:-.25rem 0 1.1rem;display:flex}.breadcrumbs span{align-items:center;gap:.45rem;display:inline-flex}.breadcrumbs b{color:#a8afab;font-weight:500}.breadcrumbs button{color:inherit;cursor:pointer;background:0 0;border:0;padding:.2rem;font-weight:750}.breadcrumbs button:hover{color:#17382f;text-decoration:underline}.drop-zone{background:#ffffff75;border:1.5px dashed #17382f40;border-radius:1rem;align-items:center;gap:1rem;padding:1.4rem;transition:border-color .14s,background .14s;display:flex}.drop-zone.dragging{background:#e8f0eb;border-color:#39745e}.upload-icon{background:#e4ebe6;border-radius:.75rem;place-items:center;width:2.7rem;height:2.7rem;font-size:1.3rem;font-weight:600;display:grid}.drop-zone div{flex-direction:column;gap:.2rem;display:flex}.drop-zone span:last-child{color:#74807b;font-size:.82rem}.notice{color:#76501f;background:#fff8e8;border-radius:.8rem;margin-top:1rem;padding:.85rem 1rem;font-size:.9rem}.files-section{margin-top:3.5rem}.section-heading{justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:1rem;display:flex}.section-heading h2{margin:0;font-size:1.35rem}.section-heading span{color:#7b8581;font-size:.8rem;font-weight:700}.file-list{background:#ffffffb8;border:1px solid #17382f1a;border-radius:1rem;overflow:hidden;box-shadow:0 12px 35px #2e36310f}.file-row{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;min-height:5.4rem;padding:1rem 1.1rem;display:grid}.file-row+.file-row{border-top:1px solid #17382f17}.file-badge{color:#3d6054;letter-spacing:.05em;background:#e5ebe7;border-radius:.75rem;place-items:center;width:2.8rem;height:2.8rem;font-size:.65rem;font-weight:850;display:grid}.folder-badge{color:#8b5a24;background:#e8dfcc;font-size:1rem}.item-open,.item-name{text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.item-name:hover strong{text-decoration:underline}.file-details{flex-direction:column;gap:.3rem;min-width:0;display:flex}.file-details strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.file-details span{color:#7b8581;font-size:.78rem}.file-actions{gap:.5rem;display:flex}.file-actions button{cursor:pointer;background:#fff;border:1px solid #17382f26;border-radius:.65rem;padding:.55rem .75rem;font-size:.78rem;font-weight:750}.file-actions button:hover{border-color:#39745e}.file-actions button.danger{color:#934337}.file-actions button:disabled{opacity:.5;cursor:wait}.empty-state{color:#7b8581;background:#ffffff8c;border:1px solid #17382f1a;border-radius:1rem;flex-direction:column;justify-content:center;align-items:center;gap:.4rem;min-height:12rem;display:flex}.empty-state strong{color:#17382f}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.modal-backdrop{z-index:20;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#10201b73;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:1rem;width:min(100%,29rem);padding:1.5rem;box-shadow:0 30px 80px #0c1c1740}.modal h2{margin-bottom:1.3rem}.modal label{color:#53625c;flex-direction:column;gap:.45rem;font-size:.8rem;font-weight:800;display:flex}.modal input,.modal select{color:#17382f;width:100%;min-height:2.9rem;font:inherit;background:#fff;border:1px solid #17382f33;border-radius:.65rem;padding:.7rem .8rem}.modal input:focus,.modal select:focus{border-color:#39745e;outline:2px solid #39745e47}.modal-actions{justify-content:flex-end;gap:.65rem;margin-top:1.4rem;display:flex}.modal-actions>button:not(.button){color:#68766f;cursor:pointer;background:0 0;border:0;padding:.7rem .9rem;font-weight:750}@media (width<=650px){.signed-out-page{padding:1rem}.signed-out-card .brand{margin-bottom:3rem}.page-heading{flex-direction:column;align-items:stretch}.primary-actions{grid-template-columns:1fr 1fr;display:grid}.button.compact{width:100%}.file-row{grid-template-columns:auto minmax(0,1fr)}.file-actions{grid-column:1/-1}.file-actions button{flex:1}}
