:root{color:#25392f;font-synthesis:none;background:#f6f8f5;font-family:Noto Sans JP,Yu Gothic UI,system-ui,sans-serif;font-size:14px;font-weight:400}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer;transition:background .15s}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:3px;outline:3px solid #93b877}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}button{border:0}input,textarea,select{color:#25392f;background:#fff;border:1px solid #dce3da;border-radius:8px;width:100%;padding:12px}textarea{resize:vertical}label{margin-bottom:18px;font-weight:600;display:block}label input,label textarea,label select{margin-top:8px;display:block}small{color:#788378;margin-top:6px;font-weight:400;display:block}fieldset{border:0;min-width:0;margin:0;padding:0}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}header{background:#fff;border-bottom:1px solid #e3e9df;justify-content:space-between;align-items:center;height:88px;padding:0 max(6%,50% - 580px);display:flex}.brand{letter-spacing:-1px;align-items:center;gap:10px;font-size:26px;font-weight:800;display:flex}.brand-dot{color:#77a05d;margin-left:-10px}.brand-icon{color:#fff;background:#345a40;border-radius:10px;place-items:center;width:38px;height:38px;font-size:22px;display:grid}.account{align-items:center;gap:18px;font-size:12px;display:flex}main{max-width:1160px;margin:auto;padding:0 24px}.hero{justify-content:space-between;align-items:center;min-height:360px;padding:50px 30px 40px 0;display:flex}.eyebrow{letter-spacing:2px;color:#6b8762;margin-bottom:14px;font-size:10px;font-weight:700;display:block}h1{letter-spacing:1px;margin-bottom:16px;font-size:40px;line-height:1.6}h1 span{color:#50734b}.hero p{color:#7a867a;margin-bottom:24px;font-size:13px;line-height:1.9}.primary{color:#fff;background:#355e42;border-radius:8px;padding:12px 22px;font-weight:600;box-shadow:0 3px 5px #2b493115}.primary:hover{background:#254a31}.secondary{color:#426047;background:#fff;border:1px solid #dce3da;border-radius:8px;padding:10px 16px}.hero-art{background:radial-gradient(#e3eddc 0,#0000 70%);width:300px;height:260px;position:relative}.paper{color:#90a480;background:#fff;border:1px solid #d9e2d3;border-radius:10px;width:102px;height:132px;padding:18px;font-weight:700;position:absolute;box-shadow:0 15px 25px #304e3410}.paper span{color:#ccd8c7;font-size:35px;display:block}.paper-back{top:14px;left:65px;transform:rotate(-17deg)}.paper-front{top:28px;left:154px;transform:rotate(15deg)}.zip-art{color:#fff;letter-spacing:2px;background:#52714a;border-radius:12px;width:183px;height:125px;padding:60px 20px 15px;font-size:25px;font-weight:800;position:absolute;top:99px;left:65px;transform:rotate(-5deg);box-shadow:0 20px 25px #304e3425}.zipper{color:#b6c995;font-size:25px;line-height:23px;position:absolute;top:0;right:28px}.art-caption{letter-spacing:3px;color:#87927d;font-size:9px;position:absolute;bottom:0;left:77px}.stats{color:#78816f;background:#eef2e9;border:1px solid #e0e6dc;border-radius:10px;align-items:center;gap:38px;padding:21px 26px;font-size:12px;display:flex}.stats strong{color:#3c5439;margin-right:8px;font-size:22px}.stats-note{margin-left:auto;font-size:11px}.library{padding-top:40px}.section-heading{justify-content:space-between;align-items:center;gap:20px;display:flex}.section-heading .eyebrow{margin-bottom:8px}h2{margin-bottom:20px;font-size:21px;font-weight:700}.count{vertical-align:middle;color:#6d825f;background:#e8eee3;border-radius:20px;margin-left:8px;padding:3px 9px;font-size:12px}.search{width:300px;margin:0}.search input{background:0 0;font-size:12px}.tabs{border-bottom:1px solid #dfe6dc;gap:26px;margin:12px 0 26px;display:flex}.tabs button{color:#899184;background:0 0;border-bottom:2px solid #0000;padding:13px 3px;font-size:12px}.tabs button.active{color:#355a3c;border-color:#355a3c;font-weight:700}.archive-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.archive-card{background:#fff;border:1px solid #e0e6dc;border-radius:12px;flex-direction:column;min-width:0;padding:24px;display:flex}.card-top{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.file-icon{color:#678359;background:#edf2e7;border:1px solid #dce6d3;border-radius:6px;place-items:center;width:43px;height:48px;font-size:12px;font-weight:800;display:grid}.badge{white-space:nowrap;border-radius:5px;padding:5px 8px;font-size:10px}.public{color:#57794c;background:#eff5e9}.members{color:#947645;background:#faf3e6}.archive-card h3{overflow-wrap:anywhere;margin-bottom:10px;font-size:17px}.description{color:#7a8578;white-space:pre-wrap;overflow-wrap:anywhere;max-height:160px;margin-bottom:20px;font-size:12px;line-height:1.9;overflow:auto}.filename{color:#7e8b79;text-overflow:ellipsis;white-space:nowrap;margin-top:auto;font-size:11px;overflow:hidden}.meta{color:#87927e;border-top:1px solid #edf0e9;flex-wrap:wrap;justify-content:space-between;gap:8px;padding:14px 0;font-size:10px;display:flex}.download-button{color:#48613d;background:#f0f4eb;border:1px solid #dce5d5;border-radius:7px;padding:11px;font-size:12px;font-weight:600}.download-button:hover{background:#e3ecd9}.owner-actions{justify-content:flex-end;gap:15px;margin-top:12px;display:flex}.owner-actions button,.text-button{color:#66805a;background:0 0;padding:8px 0;font-size:12px}.owner-actions .danger{color:#b65d4e}.empty{text-align:center;color:#829078;border:1px dashed #d7dfd0;border-radius:12px;padding:65px 15px}.empty h3{color:#52674a;font-size:17px}.empty p{font-size:12px}.empty-icon{color:#a2b594;margin-bottom:18px;font-size:42px;display:block}footer{color:#87967e;border-top:1px solid #e0e6dc;justify-content:space-between;align-items:center;margin-top:65px;padding:25px 0 30px;font-size:11px;display:flex}footer .brand{font-size:19px}.editor{background:#fff;border:1px solid #dce5d4;border-radius:12px;margin-top:28px;padding:28px}.segmented{background:#f2f5ed;border-radius:8px;gap:8px;margin-bottom:18px;padding:5px;display:flex}.segmented button{color:#7e8b76;background:0 0;border-radius:6px;flex:1;padding:10px 5px;font-size:12px}.segmented .selected{color:#385938;background:#fff;box-shadow:0 1px 5px #344b3310}.dropzone{color:#6d8262;background:#f9fbf6;border:1px dashed #b7c9ab;border-radius:8px;flex-direction:column;align-items:center;gap:8px;padding:22px;font-size:12px;display:flex}.dropzone input{background:0 0;border:0;max-width:400px;font-size:12px}.upload-symbol{font-size:28px}.file-summary{overflow-wrap:anywhere;color:#75856c;font-size:12px}.form-grid{grid-template-columns:1fr 1fr;gap:22px;display:grid}.form-actions{justify-content:flex-end;gap:10px;margin-top:8px;display:flex}.hint{color:#85907f;font-size:12px;line-height:1.8}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10;background:#1b2d2266;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.auth-card{background:#fff;border-radius:16px;width:460px;max-height:90vh;padding:36px;position:relative;overflow:auto;box-shadow:0 30px 100px #182d2430}.auth-card p{overflow-wrap:anywhere;line-height:1.9}.close-button{color:#85907f;background:0 0;font-size:25px;position:absolute;top:12px;right:18px}.full-width{width:100%;margin-top:12px}.toasts{z-index:20;gap:10px;max-width:min(440px,100vw - 32px);display:grid;position:fixed;bottom:25px;right:25px}.toast{color:#fff;background:#345940;border-radius:9px;align-items:center;gap:12px;padding:16px 18px;font-size:13px;display:flex;box-shadow:0 5px 25px #172c2430}.toast button{color:#fff;background:0 0;margin-left:auto;font-size:18px}.toast-error,.danger-bg{background:#ad5246}@media (width<=850px){.archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}h1{font-size:32px}.hero-art{width:260px;transform:scale(.85)}.stats-note{display:none}}@media (width<=580px){header{height:74px;padding:0 18px}.brand{font-size:22px}.account{gap:6px}.account>span{text-overflow:ellipsis;white-space:nowrap;max-width:90px;overflow:hidden}.account button{padding:9px;font-size:10px}main{padding:0 18px}.hero{min-height:0;padding:36px 0}.hero-art{display:none}h1{font-size:30px}.stats{gap:20px;padding:17px}.archive-grid{grid-template-columns:1fr}.section-heading{flex-wrap:wrap;align-items:flex-start;gap:0}.search{width:100%;margin-bottom:10px}.editor{padding:20px}.form-grid{grid-template-columns:1fr;gap:0}.auth-card{padding:30px 22px}.toasts{bottom:16px;right:16px}footer{gap:18px}.tabs{gap:22px}}
