.app-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.5rem 1rem;border-bottom:1px solid rgba(0,0,0,.06)}.header-nav a{margin:0 .5rem;text-decoration:none}.brand{font-weight:700;font-size:1.125rem}.dark-mode{background:#0f1724;color:#e6eef8}@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v23/pxiEyp8kv8JHgFVrJJbecmNE.woff2) format("woff2");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v23/pxiEyp8kv8JHgFVrJJnecmNE.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v23/pxiEyp8kv8JHgFVrJJfecg.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v23/pxiByp8kv8JHgFVrLGT9Z11lFc-K.woff2) format("woff2");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v23/pxiByp8kv8JHgFVrLGT9Z1JlFc-K.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v23/pxiByp8kv8JHgFVrLGT9Z1xlFQ.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v23/pxiByp8kv8JHgFVrLCz7Z11lFc-K.woff2) format("woff2");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v23/pxiByp8kv8JHgFVrLCz7Z1JlFc-K.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v23/pxiByp8kv8JHgFVrLCz7Z1xlFQ.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--primary-color: #8ECDDD;--accent-color: #A7D7C5;--background-color: #F8F9FA;--text-primary: #2F4F4F;--text-secondary: #778899;--text-on-primary: #FFFFFF;--input-border-color: var(--primary-color);--input-bg-color: var(--background-color);--card-bg-color: #FFFFFF;--card-shadow: 0 2px 4px rgba(0, 0, 0, .05);--icon-shadow: 2px 2px 4px rgba(0, 0, 0, .05);--gradient: linear-gradient(to right, var(--primary-color), var(--accent-color));--dark-primary-color: #6A9FB5;--dark-accent-color: #82B0A0;--dark-background-color: #1A2E3D;--dark-text-primary: #F8F9FA;--dark-text-secondary: #A0AEC0;--dark-input-border-color: var(--dark-primary-color);--dark-input-bg-color: #2D3748;--dark-card-bg-color: #2A3B4C;--dark-card-shadow: 0 2px 4px rgba(0, 0, 0, .1);--dark-gradient: linear-gradient(to right, var(--dark-primary-color), var(--dark-accent-color));--font-family: "Poppins", sans-serif;--font-size-title: 24pt;--font-size-subtitle: 16pt;--font-size-body: 14pt;--font-size-button: 14pt;--font-size-label: 12pt;--font-weight-bold: 700;--font-weight-medium: 500;--font-weight-regular: 400;--border-radius-large: 12px;--border-radius-medium: 8px;--border-radius-small: 4px}*{box-sizing:border-box;margin:0;padding:0}html{font-size:100%}body{font-family:var(--font-family);background-color:var(--background-color);color:var(--text-primary);line-height:1.6;transition:background-color .3s ease,color .3s ease;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body.dark-mode{--primary-color: var(--dark-primary-color);--accent-color: var(--dark-accent-color);--background-color: var(--dark-background-color);--text-primary: var(--dark-text-primary);--text-secondary: var(--dark-text-secondary);--input-border-color: var(--dark-input-border-color);--input-bg-color: var(--dark-input-bg-color);--card-bg-color: var(--dark-card-bg-color);--card-shadow: var(--dark-card-shadow);--gradient: var(--dark-gradient)}.mobile-container{max-width:414px;min-height:100vh;margin:0 auto;background-color:var(--background-color);box-shadow:0 0 20px #0000001a;position:relative;overflow:hidden;display:flex;flex-direction:column}.screen{display:flex;flex-direction:column;flex-grow:1;width:100%;height:100%;background-color:var(--background-color)}.screen-content{padding:20px;flex-grow:1;overflow-y:auto}.screen-content.center-content{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding-top:40px;padding-bottom:40px}.screen-content.with-fixed-input{padding-bottom:10px}.screen-footer{padding:15px 20px;background-color:var(--background-color);border-top:1px solid #eee}body.dark-mode .screen-footer{border-top:1px solid var(--dark-input-bg-color)}.app-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;background-color:var(--background-color);border-bottom:1px solid #eee}body.dark-mode .app-header{border-bottom:1px solid var(--dark-input-bg-color)}.logo-small svg{display:block}.header-icons .icon{margin-left:15px;stroke:var(--text-primary);filter:drop-shadow(var(--icon-shadow))}.screen-title{font-size:20pt;font-weight:var(--font-weight-bold);color:var(--text-primary);text-align:center;flex-grow:1}.back-button{background:none;border:none;color:var(--primary-color);font-family:var(--font-family);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;display:flex;align-items:center;padding:0}.back-button svg{margin-right:5px;stroke:var(--primary-color)}.header-action{background:none;border:none;cursor:pointer;padding:0}.header-action svg{stroke:var(--primary-color)}.title{font-size:var(--font-size-title);font-weight:var(--font-weight-bold);color:var(--text-primary);margin-bottom:8px}.subtitle{font-size:var(--font-size-subtitle);font-weight:var(--font-weight-medium);color:var(--text-secondary);margin-bottom:15px}.body-text{font-size:var(--font-size-body);font-weight:var(--font-weight-regular);color:var(--text-primary)}.button-text{font-size:var(--font-size-button);font-weight:var(--font-weight-medium);color:var(--text-on-primary)}.secondary-text{color:var(--text-secondary);font-size:12pt}.bold{font-weight:var(--font-weight-bold)}.logo{margin-bottom:15px;filter:drop-shadow(var(--icon-shadow))}.logo-large svg{stroke:var(--text-primary);width:80px;height:80px}.logo-large svg path[fill]{fill:var(--primary-color)}.logo-small svg{stroke:var(--primary-color);width:30px;height:30px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 20px;border-radius:var(--border-radius-large);font-family:var(--font-family);font-size:var(--font-size-button);font-weight:var(--font-weight-medium);border:none;cursor:pointer;text-decoration:none;transition:background .2s ease,box-shadow .2s ease;line-height:1.4}.btn-primary{background:var(--gradient);color:var(--text-on-primary);box-shadow:0 4px 8px #0000001a}.btn-primary:hover{box-shadow:0 6px 12px #00000026;filter:brightness(1.05)}.btn.full-width{width:100%;display:block;text-align:center}.btn.add-list-btn,.btn.add-item-btn{margin-top:20px;margin-bottom:10px}.btn-social{background-color:var(--input-bg-color);color:var(--text-primary);border:1px solid var(--input-border-color);width:100%;margin-bottom:10px;font-size:13pt;font-weight:var(--font-weight-medium);justify-content:center}.btn-social svg{margin-right:10px}body.dark-mode .btn-social{border:1px solid var(--dark-input-border-color)}.fab{position:absolute;bottom:30px;right:20px;width:60px;height:60px;border-radius:50%;background:var(--gradient);color:var(--text-on-primary);box-shadow:0 4px 10px #0003;padding:0}.fab svg{width:24px;height:24px;stroke:#fff}.icon-button{background:none;border:none;padding:5px;cursor:pointer;display:flex;align-items:center;justify-content:center}.icon-button svg{width:18px;height:18px;stroke:var(--text-secondary);filter:drop-shadow(var(--icon-shadow))}.icon-button:hover svg{stroke:var(--primary-color)}.icon-button svg[stroke*=accent-color]:hover{filter:brightness(1.2)}.link{font-size:var(--font-size-body);font-weight:var(--font-weight-regular);text-decoration:none;cursor:pointer}.link.primary-link{color:var(--primary-color);font-weight:var(--font-weight-medium)}.link.secondary-link{color:var(--text-secondary);display:block;margin-top:15px}.link:hover{text-decoration:underline}.auth-form,.create-form{width:100%;margin-top:25px}.form-group{margin-bottom:20px;text-align:left;width:100%}.form-label{display:block;font-size:var(--font-size-label);font-weight:var(--font-weight-medium);color:var(--text-secondary);margin-bottom:6px}.form-input{width:100%;padding:12px 15px;border:1px solid var(--input-border-color);background-color:var(--input-bg-color);color:var(--text-primary);border-radius:var(--border-radius-medium);font-size:var(--font-size-body);font-family:var(--font-family);transition:border-color .2s ease}.form-input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px #a7d7c54d}body.dark-mode .form-input:focus{box-shadow:0 0 0 2px #82b0a066}.form-input::placeholder{color:var(--text-secondary);opacity:.8}.input-with-icon{position:relative}.input-with-icon .form-input{padding-right:40px}.input-with-icon .input-icon{position:absolute;top:50%;right:12px;transform:translateY(-50%);pointer-events:none;stroke:var(--text-secondary)}.form-row{display:flex;gap:10px;align-items:flex-end}.form-row .form-group{flex-grow:1;margin-bottom:0}.form-row .quantity-group{flex-grow:0;flex-basis:70px}.form-row .unit-group{flex-grow:0;flex-basis:80px}.form-input[type=number]{text-align:center;padding-left:5px;padding-right:5px}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}.separator{text-align:center;color:var(--text-secondary);margin:20px 0;font-size:var(--font-size-body)}.social-login{width:100%;margin-top:10px}.signup-prompt{margin-top:30px;color:var(--text-secondary)}.list-section{margin-top:25px}.section-title{font-size:var(--font-size-subtitle);font-weight:var(--font-weight-medium);color:var(--text-secondary);margin-bottom:15px;text-align:left}.item-list{list-style:none;padding:0}.list-card{background-color:var(--card-bg-color);border-radius:var(--border-radius-medium);margin-bottom:15px;padding:15px;box-shadow:var(--card-shadow);display:flex;align-items:center;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;position:relative;overflow:hidden}.list-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #00000014}body.dark-mode .list-card:hover{box-shadow:0 4px 8px #00000026}.card-accent-line{position:absolute;left:0;top:0;bottom:0;width:5px;background-color:var(--primary-color);border-radius:var(--border-radius-medium) 0 0 var(--border-radius-medium)}.card-accent-line.accent{background-color:var(--accent-color)}.card-content{flex-grow:1;display:flex;flex-direction:column;margin-left:15px}.list-card-title{font-size:var(--font-size-subtitle);font-weight:var(--font-weight-medium);color:var(--text-primary);margin-bottom:5px}.list-card-detail{font-size:var(--font-size-body);color:var(--text-secondary);display:flex;align-items:center}.list-card-detail .icon-inline{margin-right:6px;stroke:var(--text-secondary);width:14px;height:14px}.chevron{stroke:var(--text-secondary);flex-shrink:0;margin-left:10px}.empty-state{text-align:center;padding:40px 20px;color:var(--text-secondary)}.empty-state .icon-large{margin-bottom:15px;stroke-width:1.5;width:60px;height:60px}.add-item-form{background-color:var(--background-color);border-bottom:1px solid #eee;margin:-20px -20px 20px;padding:20px}body.dark-mode .add-item-form{border-bottom:1px solid var(--dark-input-bg-color)}.item-list-section{padding-top:0}.item-list.added-items{margin-top:15px}.list-item{display:flex;align-items:center;padding:12px 5px;border-bottom:1px solid #eee}body.dark-mode .list-item{border-bottom:1px solid var(--dark-input-bg-color)}.list-item:last-child{border-bottom:none}.item-checkbox{margin-right:15px;flex-shrink:0;width:20px;height:20px;accent-color:var(--primary-color)}.item-details{flex-grow:1;display:flex;flex-direction:column}.item-name{font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--text-primary)}.item-info{font-size:12pt;color:var(--text-secondary)}.item-category-tag{font-size:10pt;font-weight:var(--font-weight-medium);color:var(--text-on-primary);background-color:var(--accent-color);padding:3px 8px;border-radius:var(--border-radius-small);margin-left:10px;flex-shrink:0}.item-category-tag.produce{background-color:#87c5a4}.item-actions{margin-left:15px;display:flex;gap:8px;flex-shrink:0}.icon{filter:drop-shadow(var(--icon-shadow))}.icon-left{margin-right:8px}.dark-mode-toggle{position:absolute;top:5px;right:5px;z-index:100;background:#0000001a;padding:3px 6px;border-radius:4px;font-size:10px;color:var(--text-secondary)}.dark-mode-toggle label{margin-right:4px}body.dark-mode .dark-mode-toggle{background:#ffffff1a;color:var(--dark-text-secondary)}
