/* Reference-inspired folder workspace, Bazilika red palette. */
:root{--blue:#b82935;--pale:#fcebed;--line:#e9e5e5;--muted:#797278;color:#29262a;background:#f6f3f3}body{background:#f6f3f3}.topbar{height:84px;padding:0 30px;background:#fff;border-color:var(--line)}.brand{min-width:215px;font-size:18px;letter-spacing:-.025em}.brand strong{letter-spacing:.16em}.brand-logo{background:#ae2632;border-radius:12px;width:43px;height:54px}.global-search{background:#faf8f8;border:1px solid #ebe6e6;border-radius:12px;max-width:560px}.global-search input{padding:12px 0}.avatar{background:#f9e5e7;color:#a52c36}.workspace{height:calc(100dvh - 84px);grid-template-columns:250px minmax(0,1fr)}.sidebar{background:#fff;padding:25px 13px 0}.sidebar-primary{padding:0 10px 22px}.primary,.secondary{border-radius:10px}.primary{box-shadow:0 2px 3px #7e1a2110}.primary:hover{background:#98212c;border-color:#98212c}.secondary{border-color:#e5dedf;color:#51484d}.secondary:hover,.text-button:hover{background:#faf3f4;border-color:#dfc8cc}.side-link.active,.tree-link.active{background:#f9e9eb;color:#a92230}.side-link:hover,.tree-link:hover{background:#faf4f4}.tree-link.active .icon{fill:#b8293518;color:#b82935}.tree .tree{border-left:1px solid #eee5e6;margin-left:15px;padding-left:7px}.tree-link{font-size:13px;min-height:40px}.tree-link .icon{color:#8b7b7e;fill:none}.side-bottom{background:#fff}.file-main{margin:18px 20px 18px 18px;padding:28px 32px 64px;border:1px solid #e9e3e4;border-radius:20px;background:#fff;box-shadow:0 5px 30px #45202704}.breadcrumbs{margin-bottom:24px;color:#8b8084}.page-heading h1{font-size:29px;letter-spacing:-.04em;color:#262126}.file-toolbar{border-color:#eee9ea;margin-top:25px;margin-bottom:22px}.section-title{font-size:12px;letter-spacing:.045em;color:#8b7c81;margin:25px 0 17px}.folder-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:22px}.folder-card{border:1px solid #e6e1e2;border-radius:21px;background:linear-gradient(150deg,#faf9f9,#f0eded);min-height:205px;align-items:stretch;box-shadow:inset 0 1px 0 white;transition:transform .16s,border-color .16s,box-shadow .16s}.folder-card:hover{background:linear-gradient(150deg,#fffafa,#f9edef);border-color:#d8b0b6;box-shadow:0 7px 18px #7b25300c;transform:translateY(-2px)}.folder-open{position:relative;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-end;gap:0;padding:95px 20px 22px;isolation:isolate}.folder-open:before{content:'';position:absolute;z-index:-1;top:24px;left:20px;right:20px;height:68px;border:1px solid #e5dfe0;border-radius:11px 11px 4px 4px;background:linear-gradient(165deg,#fff 70%,#f4eff0);box-shadow:0 -7px 0 -2px #e8e3e4,0 -12px 0 -6px #f2efef;transform:rotate(-3deg)}.folder-open:after{content:'';position:absolute;z-index:-1;top:57px;left:11px;right:11px;height:50px;background:linear-gradient(#faf9f9,#f3f0f0);border:1px solid #eee9ea;border-bottom:0;border-radius:5px 16px 0 0;clip-path:polygon(0 0,42% 0,52% 23%,100% 23%,100% 100%,0 100%)}.folder-open>.icon{display:none}.folder-open strong{font-size:15px;font-weight:600;white-space:normal;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.folder-open small{font-size:12px;color:#867a7e;margin-top:8px}.folder-card .item-checkbox{left:13px;top:12px;background:#fff;border:1px solid #e7dfe0;padding:3px;border-radius:6px}.item-checkbox input{width:16px;height:16px}.item-menu{top:10px;right:10px}.item-menu>summary{background:#ffffffc9;color:#8c777d;border-radius:8px}.selectable.selected{border-color:#bb3542;box-shadow:0 0 0 1px #bb3542;background:#fce9ec}.folder-card.selected .folder-open:after{background:linear-gradient(#e77c87,#bf3544);border-color:#cc5361}.folder-card.selected .folder-open:before{border-color:#efbbc2;background:#fff8f9;box-shadow:0 -7px 0 -2px #edacb5,0 -12px 0 -6px #f6d3d8}.selection-toolbar{background:#fff0f2;border-color:#efcbd0;color:#962734;border-radius:11px}.selection-toolbar strong{border-color:#e7bec5}.selection-toolbar button:hover{background:#f8dfe4}.view-switch .selected{background:#fbecef;color:#b82935}.image-card{border-radius:14px;overflow:visible;border-color:#ebe4e6}.photo,.photo img{border-radius:13px 13px 0 0}.photo{background:#f8f6f6}.image-caption{min-height:54px}.drop-target{background:#fce5ea!important;outline-color:#c55a68}.drop-overlay{inset:84px 0 0 250px;background:#fff0f3ee;border-color:#c55a68;color:#a62b3a}.upload-picker>.icon,.login-icon{color:#b82935}.modal .upload-picker{border-color:#e3bbc2;background:#fff8f9;color:#9c4653}.notice{background:#fff4f5;border-color:#efd1d7;color:#963844}.modal input:focus,.modal textarea:focus,.modal select:focus,.login input:focus{outline-color:#f4d3d9}.global-results a:hover{background:#fff1f3}.login-icon{background:#fce9ed}.login-page{background:#faf4f5}.login{border-radius:20px}.login-page .topbar{background:white}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline-color:#d97180}.file-content.list-mode .folder-open{isolation:auto;display:flex;flex-direction:row;padding:15px 55px 15px 50px;align-items:center}.file-content.list-mode .folder-open:before,.file-content.list-mode .folder-open:after{display:none}.file-content.list-mode .folder-open>.icon{display:block;fill:#f4c1c9;stroke:#b84a5a}.file-content.list-mode .folder-card{min-height:70px;background:#fff;box-shadow:none;transform:none}.file-content.list-mode .folder-open strong{font-size:13px}.file-content.list-mode .folder-open small{margin-top:0}
@media(min-width:1500px){.file-main{padding:35px 45px 70px}.folder-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:25px}.folder-card{min-height:220px}}
@media(max-width:1100px){.workspace{grid-template-columns:220px minmax(0,1fr)}.brand{min-width:185px}.topbar{padding-inline:20px;gap:20px}.file-main{padding:24px;margin:14px}.folder-grid{grid-template-columns:repeat(auto-fill,minmax(175px,1fr));gap:16px}.drop-overlay{left:220px}}
@media(max-width:760px){.topbar{height:auto;padding:13px 16px;gap:11px}.brand{min-width:0;font-size:16px}.brand-logo{height:45px;width:36px;border-radius:9px}.brand-logo img{height:37px;width:24px}.workspace{display:block;height:auto}.sidebar{top:132px;background:#fff;padding-top:20px}.file-main{margin:10px;padding:18px 14px 55px;border-radius:15px;min-height:calc(100dvh - 146px)}.page-heading h1{font-size:27px}.folder-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.folder-card{border-radius:16px;min-height:183px}.folder-open{padding:95px 13px 17px}.folder-open:before{left:15px;right:15px;top:27px;height:60px}.folder-open:after{left:8px;right:8px;top:55px;height:42px}.folder-open strong{font-size:13px}.folder-open small{font-size:11px}.folder-card .item-checkbox{left:10px;right:auto;top:10px}.folder-card .item-menu{top:7px;right:7px}.file-toolbar{margin-top:10px}.drop-overlay{inset:132px 0 0}.file-content.list-mode .folder-card .item-checkbox{left:8px;top:25px}.file-content.list-mode .folder-open{padding-left:42px}.file-content.list-mode .folder-open small{margin-top:4px}.global-results{top:132px}}

.folder-photo-stack{position:absolute;top:22px;left:25px;right:25px;height:83px;pointer-events:none;z-index:-1;overflow:hidden}.folder-photo-stack img{position:absolute;left:8%;top:5px;width:80%;height:95px;object-fit:contain;background:#fff;padding:5px;border:1px solid #e2dadd;border-radius:7px;box-shadow:0 1px 5px #4c273014;transform:rotate(-7deg)}.folder-photo-stack img:last-child{left:17%;top:10px;transform:rotate(5deg)}.folder-open:after{z-index:0;pointer-events:none}.folder-open>span:last-child{position:relative;z-index:1}.file-content.list-mode .folder-photo-stack{display:none}@media(max-width:760px){.folder-photo-stack{top:24px;left:18px;right:18px;height:72px}.folder-photo-stack img{height:83px}}
.folder-photo-stack img{height:62px;object-fit:cover;object-position:center 40%;padding:4px}.folder-photo-stack img:last-child{top:7px}@media(max-width:760px){.folder-photo-stack img{height:55px}}
/* Private gallery entrance. Original brand paprika illustration, self-hosted. */
.login-page{min-height:100dvh;background:#9b1527;background-image:radial-gradient(ellipse at 15% 15%,#ee5c5b88,transparent 58%),radial-gradient(ellipse at 95% 90%,#470c25aa,transparent 65%),linear-gradient(125deg,#bc2938,#99182b 55%,#761c32);color:#fff;position:relative;isolation:isolate;overflow-x:hidden}.login-page:before{content:'';position:fixed;inset:-60px;z-index:-1;background:url('/paprika.webp') repeat center/500px;mix-blend-mode:soft-light;opacity:.12;transform:rotate(-9deg);pointer-events:none}.login-page:after{content:'';position:fixed;width:550px;height:550px;left:-250px;bottom:-340px;background:#ffab8055;filter:blur(90px);border-radius:50%;z-index:-1;pointer-events:none}.login-page .topbar{display:none}.login-wrap{max-width:1050px;min-height:100dvh;margin:0 auto;padding:60px 44px;display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:85px;position:relative}.login-identity{animation:login-enter .7s ease-out both}.login-logo{display:block;width:95px;height:147px;object-fit:contain;margin:0 0 35px;filter:drop-shadow(0 5px 18px #5c001122)}.login-eyebrow{font-size:11px;letter-spacing:.24em;font-weight:650;color:#ffd7cf}.login-identity h2{font-size:43px;font-weight:550;line-height:1.13;letter-spacing:-.045em;margin:20px 0}.login-identity p{font-size:15px;line-height:1.9;color:#ffe0db}.login-location{display:block;font-size:9px;letter-spacing:.2em;color:#f4aaa9;margin-top:54px}.login{color:#342a2e;background:#fffaf7f5;border:1px solid #ffffff70;border-radius:23px;padding:38px;box-shadow:0 25px 85px #47061840,inset 0 1px 0 #fff;animation:login-enter .8s .1s ease-out both;backdrop-filter:blur(12px)}.login-icon{background:#f4e1e1;color:#b32d3e;width:48px;height:48px;border-radius:14px}.login-icon .icon{width:25px;height:25px}.login h1{font-size:27px;margin-top:22px;color:#302229;line-height:1.2}.login>p.muted{color:#8b777e;font-size:13px;line-height:1.7;margin-bottom:26px}.login label{font-size:12px;color:#6e535e;margin:20px 0;font-weight:550}.login input{background:#fffdfb;border-color:#e4d5d8;border-radius:10px;min-height:49px;padding:13px 14px;font-size:15px;transition:border-color .2s,box-shadow .2s}.login input:focus{border-color:#b82935;outline:0;box-shadow:0 0 0 4px #b8293510}.login .primary{min-height:49px;width:100%;border-radius:10px;font-size:14px;background:linear-gradient(115deg,#bf3040,#a71e35);border-color:#aa2539;box-shadow:0 5px 13px #a6223920;transition:transform .2s,box-shadow .2s}.login .primary:hover{transform:translateY(-1px);box-shadow:0 8px 20px #a6223930}.login .private-note{color:#a18b92;font-size:10px!important;margin-top:23px}.login .error{font-size:12px}.login-page .brand{color:#fff}@keyframes login-enter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1100px){.login-identity{position:relative}.login-identity:before{content:'';position:absolute;left:-25px;top:-30px;width:190px;height:190px;background:#ffb89b13;border:1px solid #ffd0bc14;border-radius:50%;z-index:-1}}
@media(max-width:760px){.login-wrap{max-width:440px;grid-template-columns:1fr;gap:30px;padding:32px 22px 36px;min-height:100dvh;align-content:center}.login-identity{text-align:center}.login-logo{width:55px;height:85px;margin:0 auto 17px}.login-eyebrow{font-size:9px;letter-spacing:.22em}.login-identity h2{font-size:28px;line-height:1.15;margin:13px 0 0}.login-identity p,.login-location{display:none}.login{padding:27px;border-radius:20px}.login h1{font-size:24px;margin-top:17px}.login>p.muted{margin-bottom:22px}.login-icon{display:none}.login-page:before{background-size:380px;opacity:.1}.login .private-note{margin-bottom:0}}
@media(prefers-reduced-motion:reduce){.login,.login-identity{animation:none}.login .primary{transition:none}.login .primary:hover{transform:none}}
@media(min-width:1100px){.login-identity:before{left:47.5px;top:73.5px;transform:translate(-50%,-50%)}}
