*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #fafafa;--fg: #111;--muted: #666;--border: #ddd;--accent: #000;--card-bg: #fff;--radius: 8px;--max-w: 600px}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--fg);line-height:1.5;-webkit-font-smoothing:antialiased}.app{min-height:100vh}.page{max-width:var(--max-w);margin:0 auto;padding:8px 16px 16px}.header{display:flex;align-items:center;gap:8px;padding:6px 0 8px;border-bottom:1px solid var(--border);margin-bottom:12px}.header img{height:26px}.header h1{font-size:17px;font-weight:700;letter-spacing:1px}.header .sub{font-size:11px;color:var(--muted);margin-left:auto}.search-bar{display:flex;gap:8px;margin-bottom:16px}.search-bar input{flex:1;padding:10px 14px;border:1px solid var(--border);border-radius:var(--radius);font-size:15px;outline:none}.search-bar input:focus{border-color:var(--accent)}.btn{padding:10px 20px;border:none;border-radius:var(--radius);background:var(--accent);color:#fff;font-size:14px;font-weight:600;cursor:pointer}.btn:active{opacity:.8}.btn-outline{background:transparent;color:var(--fg);border:1px solid var(--border)}.card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;margin-bottom:12px}.card-img{width:100%;max-height:420px;object-fit:contain;background:#f3f3f3;display:block}.card-body{padding:12px}.card-body h3{font-size:16px;margin-bottom:4px}.card-body .meta{font-size:12px;color:var(--muted)}.card-body .tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.tag{font-size:11px;padding:2px 8px;background:#f0f0f0;border-radius:20px}.form-group{margin-bottom:14px}.form-group label{display:block;font-size:13px;font-weight:600;margin-bottom:4px}.form-group input,.form-group textarea,.form-group select{width:100%;padding:10px;border:1px solid var(--border);border-radius:var(--radius);font-size:14px}.form-group textarea{min-height:80px;resize:vertical}.upload-zone{border:2px dashed var(--border);border-radius:var(--radius);padding:32px;text-align:center;color:var(--muted);cursor:pointer;margin-bottom:14px}.upload-zone:active{border-color:var(--accent)}.nav-bottom{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-around;align-items:center;background:#fffffff5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--border);box-shadow:0 -6px 20px #0000000f;padding:10px 12px calc(10px + env(safe-area-inset-bottom));z-index:50}.nav-bottom a{flex:1;min-height:52px;display:flex;align-items:center;justify-content:center;border-radius:16px;font-size:15px;line-height:1;color:var(--muted);text-decoration:none;text-align:center;padding:0 8px;-webkit-tap-highlight-color:transparent}.nav-bottom a.active{color:var(--accent);font-weight:700;background:#f1f1f1}.empty{text-align:center;padding:40px 0;color:var(--muted)}@media (min-width: 768px){:root{--max-w: 800px}}.upload-form{display:grid;gap:10px}.upload-form .form-group>label{margin-bottom:5px}.upload-form input,.upload-form textarea,.upload-form select,.upload-form button{max-width:100%}form{margin:0}.form-group{margin-bottom:12px}.form-group label{margin-bottom:6px;line-height:1.35}.form-group input,.form-group textarea,.form-group select{min-height:42px;line-height:1.45;background:#fff}.form-group textarea{min-height:92px}.btn{min-height:40px;display:inline-flex;align-items:center;justify-content:center;line-height:1.2}.card{margin-bottom:14px}.card-body{padding:12px 12px 14px}.card-body h3{line-height:1.35}.card-body .meta{line-height:1.45}.tag{line-height:1.35}.upload-zone{padding:24px 18px;line-height:1.45}.upload-form{display:flex;flex-direction:column;gap:12px}.upload-form .form-group{margin-bottom:0}.upload-form .form-group>label{margin-bottom:6px}.upload-form .form-group>div,.upload-form .form-group>input,.upload-form .form-group>textarea,.upload-form .form-group>select,.upload-form .form-group>.upload-zone{margin-top:0}.upload-form .form-group>div+div,.upload-form .form-group>input+div,.upload-form .form-group>textarea+div,.upload-form .form-group>select+div,.upload-form .form-group>.upload-zone+div{margin-top:8px}.upload-form .upload-zone{margin-bottom:0}@media (max-width: 480px){.page{padding-left:14px;padding-right:14px}.card{border-radius:10px}.btn{padding-left:14px;padding-right:14px}}.upload-form{gap:12px}.upload-form .form-group{background:#fff;border:1px solid #ececec;border-radius:12px;padding:12px;box-shadow:0 4px 14px #00000006}.upload-form .form-group>label{font-size:13px;color:#222;display:flex;align-items:center;gap:6px}.upload-form .form-group:nth-of-type(1),.upload-form .form-group:nth-of-type(2),.upload-form .form-group:nth-of-type(3),.upload-form .form-group:nth-of-type(4){border-left:4px solid #111}.upload-form .form-group:nth-of-type(5),.upload-form .form-group:nth-of-type(6),.upload-form .form-group:nth-of-type(7),.upload-form .form-group:nth-of-type(8){border-left:4px solid #d9e7ff}.upload-form .form-group:nth-of-type(9),.upload-form .form-group:nth-of-type(10),.upload-form .form-group:nth-of-type(11),.upload-form .form-group:nth-of-type(12){border-left:4px solid #e8f5e9}.upload-form .form-group:nth-of-type(13),.upload-form .form-group:nth-of-type(14),.upload-form .form-group:nth-of-type(15){border-left:4px solid #fff3d6}.upload-form .form-group input,.upload-form .form-group textarea,.upload-form .form-group select{border-color:#e3e3e3;background:#fcfcfc}.upload-form .form-group input:focus,.upload-form .form-group textarea:focus,.upload-form .form-group select:focus{border-color:#111;background:#fff}.upload-form .upload-zone{background:linear-gradient(180deg,#fff,#f7f7f7);border-color:#d8d8d8;padding:22px 16px}.upload-form>.btn[type=submit]{margin-top:4px!important;border-radius:12px;min-height:48px;box-shadow:0 8px 20px #0000001f}.search-panel,.share-panel{background:#fff;border:1px solid #ececec;border-left:4px solid #111;border-radius:12px;padding:12px;box-shadow:0 4px 14px #00000006}.category-scroll{background:#fff;border:1px solid #ececec;border-left:4px solid #d9e7ff;border-radius:12px;padding:10px;box-shadow:0 4px 14px #00000006}.result-toolbar{background:#fff;border:1px solid #ececec;border-left:4px solid #e8f5e9;border-radius:12px;padding:10px 12px;box-shadow:0 4px 14px #00000006}.location-card{border-radius:14px;border-color:#ececec;box-shadow:0 8px 22px #0000000b}.location-card .card-body{padding:13px 13px 15px}.location-card h3{font-size:17px}.location-card .meta{margin-top:2px}.location-feature{background:#f7f9ff;border:1px solid #edf2ff;border-radius:10px;padding:8px 10px}.nav-popover{background:#fff;border:1px solid #ececec;box-shadow:0 10px 30px #00000024}.meta-chip{display:inline-flex;align-items:center;min-height:24px;padding:3px 9px;border-radius:999px;font-size:12px;font-weight:650;line-height:1.2;border:1px solid transparent}.meta-chip-category{background:#fff3d6;color:#795200;border-color:#ffe2a3}.meta-chip-space{background:#e8f5e9;color:#1f6b2d;border-color:#cfead2}.meta-chip-city{background:#eaf2ff;color:#24508f;border-color:#d5e4ff}.meta-chip-category,.meta-chip-space,.meta-chip-city{display:inline-flex;align-items:center;min-height:24px;padding:3px 9px;border-radius:999px;font-size:12px;font-weight:650;line-height:1.2;border:1px solid transparent}.meta-chip-category-studio{background:#efe7ff;color:#56328f;border-color:#dcf}.meta-chip-category-hotel{background:#ffe8d8;color:#8a3d13;border-color:#ffd1ae}.meta-chip-category-home{background:#e8f5e9;color:#256b31;border-color:#cfead2}.meta-chip-category-commercial{background:#e8f0ff;color:#254f8f;border-color:#cfddff}.meta-chip-category-office{background:#e5f7f7;color:#17686a;border-color:#c5eeee}.meta-chip-category-food{background:#fff0f5;color:#8a2f56;border-color:#ffd4e3}.meta-chip-category-outdoor{background:#ecf7df;color:#4d6f16;border-color:#d7edb9}.meta-chip-category-architecture{background:#f0f0f0;color:#454545;border-color:#dedede}.meta-chip-category-street{background:#fff6d8;color:#806000;border-color:#ffe7a8}.meta-chip-space-interior{background:#eef2ff;color:#30468f;border-color:#d9e0ff}.meta-chip-space-exterior{background:#e7f7ea;color:#1f7437;border-color:#cbeed2}.meta-chip-space-both{background:#fff2dc;color:#8a5200;border-color:#ffddb0}.meta-chip-category-white-studio{background:#f7f7f7;color:#333;border-color:#dedede}.meta-chip-category-real-studio{background:#efe7ff;color:#56328f;border-color:#dcf}.meta-chip-category-public{background:#e8f0ff;color:#254f8f;border-color:#cfddff}.meta-chip-category-private{background:#fff0f5;color:#8a2f56;border-color:#ffd4e3}.meta-chip-category-commercial{background:#e5f7f7;color:#17686a;border-color:#c5eeee}.meta-chip-category-nature{background:#ecf7df;color:#4d6f16;border-color:#d7edb9}.meta-chip-category-industrial{background:#fff3d6;color:#795200;border-color:#ffe2a3}.meta-chip-category-other{background:#f3f3f3;color:#555;border-color:#e3e3e3}.meta-chip-city{background:#f1e8ff;color:#5a2f91;border-color:#dec8ff}.meta-chip-city{background:#ddfbf4;color:#006b5f;border-color:#a8eee0}.info-badges{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0}.info-badge{display:inline-flex;align-items:center;min-height:22px;padding:3px 8px;border-radius:999px;font-size:11px;font-weight:650;line-height:1.2;background:#f4f4f4;color:#555;border:1px solid #e4e4e4;white-space:nowrap}.info-badge{background:#fff0f0;color:#a13a3a;border-color:#ffd1d1}
