@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@600;700&display=swap');
:root{--green:#123c2d;--green2:#1d6045;--sage:#e3ecd9;--sage2:#f0f4e9;--cream:#f7f4ec;--ink:#17251e;--muted:#778078;--line:#e5e4dc;--white:#fffefa;--shadow:0 10px 28px rgba(23,37,30,.06)}
*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif}.app-shell{min-height:100vh}.sidebar{width:258px;background:var(--green);color:#f5f5e9;position:fixed;inset:0 auto 0 0;padding:24px 15px 14px;display:flex;flex-direction:column;z-index:5;overflow-y:auto}.brand{display:flex;align-items:center;gap:12px;padding:2px 9px 30px}.brand-mark{width:42px;height:42px;border-radius:14px;background:#dfead5;color:var(--green);display:grid;place-items:center;font-size:26px}.brand strong{display:block;font-size:19px;letter-spacing:-.5px}.brand small{display:block;color:#b9c9bd;font-size:10px;margin-top:3px;letter-spacing:.5px}.nav-item{width:100%;border:0;background:transparent;color:#e8eee8;padding:11px 12px;border-radius:11px;display:flex;align-items:center;gap:13px;text-align:left;font:600 13px 'DM Sans';cursor:pointer;margin:2px 0}.nav-item span{width:19px;text-align:center;font-size:19px;color:#d7e5d7}.nav-item:hover,.nav-item.active{background:#286345;color:white}.nav-item em{margin-left:auto;background:#4d735a;color:#f2f5df;border-radius:20px;padding:3px 8px;font-size:10px;font-style:normal}.nav-item b{margin-left:auto;color:#a9c0ae}.nav-divider{height:1px;background:#ffffff22;margin:12px 8px}.nav-children{display:none;padding:0 0 5px 35px}.nav-children.open{display:block}.nav-child{display:block;width:100%;padding:8px 8px;border:0;background:transparent;color:#d4e0d5;text-align:left;font:500 12px 'DM Sans';border-radius:8px;cursor:pointer}.nav-child:hover{background:#ffffff18}.sidebar-bottom{margin-top:auto;border-top:1px solid #ffffff26;padding:16px 8px 4px;display:flex;align-items:center;gap:9px;color:#c8d5c9;font-size:11px}.sync-dot{width:8px;height:8px;border-radius:50%;background:#9fc78f}.sidebar-bottom button{margin-left:auto;border:0;background:transparent;color:white;font-size:17px;cursor:pointer}.main{margin-left:258px;min-height:100vh}.topbar{height:78px;padding:15px 34px;display:flex;align-items:center;gap:15px;border-bottom:1px solid var(--line);background:#f9f7f0dd;position:sticky;top:0;z-index:4;backdrop-filter:blur(12px)}.top-search{height:44px;max-width:720px;flex:1;margin:auto;display:flex;align-items:center;gap:10px;padding:0 9px 0 15px;border:1px solid #d9ddd4;border-radius:13px;background:var(--white);box-shadow:0 3px 10px #193b2410}.top-search>span{color:#8ca38d}.top-search input{border:0;outline:0;flex:1;min-width:0;background:transparent;font:13px 'DM Sans'}.upload-search{font-size:20px;color:var(--green);cursor:pointer;padding:5px}.icon-button{border:0;background:var(--green);color:white;width:34px;height:34px;border-radius:9px;font-size:21px;cursor:pointer}.avatar{width:36px;height:36px;border:0;border-radius:50%;background:var(--green);color:white;font-weight:700}.mobile-menu{display:none}.content{max-width:1440px;margin:0 auto;padding:34px 38px 60px}.welcome-row{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px}.eyebrow{font-size:10px;letter-spacing:1.6px;color:#64806b;font-weight:700;margin:0 0 8px}.welcome-row h1{font:700 34px 'Playfair Display',serif;margin:0}.muted{color:var(--muted)}.welcome-row p.muted{font-size:13px;margin:7px 0 0}.quick-add{display:flex;gap:9px}.primary-button,.soft-button{border:0;border-radius:10px;padding:11px 16px;font:600 12px 'DM Sans';cursor:pointer}.primary-button{background:var(--green);color:white}.primary-button:hover{background:var(--green2)}.soft-button{background:var(--sage);color:var(--green)}.section{margin:25px 0 34px}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.section-heading h2{font-size:17px;margin:0;font-weight:700}.section-heading .muted{font-size:11px}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:15px}.item-card{background:var(--white);border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:var(--shadow);cursor:pointer;transition:transform .15s}.item-card:hover{transform:translateY(-2px)}.thumb{height:112px;background:linear-gradient(135deg,#e5ebdc,#f6f2e8);display:grid;place-items:center;color:#78917b;font-size:34px;overflow:hidden}.thumb img,.thumb video{width:100%;height:100%;object-fit:cover}.item-info{padding:13px}.item-info h3{font-size:13px;margin:0 0 8px;line-height:1.4}.item-info p{font-size:11px;color:var(--muted);margin:0;line-height:1.5}.tags{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0 0}.tag{background:var(--sage2);color:#315a3d;border-radius:20px;padding:4px 8px;font-size:9px;font-weight:600}.card-actions{display:flex;justify-content:flex-end;gap:6px;padding:0 12px 12px}.tiny-button{border:1px solid var(--line);background:white;color:#49634f;border-radius:8px;padding:5px 8px;font-size:10px;cursor:pointer}.important-list{display:grid;gap:9px}.important-row{background:var(--white);border:1px solid var(--line);border-radius:11px;padding:13px 15px;display:flex;align-items:center;gap:12px;cursor:pointer}.important-row strong{font-size:12px}.important-row small{display:block;color:var(--muted);margin-top:3px;font-size:10px}.important-star{color:#b58b32;font-size:18px}.empty-state{border:1px dashed #d7ddd2;border-radius:13px;padding:26px;text-align:center;color:#879188;font-size:12px;background:#fbfaf5}.library-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:20px}.filter-pills{display:flex;gap:7px;flex-wrap:wrap}.filter-pill{border:1px solid var(--line);background:var(--white);padding:8px 12px;border-radius:20px;font-size:11px;color:#68746a;cursor:pointer}.filter-pill.selected{background:var(--green);color:white;border-color:var(--green)}select,input,textarea{font-family:inherit}.library-toolbar select{border:1px solid var(--line);background:white;border-radius:9px;padding:8px;font-size:11px;color:#59655c}.search-panel,.settings-card{background:var(--white);border:1px solid var(--line);border-radius:16px;padding:23px;box-shadow:var(--shadow)}.search-intro{display:flex;gap:13px;align-items:center}.ai-orb{width:43px;height:43px;border-radius:14px;background:var(--sage);display:grid;place-items:center;color:var(--green);font-size:23px}.search-intro h2{font:700 22px 'Playfair Display';margin:0 0 4px}.search-intro p{font-size:12px;margin:0}.big-search{display:flex;gap:9px;margin:20px 0}.big-search input{flex:1;min-width:0;border:1px solid var(--line);border-radius:10px;padding:13px;font-size:13px;outline-color:#8ca78f}.image-drop{border:1px dashed #cbd7c9;border-radius:12px;background:#f8faf4;padding:16px;display:flex;align-items:center;gap:13px}.image-drop>span{font-size:28px;color:#527a5b}.image-drop div{flex:1}.image-drop strong{font-size:12px}.image-drop p{font-size:11px;margin:4px 0 0}.small{font-size:10px}.settings-card{max-width:800px}.settings-card h2{font:700 23px 'Playfair Display';margin-top:0}.settings-card>p{font-size:12px}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding:15px 0}.setting-row strong{font-size:12px}.setting-row p{font-size:10px;margin:4px 0 0}.status-chip{font-size:10px;padding:6px 9px;border-radius:20px;background:#f2eee2;color:#8a6b32;white-space:nowrap}.status-chip.good{background:#e6f1e3;color:#376440}.dialog-head{display:flex;align-items:center;justify-content:space-between}.dialog-head h2{font:700 22px 'Playfair Display';margin:0}.close-button{border:0;background:transparent;font-size:25px;cursor:pointer;color:#657267}dialog{border:1px solid var(--line);border-radius:17px;padding:22px;width:min(560px,calc(100% - 26px));background:var(--white);color:var(--ink);box-shadow:0 20px 70px #14251d40}dialog::backdrop{background:#14251d88;backdrop-filter:blur(3px)}dialog form>label,dialog form .form-row label{display:block;font-size:11px;font-weight:600;margin:15px 0;color:#4c5b50}dialog input:not([type=checkbox]),dialog textarea,dialog select{display:block;width:100%;margin-top:6px;padding:10px;border:1px solid var(--line);border-radius:9px;background:#fff;font-size:12px;outline-color:#8ca78f}dialog textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.check-row{display:flex;gap:20px;font-size:11px}.check-row label{display:flex;align-items:center;gap:6px}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.toast{position:fixed;bottom:22px;left:50%;transform:translate(-50%,20px);background:#173d2d;color:white;padding:11px 16px;border-radius:10px;font-size:12px;opacity:0;pointer-events:none;transition:.2s;z-index:20}.toast.show{opacity:1;transform:translate(-50%,0)}#preview-content{margin-top:16px;font-size:13px;line-height:1.6;overflow-wrap:anywhere}#preview-content img,#preview-content video{max-width:100%;max-height:55vh;border-radius:10px}.preview-meta{color:var(--muted);font-size:11px;margin-top:10px}
@media(max-width:900px){.sidebar{width:235px}.main{margin-left:235px}.content{padding:25px 22px}.topbar{padding:12px 18px}}
@media(max-width:680px){.sidebar{transform:translateX(-100%);transition:transform .2s;width:270px;box-shadow:10px 0 35px #0002}.sidebar.open{transform:translateX(0)}.main{margin-left:0}.topbar{height:65px;padding:10px 12px}.mobile-menu{display:block;border:0;background:transparent;font-size:22px;color:var(--green)}.top-search{height:40px}.top-search input{font-size:11px}.content{padding:23px 15px 45px}.welcome-row{align-items:flex-start;flex-direction:column}.welcome-row h1{font-size:29px}.quick-add{width:100%}.quick-add button{flex:1}.library-toolbar{align-items:flex-start;flex-direction:column}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.thumb{height:90px}.item-info{padding:10px}.item-info h3{font-size:11px}.item-info p{font-size:10px}.image-drop{align-items:flex-start;flex-wrap:wrap}.image-drop .soft-button{margin-left:40px}.form-row{grid-template-columns:1fr}.setting-row{align-items:flex-start;flex-direction:column}.avatar{width:32px;height:32px}}

.auth-label{display:block;font-size:11px;font-weight:600;margin:12px 0;color:#4c5b50}.auth-label input{display:block;width:100%;max-width:420px;margin-top:6px;padding:11px;border:1px solid var(--line);border-radius:9px;background:#fff;font-size:12px}.auth-actions{display:flex;gap:9px;flex-wrap:wrap;margin:12px 0}
