:root{--ink:#142f36;--ink-soft:#39545a;--navy:#0f3941;--navy-deep:#082a31;--paper:#f5f1e8;--paper-light:#fbfaf6;--white:#fff;--coral:#e96f50;--coral-dark:#c95337;--gold:#d6a33c;--sea:#b9d9d4;--line:#dcd6c9;--line-dark:#c8c1b3;--muted:#718084;--shadow:0 18px 45px #112f3517}*{box-sizing:border-box}html{background:var(--paper);scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,textarea,select{font:inherit}button{color:inherit}button,select,input[type=range]{cursor:pointer}button:disabled,select:disabled,input:disabled{cursor:not-allowed;opacity:.58}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #e96f5047}.brand{color:var(--ink);letter-spacing:-.4px;align-items:center;gap:10px;font-family:Georgia,Times New Roman,serif;font-size:21px;font-weight:700;display:flex}.brand-light{color:#fff}.eyebrow{color:var(--coral-dark);letter-spacing:.16em;text-transform:uppercase;margin:0 0 13px;font-size:11px;font-weight:800}.eyebrow.light{color:#efad98}.muted{color:var(--muted)}.primary-button,.secondary-button{border-radius:4px;justify-content:center;align-items:center;gap:9px;min-height:45px;padding:0 18px;font-size:13px;font-weight:750;transition:transform .18s,box-shadow .18s,background .18s;display:inline-flex}.primary-button{border:1px solid var(--coral);background:var(--coral);color:#fff;box-shadow:0 9px 20px #c9533729}.primary-button:hover:not(:disabled){background:var(--coral-dark);border-color:var(--coral-dark);transform:translateY(-1px)}.secondary-button{border:1px solid var(--line-dark);background:var(--paper-light);color:var(--ink)}.secondary-button:hover:not(:disabled){border-color:var(--ink);background:#fff}.text-button{color:var(--muted);background:0 0;border:0;padding:12px 18px;font-size:13px;font-weight:700}.text-button:hover{color:var(--ink)}.login-shell{background:var(--paper-light);grid-template-columns:minmax(380px,1.08fr) minmax(430px,.92fr);min-height:100vh;display:grid}.login-story{color:#fff;background:radial-gradient(circle at 82% 20%,#7ebbb333,#0000 31%),linear-gradient(150deg,#0e424a 0%,#092f36 58%,#06272e 100%);flex-direction:column;justify-content:space-between;min-height:100vh;padding:46px 58px 35px;display:flex;position:relative;overflow:hidden}.login-story:before{content:"";border:1px solid #ffffff1a;border-radius:50%;width:360px;height:360px;position:absolute;top:-140px;right:-110px;box-shadow:0 0 0 48px #ffffff06,0 0 0 96px #ffffff05}.login-story-copy{z-index:1;max-width:520px;margin-top:auto;margin-bottom:auto;padding:70px 0;position:relative}.login-story-copy h1{letter-spacing:-.055em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(52px,5.4vw,82px);font-weight:500;line-height:.98}.login-story-copy>p:last-child{color:#bcd0d1;max-width:400px;margin:28px 0 0;font-family:Georgia,Times New Roman,serif;font-size:18px;line-height:1.65}.login-footnote{z-index:1;color:#789ba0;letter-spacing:.19em;text-transform:uppercase;margin:0;font-size:10px;position:relative}.ocean-lines{opacity:.3;height:100px;position:absolute;bottom:95px;left:0;right:0}.ocean-lines i{border:1px solid #b2dfdb52;border-radius:50%;width:130%;height:90px;display:block;position:absolute;left:-15%}.ocean-lines i:first-child{top:8px}.ocean-lines i:nth-child(2){top:36px;left:-5%}.ocean-lines i:nth-child(3){top:65px;left:-25%}.login-panel{place-items:center;padding:50px;display:grid}.login-card{width:min(100%,390px)}.lock-mark{width:46px;height:46px;color:var(--coral);background:var(--paper);border:1px solid #e3d8ca;border-radius:50%;place-items:center;margin-bottom:27px;display:grid}.login-card h2{letter-spacing:-.035em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:36px;font-weight:500;line-height:1.1}.login-card .muted{margin:12px 0 34px;font-family:Georgia,Times New Roman,serif;font-size:15px}.field-label,.form-field>span{color:var(--ink);letter-spacing:.055em;text-transform:uppercase;margin-bottom:8px;font-size:11px;font-weight:800;display:block}.login-input{margin-bottom:12px}.login-button{width:100%;margin-top:8px}.secure-note{color:#98a2a2;justify-content:center;align-items:center;gap:6px;margin:18px 0 0;font-size:11px;display:flex}.text-input,.text-area,.model-select,.key-input{border:1px solid var(--line);width:100%;color:var(--ink);background:#ffffffc7;border-radius:4px;transition:border-color .16s,box-shadow .16s,background .16s}.text-input{height:46px;padding:0 13px}.text-area{resize:vertical;min-height:110px;padding:13px;line-height:1.55}.text-area.short{min-height:90px}.text-input::placeholder,.text-area::placeholder{color:#9da5a3}.text-input:focus,.text-area:focus,.model-select:focus{background:#fff;border-color:#86aaa7;outline:0;box-shadow:0 0 0 3px #6296921a}.form-error{color:#ad3d2c;margin:6px 0;font-size:12px;font-weight:650}.form-error-box{background:#fff3ef;border:1px solid #ecc7bc;border-radius:4px;padding:12px 14px}.app-shell{grid-template-columns:232px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{z-index:10;border-right:1px solid var(--line);background:#eee9de;flex-direction:column;width:232px;padding:30px 19px 18px;display:flex;position:fixed;inset:0 auto 0 0}.sidebar .brand{padding:0 10px 35px}.sidebar-label{color:#8d918d;letter-spacing:.17em;text-transform:uppercase;margin:0 10px 9px;font-size:9px;font-weight:800}.categories-label{margin-top:30px}.side-nav{gap:3px;display:grid}.side-nav button,.sidebar-bottom button{color:#5f6e6e;text-align:left;background:0 0;border:0;border-radius:4px;align-items:center;gap:11px;width:100%;height:41px;padding:0 11px;font-size:13px;display:flex}.side-nav button:hover,.sidebar-bottom button:hover{color:var(--ink);background:#ffffff80}.side-nav button.active,.sidebar-bottom button.active{color:var(--ink);background:#fffdf8;font-weight:700;box-shadow:0 4px 13px #273d3d0d}.side-nav button.active svg{color:var(--coral)}.category-row{text-align:left;background:0 0;border:0;border-radius:4px;align-items:center;gap:11px;width:100%;padding:9px 10px;display:flex}.category-row.active{background:#ffffff6b}.category-row:hover{background:#ffffff4d}.category-row.future{opacity:.58;cursor:default;margin-top:4px}.category-icon{width:30px;height:30px;color:var(--navy);background:#faf7f0;border:1px solid #d6d0c4;border-radius:50%;flex:none;place-items:center;display:grid}.category-row b,.category-row small{display:block}.category-row b{margin-bottom:2px;font-size:12px}.category-row small{color:#87908e;font-size:9px}.sidebar-bottom{border-top:1px solid #dbd4c8;margin-top:auto;padding-top:16px}.main-canvas{grid-column:2;min-width:0;min-height:100vh}.page-wrap{width:min(1120px,100% - 80px);margin:0 auto;padding:64px 0 85px}.page-heading{justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:44px;display:flex}.page-heading h1{letter-spacing:-.052em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(45px,5vw,72px);font-weight:500;line-height:.98}.page-heading h1 em{color:var(--coral);font-weight:inherit}.heading-copy{color:#68787a;max-width:480px;margin:20px 0 0;font-family:Georgia,Times New Roman,serif;font-size:16px;line-height:1.55}.compact-heading{align-items:flex-start;margin-bottom:37px}.compact-heading h1{font-size:clamp(42px,4.4vw,61px)}.stats-strip{border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);grid-template-columns:repeat(3,minmax(110px,1fr)) minmax(245px,1.6fr);min-height:96px;margin-bottom:56px;display:grid}.stats-strip>div{border-right:1px solid var(--line);flex-direction:column;justify-content:center;padding:15px 22px;display:flex}.stats-strip strong{font-family:Georgia,Times New Roman,serif;font-size:28px;font-weight:500}.stats-strip span{color:var(--muted);letter-spacing:.04em;font-size:10px}.stats-strip button{color:var(--coral-dark);background:0 0;border:0;justify-content:center;align-items:center;gap:11px;font-size:12px;font-weight:750;display:flex}.stats-strip button span{color:inherit;font-size:inherit}.stats-strip button:hover{background:#ffffff59}.section-title{justify-content:space-between;align-items:flex-end;margin-bottom:20px;display:flex}.section-title .eyebrow{margin-bottom:7px}.section-title h2{letter-spacing:-.025em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:29px;font-weight:500}.logbook-tools{align-items:center;gap:14px;display:flex}.logbook-tools>span{color:var(--muted);font-size:11px}.sort-control{border:1px solid var(--line-dark);color:#697978;background:#ffffff8c;border-radius:4px;align-items:center;gap:7px;height:38px;padding-left:11px;display:flex}.sort-control>span{letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;font-size:9px;font-weight:800}.sort-control select{max-width:210px;height:36px;color:var(--ink);cursor:pointer;background-color:#0000;border:0;outline:0;padding:0 30px 0 3px;font-size:10px}.sort-control:focus-within{border-color:#789a97;box-shadow:0 0 0 3px #4977751a}.empty-journal{text-align:center;border:1px dashed var(--line-dark);background:#ffffff40;flex-direction:column;justify-content:center;align-items:center;min-height:330px;padding:50px;display:flex}.empty-compass{width:66px;height:66px;color:var(--coral);border:1px solid var(--line);background:var(--paper-light);border-radius:50%;place-items:center;margin-bottom:20px;display:grid}.empty-journal h3{margin:0;font-family:Georgia,Times New Roman,serif;font-size:27px;font-weight:500}.empty-journal p{max-width:520px;color:var(--muted);margin:11px 0 24px;font-family:Georgia,Times New Roman,serif;line-height:1.55}.review-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.review-card{border:1px solid var(--line);background:#ffffff94;border-radius:5px;grid-template-columns:105px minmax(0,1fr);min-height:315px;transition:transform .2s,box-shadow .2s;display:grid;position:relative;overflow:hidden;box-shadow:0 10px 30px #1d393c0b}.review-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.card-porthole{color:#c5d7d5;background:var(--navy);flex-direction:column;justify-content:center;align-items:center;gap:13px;display:flex}.card-porthole.movie{background:#253f46}.card-porthole.tv{background:#3d5352}.card-porthole span{writing-mode:vertical-rl;color:#87aaa9;letter-spacing:.15em;text-transform:uppercase;font-size:9px;transform:rotate(180deg)}.review-card-body{flex-direction:column;min-width:0;padding:23px 24px 18px;display:flex}.card-kicker{justify-content:space-between;align-items:center;gap:12px;display:flex}.card-kicker>span{color:var(--coral-dark);letter-spacing:.1em;text-transform:uppercase;text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:800;overflow:hidden}.review-card h3{letter-spacing:-.025em;margin:10px 0 13px;font-family:Georgia,Times New Roman,serif;font-size:25px;font-weight:500}.card-meta{color:var(--muted);flex-wrap:wrap;gap:8px 14px;font-size:10px;display:flex}.card-meta span{align-items:center;gap:5px;display:flex}.review-excerpt{-webkit-line-clamp:3;color:#536669;-webkit-box-orient:vertical;margin:17px 0 13px;font-family:Georgia,Times New Roman,serif;font-size:14px;line-height:1.55;display:-webkit-box;overflow:hidden}.review-excerpt.muted{color:#7f8b8a;font-style:italic}.port-tags{flex-wrap:wrap;gap:5px;display:flex}.port-tags span{color:#617270;letter-spacing:.035em;text-transform:uppercase;background:#e8eeea;border-radius:2px;padding:4px 7px;font-size:8px}.card-actions{border-top:1px solid #e5e0d6;gap:16px;margin-top:auto;padding-top:14px;display:flex}.card-actions button{color:#6c7979;background:0 0;border:0;align-items:center;gap:6px;padding:0;font-size:10px;font-weight:700;display:inline-flex}.card-actions button:hover{color:var(--ink)}.card-actions .view-action{color:var(--coral-dark)}.card-actions .danger-action:hover{color:#af4937}.review-modal-backdrop{z-index:80;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#051f25b8;place-items:center;padding:30px;animation:.18s both modalFade;display:grid;position:fixed;inset:0}.review-modal{background:var(--paper-light);border:1px solid #ffffff2e;border-radius:7px;width:min(760px,100%);max-height:calc(100vh - 60px);animation:.22s both modalRise;position:relative;overflow-y:auto;box-shadow:0 28px 90px #04181d61}.review-modal-close{z-index:2;color:#d9e7e5;background:#ffffff14;border:1px solid #fff3;border-radius:50%;place-items:center;width:35px;height:35px;display:grid;position:absolute;top:17px;right:17px}.review-modal-close:hover{color:#fff;background:#ffffff29}.review-modal-header{color:#fff;background:var(--navy);justify-content:space-between;align-items:flex-end;gap:30px;padding:38px 64px 34px 38px;display:flex}.review-modal-header .eyebrow{color:#f19a81;margin-bottom:9px}.review-modal-header h2{letter-spacing:-.045em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(34px,5vw,48px);font-weight:500;line-height:1.03}.review-modal-header p:last-child{color:#a9c2c0;align-items:center;gap:7px;margin:15px 0 0;font-size:11px;display:flex}.review-modal-header p span{color:#719694}.review-modal-score{flex:none;justify-items:end;display:grid}.review-modal-score strong{margin-top:8px;font-family:Georgia,Times New Roman,serif;font-size:27px;font-weight:500}.review-modal-score>span:last-child{color:#8db0ad;letter-spacing:.08em;text-transform:uppercase;font-size:9px}.review-modal-body{padding:31px 38px 35px}.review-detail-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:0;display:grid}.review-detail-grid>div{border-right:1px solid var(--line);border-bottom:1px solid var(--line);flex-direction:column;justify-content:center;min-height:72px;padding:13px 15px;display:flex}.review-detail-grid span,.review-detail-label{color:#88918f;letter-spacing:.09em;text-transform:uppercase;margin:0 0 6px;font-size:9px;font-weight:800}.review-detail-grid strong{color:var(--ink);font-family:Georgia,Times New Roman,serif;font-size:14px;font-weight:500}.review-modal-section{margin-top:26px}.modal-port-tags span{padding:6px 9px;font-size:9px}.itinerary-copy{color:var(--ink-soft);white-space:pre-wrap;margin:0;font-family:Georgia,Times New Roman,serif;font-size:14px;line-height:1.65}.full-review{border-top:1px solid var(--line);padding-top:25px}.full-review>p:last-child{color:var(--ink);white-space:pre-wrap;margin:0;font-family:Georgia,Times New Roman,serif;font-size:18px;line-height:1.75}.full-review>p.empty-review{color:var(--muted);font-style:italic}.review-sources>div{flex-wrap:wrap;gap:7px;display:flex}.review-sources a{border:1px solid var(--line);color:var(--coral-dark);background:#fff;border-radius:3px;padding:6px 9px;font-size:9px;font-weight:750;text-decoration:none}.review-modal-actions{border-top:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fbfaf6f5;justify-content:space-between;align-items:center;gap:20px;padding:16px 38px;display:flex;position:sticky;bottom:0}.review-modal-actions>div{gap:8px;display:flex}.review-modal-actions>.danger-action{color:#a94a3a;background:0 0;border:0;align-items:center;gap:7px;padding:10px 0;font-size:11px;font-weight:750;display:inline-flex}@keyframes modalFade{0%{opacity:0}}@keyframes modalRise{0%{opacity:0;transform:translateY(10px)scale(.99)}}.star-display{gap:3px;font-size:22px;line-height:1;display:inline-flex}.star-display.compact{gap:1px;font-size:12px}.star-glyph{background:linear-gradient(90deg, var(--gold) 0 var(--fill), #d7d6ce var(--fill) 100%);color:#0000;-webkit-background-clip:text;background-clip:text}.notice{z-index:50;color:#fff;background:var(--navy);border-radius:4px;align-items:center;gap:18px;max-width:430px;padding:12px 13px 12px 16px;font-size:12px;animation:.25s both slideIn;display:flex;position:fixed;top:20px;right:24px;box-shadow:0 13px 35px #082a313b}.notice button{color:#a9c1c0;background:0 0;border:0;place-items:center;padding:3px;display:grid}@keyframes slideIn{0%{opacity:0;transform:translateY(-8px)}}.loading-state{min-height:80vh;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;font-family:Georgia,Times New Roman,serif;display:flex}.spin{animation:.85s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.form-page{max-width:930px}.pdf-import{background:#edf3ee;border:1px solid #c9d7d1;border-radius:5px;grid-template-columns:auto 1fr auto;align-items:center;gap:17px;min-height:92px;margin-bottom:25px;padding:17px 18px;display:grid}.pdf-icon{width:48px;height:48px;color:var(--navy);background:#fff;border-radius:50%;place-items:center;display:grid}.pdf-import h3{margin:0 0 4px;font-family:Georgia,Times New Roman,serif;font-size:18px;font-weight:600}.pdf-import p{color:#667875;margin:0;font-size:11px}.pdf-import .secondary-button{background:#fff}.review-form{gap:22px;display:grid}.form-section{border:1px solid var(--line);background:#ffffff91;border-radius:5px;padding:31px 34px 34px}.form-section-heading{border-bottom:1px solid var(--line);align-items:flex-start;gap:14px;margin-bottom:29px;padding-bottom:22px;display:flex}.form-section-heading>span{background:var(--navy);color:#fff;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;font-size:9px;font-weight:800;display:grid}.form-section-heading h2{margin:0 0 4px;font-family:Georgia,Times New Roman,serif;font-size:24px;font-weight:500}.form-section-heading p{color:var(--muted);margin:0;font-size:11px}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.form-field{min-width:0;display:block}.form-field.wide{grid-column:1/-1}.form-field small{color:#909998;margin-top:6px;font-size:9px;display:block}.media-title-field{z-index:5;position:relative}.media-search-input{align-items:center;display:flex;position:relative}.media-search-input>svg:first-child{z-index:1;color:#84918f;pointer-events:none;position:absolute;left:13px}.media-search-input .text-input{padding-left:40px}.media-search-input .spin{color:var(--coral);position:absolute;right:13px}.media-suggestions{z-index:12;background:#fff;border:1px solid #becbc6;border-radius:0 0 5px 5px;max-height:310px;position:absolute;top:calc(100% - 15px);left:0;right:0;overflow-y:auto;box-shadow:0 15px 35px #0e2e3329}.media-suggestions button{width:100%;color:var(--ink);text-align:left;background:#fff;border:0;border-bottom:1px solid #ebe7df;grid-template-columns:minmax(0,1fr) minmax(150px,.7fr);gap:15px;padding:13px 15px;display:grid}.media-suggestions button:last-child{border-bottom:0}.media-suggestions button:hover{background:#f3f5ef}.media-suggestions button>span:first-child{gap:3px;display:grid}.media-suggestions strong{font-family:Georgia,Times New Roman,serif;font-size:15px;font-weight:600}.media-suggestions small{color:var(--coral-dark);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:8px;font-weight:750}.media-suggestions button>span:last-child{color:var(--muted);align-self:center;font-size:9px;line-height:1.4}.form-field .media-search-error{color:#aa4c3e}.review-area{min-height:190px;font-family:Georgia,Times New Roman,serif;font-size:16px;line-height:1.65}.count-note{text-align:right}.score-field{border-top:1px solid var(--line);grid-template-columns:1fr auto;align-items:center;column-gap:24px;margin-top:28px;padding-top:25px;display:grid}.score-field p{color:var(--muted);margin:4px 0 0;font-size:10px}.score-control{align-items:center;gap:9px;display:flex}.score-control strong{margin-left:8px;font-family:Georgia,Times New Roman,serif;font-size:24px;font-weight:500}.score-control>span:last-child{color:var(--muted);font-size:11px}.score-field input[type=range]{width:100%;accent-color:var(--coral);grid-column:1/-1;margin:19px 0 0}.whole-star-rating{align-items:center;gap:3px;display:flex}.whole-star-rating button{color:#d7d6ce;background:0 0;border:0;padding:0 1px;font-size:29px;line-height:1}.whole-star-rating button:hover,.whole-star-rating button.selected{color:var(--gold)}.whole-star-rating button:focus-visible{outline:2px solid var(--coral);outline-offset:2px;border-radius:2px}.whole-star-rating strong{margin-left:10px;font-family:Georgia,Times New Roman,serif;font-size:24px;font-weight:500}.whole-star-rating>span{color:var(--muted);font-size:11px}.form-actions{justify-content:flex-end;align-items:center;gap:7px;display:flex}.ask-page{max-width:930px}.model-select{width:auto;min-width:170px;height:39px;color:var(--ink-soft);padding:0 32px 0 11px;font-size:11px}.concierge-shell{border:1px solid var(--line);box-shadow:var(--shadow);background:#ffffff8f;border-radius:6px;overflow:hidden}.concierge-welcome{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:460px;padding:50px;display:flex}.concierge-mark{width:61px;height:61px;color:var(--coral);background:#f5e6dd;border-radius:50%;place-items:center;margin-bottom:19px;display:grid}.concierge-welcome h2{margin:0;font-family:Georgia,Times New Roman,serif;font-size:28px;font-weight:500}.concierge-welcome>p{max-width:500px;color:var(--muted);margin:10px 0 27px;font-family:Georgia,Times New Roman,serif;line-height:1.55}.prompt-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;width:min(100%,680px);display:grid}.prompt-grid button{border:1px solid var(--line);background:var(--paper-light);min-height:66px;color:var(--ink);text-align:left;border-radius:4px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:12px 14px;font-family:Georgia,Times New Roman,serif;font-size:12px;line-height:1.35;display:grid}.prompt-grid button>svg:first-child{color:var(--coral)}.prompt-grid button>svg:last-child{color:#9aa2a0}.prompt-grid button:hover{background:#fff;border-color:#a6b8b3}.chat-log{min-height:460px;max-height:560px;padding:28px;overflow-y:auto}.chat-message{grid-template-columns:38px minmax(0,1fr);gap:12px;max-width:760px;margin-bottom:22px;display:grid}.chat-message.user{grid-template-columns:minmax(0,1fr) 38px;margin-left:auto}.chat-message.user .chat-avatar{color:var(--navy);background:#dbe7e4;grid-area:1/2;font-size:9px;font-weight:800}.chat-message.user>div{background:var(--navy);color:#fff;grid-area:1/1}.chat-avatar{width:38px;height:38px;color:var(--coral);background:#f4e5dd;border-radius:50%;place-items:center;display:grid}.chat-message>div{background:var(--paper-light);border-radius:5px;padding:13px 15px}.chat-message p{margin:0;font-family:Georgia,Times New Roman,serif;font-size:14px;line-height:1.6}.chat-message.user p{white-space:pre-wrap}.chat-markdown>:first-child{margin-top:0}.chat-markdown>:last-child{margin-bottom:0}.chat-markdown p{margin:0 0 .8em}.chat-markdown ul,.chat-markdown ol{margin:.35em 0 .85em;padding-left:1.35em;font-family:Georgia,Times New Roman,serif;font-size:14px;line-height:1.6}.chat-markdown li{padding-left:.15em}.chat-markdown li+li{margin-top:.28em}.chat-markdown strong{color:var(--ink);font-weight:700}.chat-markdown a{color:var(--coral-dark);text-underline-offset:2px;text-decoration-thickness:1px}.chat-markdown blockquote{border-left:2px solid var(--sea);color:var(--ink-soft);margin:.7em 0;padding:.1em 0 .1em 13px}.chat-markdown code{background:#e9e5dc;border-radius:3px;padding:1px 4px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.88em}.chat-message small{color:var(--muted);text-transform:uppercase;letter-spacing:.07em;margin-top:8px;font-size:8px;display:block}.thinking{gap:4px;padding:6px 2px;display:flex}.thinking i{background:var(--coral);border-radius:50%;width:5px;height:5px;animation:1s infinite alternate pulse}.thinking i:nth-child(2){animation-delay:.2s}.thinking i:nth-child(3){animation-delay:.4s}@keyframes pulse{to{opacity:.25;transform:translateY(-3px)}}.ask-composer{border-top:1px solid var(--line);background:#f0ece3;grid-template-columns:minmax(0,1fr) 48px;gap:10px;padding:16px 18px;display:grid}.ask-composer textarea{resize:vertical;border:1px solid var(--line);background:#fff;border-radius:4px;min-height:50px;max-height:150px;padding:15px;line-height:1.4}.ask-composer button{background:var(--coral);color:#fff;border:0;border-radius:4px;align-self:end;place-items:center;width:48px;height:48px;display:grid}.ask-composer button:hover:not(:disabled){background:var(--coral-dark)}.ai-note{color:#9aa09e;text-align:center;background:#f0ece3;margin:0;padding:0 18px 14px;font-size:8px}.settings-page{max-width:850px}.settings-card,.privacy-card{border:1px solid var(--line);background:#ffffff91;border-radius:5px;grid-template-columns:auto minmax(0,1fr);gap:0 17px;margin-bottom:18px;padding:29px 31px;display:grid}.settings-icon{width:42px;height:42px;color:var(--navy);background:#edf1eb;border-radius:50%;grid-row:span 4;place-items:center;display:grid}.settings-copy h2,.privacy-card h2{margin:2px 0 4px;font-family:Georgia,Times New Roman,serif;font-size:22px;font-weight:500}.settings-copy p,.privacy-card p{color:var(--muted);margin:0 0 24px;font-size:11px;line-height:1.6}.settings-field{grid-column:2;margin-bottom:19px}.key-input{align-items:center;gap:9px;height:46px;padding:0 13px;display:flex}.key-input svg{color:#8a9695}.key-input input{width:100%;color:var(--ink);cursor:text;background:0 0;border:0;outline:0}.settings-save{grid-column:2;justify-self:start}.privacy-card .settings-icon{grid-row:auto}.logout-button{color:var(--coral-dark);background:0 0;border:0;align-items:center;gap:8px;padding:0;font-size:11px;font-weight:750;display:inline-flex}.mobile-header,.mobile-nav,.mobile-categories{display:none}@media (max-width:1000px){.page-wrap{width:min(100% - 48px,900px)}.review-grid{grid-template-columns:1fr}.stats-strip{grid-template-columns:repeat(3,1fr)}.stats-strip button{border-top:1px solid var(--line);grid-column:1/-1;min-height:56px}}@media (max-width:760px){.login-shell{display:block}.login-story{min-height:42vh;padding:28px 25px}.login-story-copy{padding:55px 0 35px}.login-story-copy h1{font-size:48px}.login-story-copy>p:last-child,.login-footnote{display:none}.login-panel{min-height:58vh;padding:38px 25px}.login-card h2{font-size:31px}.app-shell{display:block}.sidebar{display:none}.main-canvas{padding:101px 0 72px}.mobile-header{z-index:20;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f5f1e8f0;justify-content:space-between;align-items:center;height:58px;padding:0 18px;display:flex;position:fixed;top:0;left:0;right:0}.mobile-header button{background:var(--navy);color:#fff;border:0;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.mobile-categories{z-index:19;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#faf7f0f7;grid-template-columns:repeat(3,1fr);height:43px;display:grid;position:fixed;top:58px;left:0;right:0}.mobile-categories button{border:0;border-right:1px solid var(--line);color:#718080;background:0 0;justify-content:center;align-items:center;gap:5px;font-size:9px;font-weight:700;display:flex}.mobile-categories button:last-child{border-right:0}.mobile-categories button.active{color:var(--coral-dark);background:#ffffffa6}.mobile-nav{z-index:20;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#faf7f0f7;grid-template-columns:repeat(4,1fr);height:69px;display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-nav button{color:#718080;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:9px;display:flex}.mobile-nav button.active{color:var(--coral-dark)}.page-wrap{width:calc(100% - 32px);padding:35px 0 45px}.page-heading{flex-direction:column;align-items:flex-start;gap:23px;margin-bottom:32px}.page-heading h1{font-size:44px}.page-heading .primary-button{width:100%}.heading-copy{font-size:15px}.notice{top:110px;left:15px;right:15px}.stats-strip{grid-template-columns:repeat(3,1fr);margin-bottom:40px}.stats-strip>div{text-align:center;padding:14px 8px}.stats-strip strong{font-size:22px}.stats-strip span{font-size:8px}.section-title{flex-direction:column;align-items:flex-start;gap:14px}.logbook-tools{justify-content:space-between;width:100%}.sort-control{flex:1;max-width:245px}.sort-control select{width:100%;min-width:0}.review-card{grid-template-columns:77px minmax(0,1fr)}.review-card-body{padding:20px 17px 16px}.card-porthole span{display:none}.card-kicker{flex-direction:column;align-items:flex-start}.review-modal-backdrop{align-items:end;padding:0}.review-modal{border-radius:12px 12px 0 0;width:100%;max-height:calc(100vh - 26px)}.review-modal-header{flex-direction:column;align-items:flex-start;padding:32px 54px 27px 22px}.review-modal-score{justify-items:start}.review-modal-body{padding:24px 20px 29px}.review-detail-grid{grid-template-columns:1fr}.full-review>p:last-child{font-size:16px}.review-modal-actions{padding:13px 18px calc(13px + env(safe-area-inset-bottom));flex-direction:column-reverse;align-items:stretch}.review-modal-actions>div{grid-template-columns:1fr 1.25fr;display:grid}.review-modal-actions .secondary-button,.review-modal-actions .primary-button{padding:0 12px}.pdf-import{grid-template-columns:auto 1fr}.pdf-import .secondary-button{grid-column:1/-1}.form-section{padding:24px 18px}.field-grid{grid-template-columns:1fr}.form-field.wide{grid-column:auto}.score-field{grid-template-columns:1fr}.score-control,.whole-star-rating{margin-top:18px}.whole-star-rating button{font-size:27px}.media-suggestions{top:calc(100% - 14px)}.media-suggestions button{grid-template-columns:1fr;gap:5px}.prompt-grid{grid-template-columns:1fr}.concierge-welcome{padding:35px 20px}.compact-heading .model-select{width:100%}.chat-log{padding:19px 13px}.chat-message{grid-template-columns:31px minmax(0,1fr)}.chat-avatar{width:31px;height:31px}.settings-card,.privacy-card{grid-template-columns:1fr;padding:24px 20px}.settings-icon{grid-row:auto;margin-bottom:15px}.settings-field,.settings-save{grid-column:1}.settings-copy p{margin-bottom:24px}.settings-save{width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
